From 0a9615f1b0f09fa9fb3d4807ed267ca0e7e7ab6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Morav=C4=8D=C3=ADk=2C=20Marian?= Date: Sun, 29 Dec 2019 22:17:39 +0100 Subject: [PATCH] Authentication and downloag log file fix --- .gitignore | 4 +- bazarr/main.py | 288 +- static/js/chat.js | 51 - static/noty/noty.css | 697 - static/noty/noty.min.js | 17 - static/semantic/.versions | 4 - static/semantic/components/accordion.css | 253 - static/semantic/components/accordion.js | 613 - static/semantic/components/accordion.min.css | 9 - static/semantic/components/accordion.min.js | 1 - static/semantic/components/ad.css | 275 - static/semantic/components/ad.min.css | 10 - static/semantic/components/api.js | 1167 - static/semantic/components/api.min.js | 1 - static/semantic/components/breadcrumb.css | 124 - static/semantic/components/breadcrumb.min.css | 9 - static/semantic/components/button.css | 3838 -- static/semantic/components/button.min.css | 9 - static/semantic/components/card.css | 997 - static/semantic/components/card.min.css | 9 - static/semantic/components/checkbox.css | 632 - static/semantic/components/checkbox.js | 831 - static/semantic/components/checkbox.min.css | 9 - static/semantic/components/checkbox.min.js | 1 - static/semantic/components/comment.css | 271 - static/semantic/components/comment.min.css | 9 - static/semantic/components/container.css | 147 - static/semantic/components/container.min.css | 9 - static/semantic/components/dimmer.css | 253 - static/semantic/components/dimmer.js | 733 - static/semantic/components/dimmer.min.css | 9 - static/semantic/components/dimmer.min.js | 1 - static/semantic/components/divider.css | 260 - static/semantic/components/divider.min.css | 9 - static/semantic/components/dropdown.css | 1516 - static/semantic/components/dropdown.js | 3955 -- static/semantic/components/dropdown.min.css | 9 - static/semantic/components/dropdown.min.js | 1 - static/semantic/components/embed.css | 166 - static/semantic/components/embed.js | 696 - static/semantic/components/embed.min.css | 9 - static/semantic/components/embed.min.js | 1 - static/semantic/components/feed.css | 295 - static/semantic/components/feed.min.css | 9 - static/semantic/components/flag.css | 1036 - static/semantic/components/flag.min.css | 9 - static/semantic/components/form.css | 1080 - static/semantic/components/form.js | 1706 - static/semantic/components/form.min.css | 9 - static/semantic/components/form.min.js | 1 - static/semantic/components/grid.css | 2039 - static/semantic/components/grid.min.css | 9 - static/semantic/components/header.css | 727 - static/semantic/components/header.min.css | 9 - static/semantic/components/icon.css | 4806 -- static/semantic/components/icon.min.css | 9 - static/semantic/components/image.css | 310 - static/semantic/components/image.min.css | 9 - static/semantic/components/input.css | 519 - static/semantic/components/input.min.css | 9 - static/semantic/components/item.css | 487 - static/semantic/components/item.min.css | 9 - static/semantic/components/label.css | 1313 - static/semantic/components/label.min.css | 9 - static/semantic/components/list.css | 953 - static/semantic/components/list.min.css | 9 - static/semantic/components/loader.css | 347 - static/semantic/components/loader.min.css | 9 - static/semantic/components/menu.css | 2052 - static/semantic/components/menu.min.css | 1 - static/semantic/components/message.css | 505 - static/semantic/components/message.min.css | 9 - static/semantic/components/modal.css | 619 - static/semantic/components/modal.js | 1034 - static/semantic/components/modal.min.css | 9 - static/semantic/components/modal.min.js | 1 - static/semantic/components/nag.css | 148 - static/semantic/components/nag.js | 507 - static/semantic/components/nag.min.css | 9 - static/semantic/components/nag.min.js | 1 - static/semantic/components/placeholder.css | 239 - .../semantic/components/placeholder.min.css | 9 - static/semantic/components/popup.css | 752 - static/semantic/components/popup.js | 1532 - static/semantic/components/popup.min.css | 9 - static/semantic/components/popup.min.js | 1 - static/semantic/components/progress.css | 517 - static/semantic/components/progress.js | 931 - static/semantic/components/progress.min.css | 9 - static/semantic/components/progress.min.js | 1 - static/semantic/components/rail.css | 152 - static/semantic/components/rail.min.css | 9 - static/semantic/components/rating.css | 263 - static/semantic/components/rating.js | 508 - static/semantic/components/rating.min.css | 9 - static/semantic/components/rating.min.js | 1 - static/semantic/components/reset.css | 485 - static/semantic/components/reset.min.css | 9 - static/semantic/components/reveal.css | 295 - static/semantic/components/reveal.min.css | 9 - static/semantic/components/search.css | 445 - static/semantic/components/search.js | 1505 - static/semantic/components/search.min.css | 9 - static/semantic/components/search.min.js | 1 - static/semantic/components/segment.css | 879 - static/semantic/components/segment.min.css | 9 - static/semantic/components/shape.css | 158 - static/semantic/components/shape.js | 921 - static/semantic/components/shape.min.css | 9 - static/semantic/components/shape.min.js | 1 - static/semantic/components/sidebar.css | 628 - static/semantic/components/sidebar.js | 1033 - static/semantic/components/sidebar.min.css | 9 - static/semantic/components/sidebar.min.js | 1 - static/semantic/components/site.css | 204 - static/semantic/components/site.js | 487 - static/semantic/components/site.min.css | 9 - static/semantic/components/site.min.js | 1 - static/semantic/components/statistic.css | 566 - static/semantic/components/statistic.min.css | 9 - static/semantic/components/step.css | 626 - static/semantic/components/step.min.css | 9 - static/semantic/components/sticky.css | 78 - static/semantic/components/sticky.js | 959 - static/semantic/components/sticky.min.css | 9 - static/semantic/components/sticky.min.js | 1 - static/semantic/components/tab.css | 92 - static/semantic/components/tab.js | 952 - static/semantic/components/tab.min.css | 9 - static/semantic/components/tab.min.js | 1 - static/semantic/components/table.css | 1138 - static/semantic/components/table.min.css | 9 - static/semantic/components/transition.css | 2059 - static/semantic/components/transition.js | 1095 - static/semantic/components/transition.min.css | 9 - static/semantic/components/transition.min.js | 1 - static/semantic/components/video.css | 125 - static/semantic/components/video.js | 532 - static/semantic/components/video.min.css | 10 - static/semantic/components/video.min.js | 11 - static/semantic/components/visibility.js | 1311 - static/semantic/components/visibility.min.js | 1 - static/semantic/semantic.css | 40304 ---------------- static/semantic/semantic.js | 22505 --------- static/semantic/semantic.min.css | 372 - static/semantic/semantic.min.js | 11 - .../themes/basic/assets/fonts/icons.eot | Bin 40166 -> 0 bytes .../themes/basic/assets/fonts/icons.svg | 450 - .../themes/basic/assets/fonts/icons.ttf | Bin 39924 -> 0 bytes .../themes/basic/assets/fonts/icons.woff | Bin 24676 -> 0 bytes .../default/assets/fonts/brand-icons.eot | Bin 98640 -> 0 bytes .../default/assets/fonts/brand-icons.svg | 1008 - .../default/assets/fonts/brand-icons.ttf | Bin 98404 -> 0 bytes .../default/assets/fonts/brand-icons.woff | Bin 63728 -> 0 bytes .../default/assets/fonts/brand-icons.woff2 | Bin 54488 -> 0 bytes .../themes/default/assets/fonts/icons.eot | Bin 106004 -> 0 bytes .../themes/default/assets/fonts/icons.otf | Bin 93888 -> 0 bytes .../themes/default/assets/fonts/icons.svg | 1518 - .../themes/default/assets/fonts/icons.ttf | Bin 105784 -> 0 bytes .../themes/default/assets/fonts/icons.woff | Bin 50524 -> 0 bytes .../themes/default/assets/fonts/icons.woff2 | Bin 40148 -> 0 bytes .../default/assets/fonts/outline-icons.eot | Bin 31156 -> 0 bytes .../default/assets/fonts/outline-icons.svg | 366 - .../default/assets/fonts/outline-icons.ttf | Bin 30928 -> 0 bytes .../default/assets/fonts/outline-icons.woff | Bin 14712 -> 0 bytes .../default/assets/fonts/outline-icons.woff2 | Bin 12240 -> 0 bytes .../themes/default/assets/images/flags.png | Bin 28123 -> 0 bytes .../github/assets/fonts/octicons-local.ttf | Bin 53604 -> 0 bytes .../themes/github/assets/fonts/octicons.svg | 200 - .../themes/github/assets/fonts/octicons.ttf | Bin 31740 -> 0 bytes .../themes/github/assets/fonts/octicons.woff | Bin 17772 -> 0 bytes .../themes/material/assets/fonts/icons.eot | Bin 143258 -> 0 bytes .../themes/material/assets/fonts/icons.svg | 2373 - .../themes/material/assets/fonts/icons.ttf | Bin 128180 -> 0 bytes .../themes/material/assets/fonts/icons.woff | Bin 57620 -> 0 bytes .../themes/material/assets/fonts/icons.woff2 | Bin 44300 -> 0 bytes views/login.html | 113 +- 177 files changed, 203 insertions(+), 129203 deletions(-) delete mode 100644 static/js/chat.js delete mode 100644 static/noty/noty.css delete mode 100644 static/noty/noty.min.js delete mode 100644 static/semantic/.versions delete mode 100644 static/semantic/components/accordion.css delete mode 100644 static/semantic/components/accordion.js delete mode 100644 static/semantic/components/accordion.min.css delete mode 100644 static/semantic/components/accordion.min.js delete mode 100644 static/semantic/components/ad.css delete mode 100644 static/semantic/components/ad.min.css delete mode 100644 static/semantic/components/api.js delete mode 100644 static/semantic/components/api.min.js delete mode 100644 static/semantic/components/breadcrumb.css delete mode 100644 static/semantic/components/breadcrumb.min.css delete mode 100644 static/semantic/components/button.css delete mode 100644 static/semantic/components/button.min.css delete mode 100644 static/semantic/components/card.css delete mode 100644 static/semantic/components/card.min.css delete mode 100644 static/semantic/components/checkbox.css delete mode 100644 static/semantic/components/checkbox.js delete mode 100644 static/semantic/components/checkbox.min.css delete mode 100644 static/semantic/components/checkbox.min.js delete mode 100644 static/semantic/components/comment.css delete mode 100644 static/semantic/components/comment.min.css delete mode 100644 static/semantic/components/container.css delete mode 100644 static/semantic/components/container.min.css delete mode 100644 static/semantic/components/dimmer.css delete mode 100644 static/semantic/components/dimmer.js delete mode 100644 static/semantic/components/dimmer.min.css delete mode 100644 static/semantic/components/dimmer.min.js delete mode 100644 static/semantic/components/divider.css delete mode 100644 static/semantic/components/divider.min.css delete mode 100644 static/semantic/components/dropdown.css delete mode 100644 static/semantic/components/dropdown.js delete mode 100644 static/semantic/components/dropdown.min.css delete mode 100644 static/semantic/components/dropdown.min.js delete mode 100644 static/semantic/components/embed.css delete mode 100644 static/semantic/components/embed.js delete mode 100644 static/semantic/components/embed.min.css delete mode 100644 static/semantic/components/embed.min.js delete mode 100644 static/semantic/components/feed.css delete mode 100644 static/semantic/components/feed.min.css delete mode 100644 static/semantic/components/flag.css delete mode 100644 static/semantic/components/flag.min.css delete mode 100644 static/semantic/components/form.css delete mode 100644 static/semantic/components/form.js delete mode 100644 static/semantic/components/form.min.css delete mode 100644 static/semantic/components/form.min.js delete mode 100644 static/semantic/components/grid.css delete mode 100644 static/semantic/components/grid.min.css delete mode 100644 static/semantic/components/header.css delete mode 100644 static/semantic/components/header.min.css delete mode 100644 static/semantic/components/icon.css delete mode 100644 static/semantic/components/icon.min.css delete mode 100644 static/semantic/components/image.css delete mode 100644 static/semantic/components/image.min.css delete mode 100644 static/semantic/components/input.css delete mode 100644 static/semantic/components/input.min.css delete mode 100644 static/semantic/components/item.css delete mode 100644 static/semantic/components/item.min.css delete mode 100644 static/semantic/components/label.css delete mode 100644 static/semantic/components/label.min.css delete mode 100644 static/semantic/components/list.css delete mode 100644 static/semantic/components/list.min.css delete mode 100644 static/semantic/components/loader.css delete mode 100644 static/semantic/components/loader.min.css delete mode 100644 static/semantic/components/menu.css delete mode 100644 static/semantic/components/menu.min.css delete mode 100644 static/semantic/components/message.css delete mode 100644 static/semantic/components/message.min.css delete mode 100644 static/semantic/components/modal.css delete mode 100644 static/semantic/components/modal.js delete mode 100644 static/semantic/components/modal.min.css delete mode 100644 static/semantic/components/modal.min.js delete mode 100644 static/semantic/components/nag.css delete mode 100644 static/semantic/components/nag.js delete mode 100644 static/semantic/components/nag.min.css delete mode 100644 static/semantic/components/nag.min.js delete mode 100644 static/semantic/components/placeholder.css delete mode 100644 static/semantic/components/placeholder.min.css delete mode 100644 static/semantic/components/popup.css delete mode 100644 static/semantic/components/popup.js delete mode 100644 static/semantic/components/popup.min.css delete mode 100644 static/semantic/components/popup.min.js delete mode 100644 static/semantic/components/progress.css delete mode 100644 static/semantic/components/progress.js delete mode 100644 static/semantic/components/progress.min.css delete mode 100644 static/semantic/components/progress.min.js delete mode 100644 static/semantic/components/rail.css delete mode 100644 static/semantic/components/rail.min.css delete mode 100644 static/semantic/components/rating.css delete mode 100644 static/semantic/components/rating.js delete mode 100644 static/semantic/components/rating.min.css delete mode 100644 static/semantic/components/rating.min.js delete mode 100644 static/semantic/components/reset.css delete mode 100644 static/semantic/components/reset.min.css delete mode 100644 static/semantic/components/reveal.css delete mode 100644 static/semantic/components/reveal.min.css delete mode 100644 static/semantic/components/search.css delete mode 100644 static/semantic/components/search.js delete mode 100644 static/semantic/components/search.min.css delete mode 100644 static/semantic/components/search.min.js delete mode 100644 static/semantic/components/segment.css delete mode 100644 static/semantic/components/segment.min.css delete mode 100644 static/semantic/components/shape.css delete mode 100644 static/semantic/components/shape.js delete mode 100644 static/semantic/components/shape.min.css delete mode 100644 static/semantic/components/shape.min.js delete mode 100644 static/semantic/components/sidebar.css delete mode 100644 static/semantic/components/sidebar.js delete mode 100644 static/semantic/components/sidebar.min.css delete mode 100644 static/semantic/components/sidebar.min.js delete mode 100644 static/semantic/components/site.css delete mode 100644 static/semantic/components/site.js delete mode 100644 static/semantic/components/site.min.css delete mode 100644 static/semantic/components/site.min.js delete mode 100644 static/semantic/components/statistic.css delete mode 100644 static/semantic/components/statistic.min.css delete mode 100644 static/semantic/components/step.css delete mode 100644 static/semantic/components/step.min.css delete mode 100644 static/semantic/components/sticky.css delete mode 100644 static/semantic/components/sticky.js delete mode 100644 static/semantic/components/sticky.min.css delete mode 100644 static/semantic/components/sticky.min.js delete mode 100644 static/semantic/components/tab.css delete mode 100644 static/semantic/components/tab.js delete mode 100644 static/semantic/components/tab.min.css delete mode 100644 static/semantic/components/tab.min.js delete mode 100644 static/semantic/components/table.css delete mode 100644 static/semantic/components/table.min.css delete mode 100644 static/semantic/components/transition.css delete mode 100644 static/semantic/components/transition.js delete mode 100644 static/semantic/components/transition.min.css delete mode 100644 static/semantic/components/transition.min.js delete mode 100644 static/semantic/components/video.css delete mode 100644 static/semantic/components/video.js delete mode 100644 static/semantic/components/video.min.css delete mode 100644 static/semantic/components/video.min.js delete mode 100644 static/semantic/components/visibility.js delete mode 100644 static/semantic/components/visibility.min.js delete mode 100644 static/semantic/semantic.css delete mode 100644 static/semantic/semantic.js delete mode 100644 static/semantic/semantic.min.css delete mode 100644 static/semantic/semantic.min.js delete mode 100644 static/semantic/themes/basic/assets/fonts/icons.eot delete mode 100644 static/semantic/themes/basic/assets/fonts/icons.svg delete mode 100644 static/semantic/themes/basic/assets/fonts/icons.ttf delete mode 100644 static/semantic/themes/basic/assets/fonts/icons.woff delete mode 100644 static/semantic/themes/default/assets/fonts/brand-icons.eot delete mode 100644 static/semantic/themes/default/assets/fonts/brand-icons.svg delete mode 100644 static/semantic/themes/default/assets/fonts/brand-icons.ttf delete mode 100644 static/semantic/themes/default/assets/fonts/brand-icons.woff delete mode 100644 static/semantic/themes/default/assets/fonts/brand-icons.woff2 delete mode 100644 static/semantic/themes/default/assets/fonts/icons.eot delete mode 100644 static/semantic/themes/default/assets/fonts/icons.otf delete mode 100644 static/semantic/themes/default/assets/fonts/icons.svg delete mode 100644 static/semantic/themes/default/assets/fonts/icons.ttf delete mode 100644 static/semantic/themes/default/assets/fonts/icons.woff delete mode 100644 static/semantic/themes/default/assets/fonts/icons.woff2 delete mode 100644 static/semantic/themes/default/assets/fonts/outline-icons.eot delete mode 100644 static/semantic/themes/default/assets/fonts/outline-icons.svg delete mode 100644 static/semantic/themes/default/assets/fonts/outline-icons.ttf delete mode 100644 static/semantic/themes/default/assets/fonts/outline-icons.woff delete mode 100644 static/semantic/themes/default/assets/fonts/outline-icons.woff2 delete mode 100644 static/semantic/themes/default/assets/images/flags.png delete mode 100644 static/semantic/themes/github/assets/fonts/octicons-local.ttf delete mode 100644 static/semantic/themes/github/assets/fonts/octicons.svg delete mode 100644 static/semantic/themes/github/assets/fonts/octicons.ttf delete mode 100644 static/semantic/themes/github/assets/fonts/octicons.woff delete mode 100644 static/semantic/themes/material/assets/fonts/icons.eot delete mode 100644 static/semantic/themes/material/assets/fonts/icons.svg delete mode 100644 static/semantic/themes/material/assets/fonts/icons.ttf delete mode 100644 static/semantic/themes/material/assets/fonts/icons.woff delete mode 100644 static/semantic/themes/material/assets/fonts/icons.woff2 diff --git a/.gitignore b/.gitignore index caf8b6a51..0bac645ee 100644 --- a/.gitignore +++ b/.gitignore @@ -7,7 +7,9 @@ cachefile.dbm bazarr.pid /venv /data -/static/scss/.sass-cache +static/scss/.sass-cache/* +static/scss/.sass-cache +*.scssc # Allow !*.dll \ No newline at end of file diff --git a/bazarr/main.py b/bazarr/main.py index b4e79c54c..6e07dbe0e 100644 --- a/bazarr/main.py +++ b/bazarr/main.py @@ -44,7 +44,7 @@ from io import BytesIO from six import text_type, PY2 from datetime import timedelta from get_languages import load_language_in_db, language_from_alpha3, language_from_alpha2, alpha2_from_alpha3 -from flask import Flask, make_response, request, redirect, abort, render_template, Response +from flask import Flask, make_response, request, redirect, abort, render_template, Response, session, flash, url_for, send_file from flask_cors import CORS from get_providers import get_providers, get_providers_auth, list_throttled_providers @@ -63,6 +63,7 @@ from notifier import send_notifications, send_notifications_movie from subliminal_patch.extensions import provider_registry as provider_manager from subliminal_patch.core import SUBTITLE_EXTENSIONS from flask_debugtoolbar import DebugToolbarExtension +from functools import wraps # Flask Setup app = Flask(__name__, @@ -118,24 +119,6 @@ login_auth = settings.auth.type update_notifier() -def custom_auth_basic(check): - def decorator(func): - def wrapper(*a, **ka): - if settings.auth.type == 'basic': - user, password = request.auth or (None, None) - if user is None or not check(user, password): - err = abort(401, "Access denied") - err.add_header('WWW-Authenticate', 'Basic realm="Bazarr"') - return err - return func(*a, **ka) - else: - return func(*a, **ka) - - return wrapper - - return decorator - - def check_credentials(user, pw): username = settings.auth.username password = settings.auth.password @@ -143,6 +126,51 @@ def check_credentials(user, pw): return True return False +def login_required(f): + @wraps(f) + def wrap(*args, **kwargs): + test = request + if settings.auth.type == 'basic': + auth = request.authorization + if not (auth and check_credentials(request.authorization.username, request.authorization.password)): + return ('Unauthorized', 401, { + 'WWW-Authenticate': 'Basic realm="Login Required"' + }) + + return f(*args, **kwargs) + elif _settings.auth.type == 'form': + if 'logged_in' in session: + return f(*args, **kwargs) + else: + flash("You need to login first") + return redirect(url_for('login_page')) + else: + return f(*args, **kwargs) + return wrap + + +@app.route('/login/', methods=["GET", "POST"]) +def login_page(): + error = '' + try: + if request.method == "POST": + if check_credentials(request.form['username'], request.form['password']): + session['logged_in'] = True + session['username'] = request.form['username'] + + flash("You are now logged in") + return redirect(url_for("redirect_root")) + else: + error = "Invalid credentials, try again." + gc.collect() + + return render_template("login.html", error=error) + + except Exception as e: + # flash(e) + error = "Invalid credentials, try again." + return render_template("login.html", error=error) + @app.context_processor def restart_processor(): @@ -166,29 +194,20 @@ def post_get(name, default=''): return request.POST.get(name, default).strip() -@app.route('/login/') -def login_form(): - msg = request.query.get('msg', '') - return render_template('login.html', base_url=base_url, msg=msg) - - -@app.route('/login/', methods=['POST']) -def login(): - username = post_get('username') - password = post_get('password') - if check_credentials(username, password): - return redirect(base_url) - else: - return redirect('/login?msg=fail') - - -@app.route('/logout/') +@app.route("/logout/") +@login_required def logout(): - return abort(401) + if settings.auth.type == 'basic': + return abort(401) + elif settings.auth.type == 'form': + session.clear() + flash("You have been logged out!") + gc.collect() + return redirect(url_for('redirect_root')) @app.route('/shutdown/') -# @custom_auth_basic(check_credentials) +@login_required def shutdown(): try: server.stop() @@ -208,7 +227,7 @@ def shutdown(): @app.route('/restart/') -# @custom_auth_basic(check_credentials) +@login_required def restart(): try: server.stop() @@ -229,7 +248,7 @@ def restart(): @app.route('/wizard/') -@custom_auth_basic(check_credentials) +@login_required def wizard(): # Get languages list settings_languages = database.execute("SELECT * FROM table_settings_languages ORDER BY name") @@ -242,7 +261,7 @@ def wizard(): @app.route('/save_wizard', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def save_wizard(): settings_general_ip = request.form.get('settings_general_ip') settings_general_port = request.form.get('settings_general_port') @@ -456,7 +475,7 @@ def save_wizard(): @app.route('/emptylog') -# @custom_auth_basic(check_credentials) +@login_required def emptylog(): ref = request.environ['HTTP_REFERER'] @@ -467,13 +486,14 @@ def emptylog(): @app.route('/bazarr.log') -# @custom_auth_basic(check_credentials) +@login_required def download_log(): - return static_file('bazarr.log', root=os.path.join(args.config_dir, 'log/'), download='bazarr.log') + return send_file(os.path.join(args.config_dir, 'log/'), + attachment_filename='bazarr.log') @app.route('/image_proxy/', methods=['GET']) -# @custom_auth_basic(check_credentials) +@login_required def image_proxy(url): apikey = settings.sonarr.apikey url_image = url_sonarr_short() + '/' + url + '?apikey=' + apikey @@ -490,7 +510,7 @@ def image_proxy(url): @app.route('/image_proxy_movies/', methods=['GET']) -# @custom_auth_basic(check_credentials) +@login_required def image_proxy_movies(url): apikey = settings.radarr.apikey try: @@ -508,8 +528,8 @@ def image_proxy_movies(url): return bytes -@app.route(base_url) -# @custom_auth_basic(check_credentials) +@app.route("/") +@login_required def redirect_root(): if settings.general.getboolean('use_sonarr'): return redirect('/series') @@ -522,7 +542,7 @@ def redirect_root(): @app.route('/series/') -# @custom_auth_basic(check_credentials) +@login_required def series(): series_count = database.execute("SELECT COUNT(*) as count FROM table_shows", only_one=True)['count'] page = request.data @@ -577,7 +597,7 @@ def series(): @app.route('/serieseditor/') -# @custom_auth_basic(check_credentials) +@login_required def serieseditor(): # Get missing count @@ -598,7 +618,7 @@ def serieseditor(): @app.route('/search_json/', methods=['GET']) -# @custom_auth_basic(check_credentials) +@login_required def search_json(query): @@ -626,7 +646,7 @@ def search_json(query): @app.route('/edit_series/', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def edit_series(no): ref = request.environ['HTTP_REFERER'] @@ -664,7 +684,7 @@ def edit_series(no): @app.route('/edit_serieseditor', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def edit_serieseditor(): ref = request.environ['HTTP_REFERER'] @@ -694,7 +714,7 @@ def edit_serieseditor(): @app.route('/episodes/', methods=['GET']) -# @custom_auth_basic(check_credentials) +@login_required def episodes(no): @@ -726,13 +746,13 @@ def episodes(no): @app.route('/movies') -# @custom_auth_basic(check_credentials) +@login_required def movies(): return render_template('movies.html') @app.route('/movieseditor') -# @custom_auth_basic(check_credentials) +@login_required def movieseditor(): @@ -751,7 +771,7 @@ def movieseditor(): @app.route('/edit_movieseditor', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def edit_movieseditor(): ref = request.environ['HTTP_REFERER'] @@ -781,7 +801,7 @@ def edit_movieseditor(): @app.route('/edit_movie/', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def edit_movie(no): ref = request.environ['HTTP_REFERER'] @@ -819,7 +839,7 @@ def edit_movie(no): @app.route('/movie/', methods=['GET']) -# @custom_auth_basic(check_credentials) +@login_required def movie(no): @@ -840,7 +860,7 @@ def movie(no): @app.route('/scan_disk/', methods=['GET']) -# @custom_auth_basic(check_credentials) +@login_required def scan_disk(no): ref = request.environ['HTTP_REFERER'] @@ -851,7 +871,7 @@ def scan_disk(no): @app.route('/scan_disk_movie/', methods=['GET']) -# @custom_auth_basic(check_credentials) +@login_required def scan_disk_movie(no): ref = request.environ['HTTP_REFERER'] @@ -862,7 +882,7 @@ def scan_disk_movie(no): @app.route('/search_missing_subtitles/', methods=['GET']) -# @custom_auth_basic(check_credentials) +@login_required def search_missing_subtitles(no): ref = request.environ['HTTP_REFERER'] @@ -873,7 +893,7 @@ def search_missing_subtitles(no): @app.route('/search_missing_subtitles_movie/', methods=['GET']) -# @custom_auth_basic(check_credentials) +@login_required def search_missing_subtitles_movie(no): ref = request.environ['HTTP_REFERER'] @@ -884,26 +904,26 @@ def search_missing_subtitles_movie(no): @app.route('/historyseries/') -# @custom_auth_basic(check_credentials) +@login_required def historyseries(): return render_template('historyseries.html') @app.route('/historymovies/') -# @custom_auth_basic(check_credentials) +@login_required def historymovies(): return render_template('historymovies.html') @app.route('/wanted') -# @custom_auth_basic(check_credentials) +@login_required def wanted(): return render_template('wanted.html', bazarr_version=bazarr_version, base_url=base_url, current_port=settings.general.port) @app.route('/wantedseries') -# @custom_auth_basic(check_credentials) +@login_required def wantedseries(): @@ -937,7 +957,7 @@ def wantedseries(): @app.route('/wantedmovies') -# @custom_auth_basic(check_credentials) +@login_required def wantedmovies(): @@ -968,7 +988,7 @@ def wantedmovies(): @app.route('/wanted_search_missing_subtitles') -# @custom_auth_basic(check_credentials) +@login_required def wanted_search_missing_subtitles_list(): ref = request.environ['HTTP_REFERER'] @@ -979,7 +999,7 @@ def wanted_search_missing_subtitles_list(): @app.route('/settings/') -# @custom_auth_basic(check_credentials) +@login_required def _settings(): @@ -993,7 +1013,7 @@ def _settings(): @app.route('/save_settings', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def save_settings(): ref = request.environ['HTTP_REFERER'] @@ -1358,22 +1378,22 @@ def save_settings(): if settings_movie_default_languages == "['None']": settings_movie_default_languages = 'None' settings.general.movie_default_language = text_type(settings_movie_default_languages) - + settings_movie_default_hi = request.form.get('settings_movie_default_hi') if settings_movie_default_hi is None: settings_movie_default_hi = 'False' else: settings_movie_default_hi = 'True' settings.general.movie_default_hi = text_type(settings_movie_default_hi) - + settings_movie_default_forced = str(request.form.get('settings_movie_default_forced')) settings.general.movie_default_forced = text_type(settings_movie_default_forced) - + with open(os.path.join(args.config_dir, 'config', 'config.ini'), 'w+') as handle: settings.write(handle) - + configure_logging(settings.general.getboolean('debug') or args.debug) - + notifiers = database.execute("SELECT * FROM table_settings_notifier ORDER BY name") for notifier in notifiers: enabled = request.form.get('settings_notifier_' + notifier['name'] + '_enabled') @@ -1384,15 +1404,15 @@ def save_settings(): notifier_url = request.form.get('settings_notifier_' + notifier['name'] + '_url') database.execute("UPDATE table_settings_notifier SET enabled=?, url=? WHERE name=?", (enabled,notifier_url,notifier['name'])) - + schedule_update_job() sonarr_full_update() radarr_full_update() schedule_wanted_search() schedule_upgrade_subs() - + logging.info('BAZARR Settings saved succesfully.') - + if ref.find('saved=true') > 0: return redirect(ref) else: @@ -1400,19 +1420,19 @@ def save_settings(): @app.route('/check_update') -# @custom_auth_basic(check_credentials) +@login_required def check_update(): ref = request.environ['HTTP_REFERER'] - + if not args.no_update: check_and_apply_update() - + redirect(ref) @app.route('/system') -# @custom_auth_basic(check_credentials) +@login_required def system(): @@ -1426,14 +1446,14 @@ def system(): ('minute', 60), ('second', 1) ] - + strings = [] for period_name, period_seconds in periods: if seconds > period_seconds: period_value, seconds = divmod(seconds, period_seconds) has_s = 's' if period_value > 1 else '' strings.append("%s %s%s" % (period_value, period_name, has_s)) - + return ", ".join(strings) def get_time_from_cron(cron): @@ -1464,15 +1484,15 @@ def system(): next_run = pretty.date(job.next_run_time.replace(tzinfo=None)) else: next_run = pretty.date(job.next_run_time.replace(tzinfo=None)) - + if isinstance(job.trigger, IntervalTrigger): interval = "every " + get_time_from_interval(job.trigger.__getstate__()['interval']) task_list.append([job.name, interval, next_run, job.id]) elif isinstance(job.trigger, CronTrigger): task_list.append([job.name, get_time_from_cron(job.trigger.fields), next_run, job.id]) - + throttled_providers = list_throttled_providers() - + try: with open(os.path.join(args.config_dir, 'config', 'releases.txt'), 'r') as f: releases = ast.literal_eval(f.read()) @@ -1480,13 +1500,13 @@ def system(): releases = [] logging.exception( 'BAZARR cannot parse releases caching file: ' + os.path.join(args.config_dir, 'config', 'releases.txt')) - + sonarr_version = get_sonarr_version() - + radarr_version = get_radarr_version() - + page_size = int(settings.general.page_size) - + return render_template('system.html', bazarr_version=bazarr_version, sonarr_version=sonarr_version, radarr_version=radarr_version, operating_system=platform.platform(), python_version=platform.python_version(), @@ -1496,7 +1516,7 @@ def system(): @app.route('/logs') -# @custom_auth_basic(check_credentials) +@login_required def get_logs(): logs = [] @@ -1506,23 +1526,23 @@ def get_logs(): lin = line.split('|') logs.append(lin) logs.reverse() - + return dict(data=logs) @app.route('/execute/') -# @custom_auth_basic(check_credentials) +@login_required def execute_task(taskid): ref = request.environ['HTTP_REFERER'] - + execute_now(taskid) - + redirect(ref) @app.route('/remove_subtitles', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def remove_subtitles(): episodePath = request.form.get('episodePath') @@ -1530,7 +1550,7 @@ def remove_subtitles(): subtitlesPath = request.form.get('subtitlesPath') sonarrSeriesId = request.form.get('sonarrSeriesId') sonarrEpisodeId = request.form.get('sonarrEpisodeId') - + try: os.remove(subtitlesPath) result = language_from_alpha3(language) + " subtitles deleted from disk." @@ -1541,14 +1561,14 @@ def remove_subtitles(): @app.route('/remove_subtitles_movie', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def remove_subtitles_movie(): moviePath = request.form.get('moviePath') language = request.form.get('language') subtitlesPath = request.form.get('subtitlesPath') radarrId = request.form.get('radarrId') - + try: os.remove(subtitlesPath) result = language_from_alpha3(language) + " subtitles deleted from disk." @@ -1559,11 +1579,11 @@ def remove_subtitles_movie(): @app.route('/get_subtitle', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def get_subtitle(): ref = request.environ['HTTP_REFERER'] - + episodePath = request.form.get('episodePath') sceneName = request.form.get('sceneName') language = request.form.get('language') @@ -1572,10 +1592,10 @@ def get_subtitle(): sonarrSeriesId = request.form.get('sonarrSeriesId') sonarrEpisodeId = request.form.get('sonarrEpisodeId') title = request.form.get('title') - + providers_list = get_providers() providers_auth = get_providers_auth() - + try: result = download_subtitle(episodePath, language, hi, forced, providers_list, providers_auth, sceneName, title, 'series') @@ -1595,30 +1615,30 @@ def get_subtitle(): @app.route('/manual_search', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def manual_search_json(): - + episodePath = request.form.get('episodePath') sceneName = request.form.get('sceneName') language = request.form.get('language') hi = request.form.get('hi') forced = request.form.get('forced') title = request.form.get('title') - + providers_list = get_providers() providers_auth = get_providers_auth() - + data = manual_search(episodePath, language, hi, forced, providers_list, providers_auth, sceneName, title, 'series') return dict(data=data) @app.route('/manual_get_subtitle', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def manual_get_subtitle(): ref = request.environ['HTTP_REFERER'] - + episodePath = request.form.get('episodePath') sceneName = request.form.get('sceneName') language = request.form.get('language') @@ -1629,9 +1649,9 @@ def manual_get_subtitle(): sonarrSeriesId = request.form.get('sonarrSeriesId') sonarrEpisodeId = request.form.get('sonarrEpisodeId') title = request.form.get('title') - + providers_auth = get_providers_auth() - + try: result = manual_download_subtitle(episodePath, language, hi, forced, subtitle, selected_provider, providers_auth, @@ -1652,7 +1672,7 @@ def manual_get_subtitle(): @app.route('/manual_upload_subtitle', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def perform_manual_upload_subtitle(): ref = request.environ['HTTP_REFERER'] @@ -1696,11 +1716,11 @@ def perform_manual_upload_subtitle(): @app.route('/get_subtitle_movie', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def get_subtitle_movie(): ref = request.environ['HTTP_REFERER'] - + moviePath = request.form.get('moviePath') sceneName = request.form.get('sceneName') language = request.form.get('language') @@ -1708,10 +1728,10 @@ def get_subtitle_movie(): forced = request.form.get('forced') radarrId = request.form.get('radarrId') title = request.form.get('title') - + providers_list = get_providers() providers_auth = get_providers_auth() - + try: result = download_subtitle(moviePath, language, hi, forced, providers_list, providers_auth, sceneName, title, 'movie') @@ -1731,30 +1751,30 @@ def get_subtitle_movie(): @app.route('/manual_search_movie', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def manual_search_movie_json(): - + moviePath = request.form.get('moviePath') sceneName = request.form.get('sceneName') language = request.form.get('language') hi = request.form.get('hi') forced = request.form.get('forced') title = request.form.get('title') - + providers_list = get_providers() providers_auth = get_providers_auth() - + data = manual_search(moviePath, language, hi, forced, providers_list, providers_auth, sceneName, title, 'movie') return dict(data=data) @app.route('/manual_get_subtitle_movie', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def manual_get_subtitle_movie(): ref = request.environ['HTTP_REFERER'] - + moviePath = request.form.get('moviePath') sceneName = request.form.get('sceneName') language = request.form.get('language') @@ -1764,9 +1784,9 @@ def manual_get_subtitle_movie(): subtitle = request.form.get('subtitle') radarrId = request.form.get('radarrId') title = request.form.get('title') - + providers_auth = get_providers_auth() - + try: result = manual_download_subtitle(moviePath, language, hi, forced, subtitle, selected_provider, providers_auth, sceneName, title, 'movie') @@ -1786,7 +1806,7 @@ def manual_get_subtitle_movie(): @app.route('/manual_upload_subtitle_movie', methods=['POST']) -# @custom_auth_basic(check_credentials) +@login_required def perform_manual_upload_subtitle_movie(): ref = request.environ['HTTP_REFERER'] @@ -1893,7 +1913,7 @@ def api_movies_history(): @app.route('/test_url//', methods=['GET']) -# @custom_auth_basic(check_credentials) +@login_required def test_url(protocol, url): url = six.moves.urllib.parse.unquote(url) @@ -1906,13 +1926,13 @@ def test_url(protocol, url): @app.route('/test_notification//', methods=['GET']) -# @custom_auth_basic(check_credentials) +@login_required def test_notification(protocol, provider): provider = six.moves.urllib.parse.unquote(provider) apobj = apprise.Apprise() apobj.add(protocol + "://" + provider) - + apobj.notify( title='Bazarr test notification', body=('Test notification') @@ -1920,7 +1940,7 @@ def test_notification(protocol, provider): @app.route('/notifications') -# @custom_auth_basic(check_credentials) +@login_required def notifications(): if queueconfig.notifications: test = queueconfig.notifications @@ -1930,14 +1950,14 @@ def notifications(): @app.route('/running_tasks') -# @custom_auth_basic(check_credentials) +@login_required def running_tasks_list(): return dict(tasks=running_tasks) @app.route('/episode_history/') -# @custom_auth_basic(check_credentials) +@login_required def episode_history(no): episode_history = database.execute("SELECT action, timestamp, language, provider, score FROM table_history " @@ -1976,7 +1996,7 @@ def episode_history(no): @app.route('/movie_history/') -# @custom_auth_basic(check_credentials) +@login_required def movie_history(no): movie_history = database.execute("SELECT action, timestamp, language, provider, score FROM table_history_movie " diff --git a/static/js/chat.js b/static/js/chat.js deleted file mode 100644 index 582544edf..000000000 --- a/static/js/chat.js +++ /dev/null @@ -1,51 +0,0 @@ -/*jslint browser: true*/ -/*global $, jQuery, alert*/ - -$(function () { - - "use strict"; - - $('.chat-left-inner > .chatonline').slimScroll({ - height: '100%', - position: 'right', - size: "5px", - color: '#dcdcdc' - - }); - $('.chat-list').slimScroll({ - position: 'right' - , size: "5px" - , height: '100%' - , color: '#dcdcdc' - }); - - var cht = function () { - var topOffset = 445; - var height = ((window.innerHeight > 0) ? window.innerHeight : this.screen.height) - 1; - height = height - topOffset; - $(".chat-list").css("height", (height) + "px"); - }; - $(window).ready(cht); - $(window).on("resize", cht); - - - - // this is for the left-aside-fix in content area with scroll - var chtin = function () { - var topOffset = 270; - var height = ((window.innerHeight > 0) ? window.innerHeight : this.screen.height) - 1; - height = height - topOffset; - $(".chat-left-inner").css("height", (height) + "px"); - }; - $(window).ready(chtin); - $(window).on("resize", chtin); - - - - - $(".open-panel").on("click", function () { - $(".chat-left-aside").toggleClass("open-pnl"); - $(".open-panel i").toggleClass("ti-angle-left"); - }); - -}); diff --git a/static/noty/noty.css b/static/noty/noty.css deleted file mode 100644 index 1c3ce94b9..000000000 --- a/static/noty/noty.css +++ /dev/null @@ -1,697 +0,0 @@ -.noty_layout_mixin, #noty_layout__top, #noty_layout__topLeft, #noty_layout__topCenter, #noty_layout__topRight, #noty_layout__bottom, #noty_layout__bottomLeft, #noty_layout__bottomCenter, #noty_layout__bottomRight, #noty_layout__center, #noty_layout__centerLeft, #noty_layout__centerRight { - position: fixed; - margin: 0; - padding: 0; - z-index: 9999999; - -webkit-transform: translateZ(0) scale(1, 1); - transform: translateZ(0) scale(1, 1); - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - -webkit-font-smoothing: subpixel-antialiased; - filter: blur(0); - -webkit-filter: blur(0); - max-width: 90%; } - -#noty_layout__top { - top: 0; - left: 5%; - width: 90%; } - -#noty_layout__topLeft { - top: 20px; - left: 20px; - width: 325px; } - -#noty_layout__topCenter { - top: 5%; - left: 50%; - width: 325px; - -webkit-transform: translate(-webkit-calc(-50% - .5px)) translateZ(0) scale(1, 1); - transform: translate(calc(-50% - .5px)) translateZ(0) scale(1, 1); } - -#noty_layout__topRight { - top: 20px; - right: 20px; - width: 325px; } - -#noty_layout__bottom { - bottom: 0; - left: 5%; - width: 90%; } - -#noty_layout__bottomLeft { - bottom: 20px; - left: 20px; - width: 325px; } - -#noty_layout__bottomCenter { - bottom: 5%; - left: 50%; - width: 325px; - -webkit-transform: translate(-webkit-calc(-50% - .5px)) translateZ(0) scale(1, 1); - transform: translate(calc(-50% - .5px)) translateZ(0) scale(1, 1); } - -#noty_layout__bottomRight { - bottom: 20px; - right: 20px; - width: 325px; } - -#noty_layout__center { - top: 50%; - left: 50%; - width: 325px; - -webkit-transform: translate(-webkit-calc(-50% - .5px), -webkit-calc(-50% - .5px)) translateZ(0) scale(1, 1); - transform: translate(calc(-50% - .5px), calc(-50% - .5px)) translateZ(0) scale(1, 1); } - -#noty_layout__centerLeft { - top: 50%; - left: 20px; - width: 325px; - -webkit-transform: translate(0, -webkit-calc(-50% - .5px)) translateZ(0) scale(1, 1); - transform: translate(0, calc(-50% - .5px)) translateZ(0) scale(1, 1); } - -#noty_layout__centerRight { - top: 50%; - right: 20px; - width: 325px; - -webkit-transform: translate(0, -webkit-calc(-50% - .5px)) translateZ(0) scale(1, 1); - transform: translate(0, calc(-50% - .5px)) translateZ(0) scale(1, 1); } - -.noty_progressbar { - display: none; } - -.noty_has_timeout.noty_has_progressbar .noty_progressbar { - display: block; - position: absolute; - left: 0; - bottom: 0; - height: 3px; - width: 100%; - background-color: #646464; - opacity: 0.2; - filter: alpha(opacity=10); } - -.noty_bar { - -webkit-backface-visibility: hidden; - -webkit-transform: translate(0, 0) translateZ(0) scale(1, 1); - -ms-transform: translate(0, 0) scale(1, 1); - transform: translate(0, 0) scale(1, 1); - -webkit-font-smoothing: subpixel-antialiased; - overflow: hidden; } - -.noty_effects_open { - opacity: 0; - -webkit-transform: translate(50%); - -ms-transform: translate(50%); - transform: translate(50%); - -webkit-animation: noty_anim_in 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55); - animation: noty_anim_in 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55); - -webkit-animation-fill-mode: forwards; - animation-fill-mode: forwards; } - -.noty_effects_close { - -webkit-animation: noty_anim_out 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55); - animation: noty_anim_out 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55); - -webkit-animation-fill-mode: forwards; - animation-fill-mode: forwards; } - -.noty_fix_effects_height { - -webkit-animation: noty_anim_height 75ms ease-out; - animation: noty_anim_height 75ms ease-out; } - -.noty_close_with_click { - cursor: pointer; } - -.noty_close_button { - position: absolute; - top: 2px; - right: 2px; - font-weight: bold; - width: 20px; - height: 20px; - text-align: center; - line-height: 20px; - background-color: rgba(0, 0, 0, 0.05); - border-radius: 2px; - cursor: pointer; - -webkit-transition: all .2s ease-out; - transition: all .2s ease-out; } - -.noty_close_button:hover { - background-color: rgba(0, 0, 0, 0.1); } - -.noty_modal { - position: fixed; - width: 100%; - height: 100%; - background-color: #000; - z-index: 10000; - opacity: .3; - left: 0; - top: 0; } - -.noty_modal.noty_modal_open { - opacity: 0; - -webkit-animation: noty_modal_in .3s ease-out; - animation: noty_modal_in .3s ease-out; } - -.noty_modal.noty_modal_close { - -webkit-animation: noty_modal_out .3s ease-out; - animation: noty_modal_out .3s ease-out; - -webkit-animation-fill-mode: forwards; - animation-fill-mode: forwards; } - -@-webkit-keyframes noty_modal_in { - 100% { - opacity: .3; } } - -@keyframes noty_modal_in { - 100% { - opacity: .3; } } - -@-webkit-keyframes noty_modal_out { - 100% { - opacity: 0; } } - -@keyframes noty_modal_out { - 100% { - opacity: 0; } } - -@keyframes noty_modal_out { - 100% { - opacity: 0; } } - -@-webkit-keyframes noty_anim_in { - 100% { - -webkit-transform: translate(0); - transform: translate(0); - opacity: 1; } } - -@keyframes noty_anim_in { - 100% { - -webkit-transform: translate(0); - transform: translate(0); - opacity: 1; } } - -@-webkit-keyframes noty_anim_out { - 100% { - -webkit-transform: translate(50%); - transform: translate(50%); - opacity: 0; } } - -@keyframes noty_anim_out { - 100% { - -webkit-transform: translate(50%); - transform: translate(50%); - opacity: 0; } } - -@-webkit-keyframes noty_anim_height { - 100% { - height: 0; } } - -@keyframes noty_anim_height { - 100% { - height: 0; } } - -.noty_theme__relax.noty_bar { - margin: 4px 0; - overflow: hidden; - border-radius: 2px; - position: relative; } - .noty_theme__relax.noty_bar .noty_body { - padding: 10px; } - .noty_theme__relax.noty_bar .noty_buttons { - border-top: 1px solid #e7e7e7; - padding: 5px 10px; } - -.noty_theme__relax.noty_type__alert, -.noty_theme__relax.noty_type__notification { - background-color: #fff; - border: 1px solid #dedede; - color: #444; } - -.noty_theme__relax.noty_type__warning { - background-color: #FFEAA8; - border: 1px solid #FFC237; - color: #826200; } - .noty_theme__relax.noty_type__warning .noty_buttons { - border-color: #dfaa30; } - -.noty_theme__relax.noty_type__error { - background-color: #FF8181; - border: 1px solid #e25353; - color: #FFF; } - .noty_theme__relax.noty_type__error .noty_buttons { - border-color: darkred; } - -.noty_theme__relax.noty_type__info, -.noty_theme__relax.noty_type__information { - background-color: #78C5E7; - border: 1px solid #3badd6; - color: #FFF; } - .noty_theme__relax.noty_type__info .noty_buttons, - .noty_theme__relax.noty_type__information .noty_buttons { - border-color: #0B90C4; } - -.noty_theme__relax.noty_type__success { - background-color: #BCF5BC; - border: 1px solid #7cdd77; - color: darkgreen; } - .noty_theme__relax.noty_type__success .noty_buttons { - border-color: #50C24E; } - -.noty_theme__metroui.noty_bar { - margin: 4px 0; - overflow: hidden; - position: relative; - box-shadow: rgba(0, 0, 0, 0.298039) 0 0 5px 0; } - .noty_theme__metroui.noty_bar .noty_progressbar { - position: absolute; - left: 0; - bottom: 0; - height: 3px; - width: 100%; - background-color: #000; - opacity: 0.2; - filter: alpha(opacity=20); } - .noty_theme__metroui.noty_bar .noty_body { - padding: 1.25em; - font-size: 14px; } - .noty_theme__metroui.noty_bar .noty_buttons { - padding: 0 10px .5em 10px; } - -.noty_theme__metroui.noty_type__alert, -.noty_theme__metroui.noty_type__notification { - background-color: #fff; - color: #1d1d1d; } - -.noty_theme__metroui.noty_type__warning { - background-color: #FA6800; - color: #fff; } - -.noty_theme__metroui.noty_type__error { - background-color: #CE352C; - color: #FFF; } - -.noty_theme__metroui.noty_type__info, -.noty_theme__metroui.noty_type__information { - background-color: #1BA1E2; - color: #FFF; } - -.noty_theme__metroui.noty_type__success { - background-color: #60A917; - color: #fff; } - -.noty_theme__mint.noty_bar { - margin: 4px 0; - overflow: hidden; - border-radius: 2px; - position: relative; } - .noty_theme__mint.noty_bar .noty_body { - padding: 10px; - font-size: 14px; } - .noty_theme__mint.noty_bar .noty_buttons { - padding: 10px; } - -.noty_theme__mint.noty_type__alert, -.noty_theme__mint.noty_type__notification { - background-color: #fff; - border-bottom: 1px solid #D1D1D1; - color: #2F2F2F; } - -.noty_theme__mint.noty_type__warning { - background-color: #FFAE42; - border-bottom: 1px solid #E89F3C; - color: #fff; } - -.noty_theme__mint.noty_type__error { - background-color: #DE636F; - border-bottom: 1px solid #CA5A65; - color: #fff; } - -.noty_theme__mint.noty_type__info, -.noty_theme__mint.noty_type__information { - background-color: #7F7EFF; - border-bottom: 1px solid #7473E8; - color: #fff; } - -.noty_theme__mint.noty_type__success { - background-color: #AFC765; - border-bottom: 1px solid #A0B55C; - color: #fff; } - -.noty_theme__sunset.noty_bar { - margin: 4px 0; - overflow: hidden; - border-radius: 2px; - position: relative; } - .noty_theme__sunset.noty_bar .noty_body { - padding: 10px; - font-size: 14px; - text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1); } - .noty_theme__sunset.noty_bar .noty_buttons { - padding: 10px; } - -.noty_theme__sunset.noty_type__alert, -.noty_theme__sunset.noty_type__notification { - background-color: #073B4C; - color: #fff; } - .noty_theme__sunset.noty_type__alert .noty_progressbar, - .noty_theme__sunset.noty_type__notification .noty_progressbar { - background-color: #fff; } - -.noty_theme__sunset.noty_type__warning { - background-color: #FFD166; - color: #fff; } - -.noty_theme__sunset.noty_type__error { - background-color: #EF476F; - color: #fff; } - .noty_theme__sunset.noty_type__error .noty_progressbar { - opacity: .4; } - -.noty_theme__sunset.noty_type__info, -.noty_theme__sunset.noty_type__information { - background-color: #118AB2; - color: #fff; } - .noty_theme__sunset.noty_type__info .noty_progressbar, - .noty_theme__sunset.noty_type__information .noty_progressbar { - opacity: .6; } - -.noty_theme__sunset.noty_type__success { - background-color: #06D6A0; - color: #fff; } - -.noty_theme__bootstrap-v3.noty_bar { - margin: 4px 0; - overflow: hidden; - position: relative; - border: 1px solid transparent; - border-radius: 4px; } - .noty_theme__bootstrap-v3.noty_bar .noty_body { - padding: 15px; } - .noty_theme__bootstrap-v3.noty_bar .noty_buttons { - padding: 10px; } - .noty_theme__bootstrap-v3.noty_bar .noty_close_button { - font-size: 21px; - font-weight: 700; - line-height: 1; - color: #000; - text-shadow: 0 1px 0 #fff; - filter: alpha(opacity=20); - opacity: .2; - background: transparent; } - .noty_theme__bootstrap-v3.noty_bar .noty_close_button:hover { - background: transparent; - text-decoration: none; - cursor: pointer; - filter: alpha(opacity=50); - opacity: .5; } - -.noty_theme__bootstrap-v3.noty_type__alert, -.noty_theme__bootstrap-v3.noty_type__notification { - background-color: #fff; - color: inherit; } - -.noty_theme__bootstrap-v3.noty_type__warning { - background-color: #fcf8e3; - color: #8a6d3b; - border-color: #faebcc; } - -.noty_theme__bootstrap-v3.noty_type__error { - background-color: #f2dede; - color: #a94442; - border-color: #ebccd1; } - -.noty_theme__bootstrap-v3.noty_type__info, -.noty_theme__bootstrap-v3.noty_type__information { - background-color: #d9edf7; - color: #31708f; - border-color: #bce8f1; } - -.noty_theme__bootstrap-v3.noty_type__success { - background-color: #dff0d8; - color: #3c763d; - border-color: #d6e9c6; } - -.noty_theme__bootstrap-v4.noty_bar { - margin: 4px 0; - overflow: hidden; - position: relative; - border: 1px solid transparent; - border-radius: .25rem; } - .noty_theme__bootstrap-v4.noty_bar .noty_body { - padding: .75rem 1.25rem; } - .noty_theme__bootstrap-v4.noty_bar .noty_buttons { - padding: 10px; } - .noty_theme__bootstrap-v4.noty_bar .noty_close_button { - font-size: 1.5rem; - font-weight: 700; - line-height: 1; - color: #000; - text-shadow: 0 1px 0 #fff; - filter: alpha(opacity=20); - opacity: .5; - background: transparent; } - .noty_theme__bootstrap-v4.noty_bar .noty_close_button:hover { - background: transparent; - text-decoration: none; - cursor: pointer; - filter: alpha(opacity=50); - opacity: .75; } - -.noty_theme__bootstrap-v4.noty_type__alert, -.noty_theme__bootstrap-v4.noty_type__notification { - background-color: #fff; - color: inherit; } - -.noty_theme__bootstrap-v4.noty_type__warning { - background-color: #fcf8e3; - color: #8a6d3b; - border-color: #faebcc; } - -.noty_theme__bootstrap-v4.noty_type__error { - background-color: #f2dede; - color: #a94442; - border-color: #ebccd1; } - -.noty_theme__bootstrap-v4.noty_type__info, -.noty_theme__bootstrap-v4.noty_type__information { - background-color: #d9edf7; - color: #31708f; - border-color: #bce8f1; } - -.noty_theme__bootstrap-v4.noty_type__success { - background-color: #dff0d8; - color: #3c763d; - border-color: #d6e9c6; } - -.noty_theme__semanticui.noty_bar { - margin: 4px 0; - overflow: hidden; - position: relative; - border: 1px solid transparent; - font-size: 1em; - border-radius: .28571429rem; - box-shadow: 0 0 0 1px rgba(34, 36, 38, 0.22) inset, 0 0 0 0 transparent; } - .noty_theme__semanticui.noty_bar .noty_body { - padding: 1em 1.5em; - line-height: 1.4285em; } - .noty_theme__semanticui.noty_bar .noty_buttons { - padding: 10px; } - -.noty_theme__semanticui.noty_type__alert, -.noty_theme__semanticui.noty_type__notification { - background-color: #f8f8f9; - color: rgba(0, 0, 0, 0.87); } - -.noty_theme__semanticui.noty_type__warning { - background-color: #fffaf3; - color: #573a08; - box-shadow: 0 0 0 1px #c9ba9b inset, 0 0 0 0 transparent; } - -.noty_theme__semanticui.noty_type__error { - background-color: #fff6f6; - color: #9f3a38; - box-shadow: 0 0 0 1px #e0b4b4 inset, 0 0 0 0 transparent; } - -.noty_theme__semanticui.noty_type__info, -.noty_theme__semanticui.noty_type__information { - background-color: #f8ffff; - color: #276f86; - box-shadow: 0 0 0 1px #a9d5de inset, 0 0 0 0 transparent; } - -.noty_theme__semanticui.noty_type__success { - background-color: #fcfff5; - color: #2c662d; - box-shadow: 0 0 0 1px #a3c293 inset, 0 0 0 0 transparent; } - -.noty_theme__nest.noty_bar { - margin: 0 0 15px 0; - overflow: hidden; - border-radius: 2px; - position: relative; - box-shadow: rgba(0, 0, 0, 0.098039) 5px 4px 10px 0; } - .noty_theme__nest.noty_bar .noty_body { - padding: 10px; - font-size: 14px; - text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1); } - .noty_theme__nest.noty_bar .noty_buttons { - padding: 10px; } - -.noty_layout .noty_theme__nest.noty_bar { - z-index: 5; } - -.noty_layout .noty_theme__nest.noty_bar:nth-child(2) { - position: absolute; - top: 0; - margin-top: 4px; - margin-right: -4px; - margin-left: 4px; - z-index: 4; - width: 100%; } - -.noty_layout .noty_theme__nest.noty_bar:nth-child(3) { - position: absolute; - top: 0; - margin-top: 8px; - margin-right: -8px; - margin-left: 8px; - z-index: 3; - width: 100%; } - -.noty_layout .noty_theme__nest.noty_bar:nth-child(4) { - position: absolute; - top: 0; - margin-top: 12px; - margin-right: -12px; - margin-left: 12px; - z-index: 2; - width: 100%; } - -.noty_layout .noty_theme__nest.noty_bar:nth-child(5) { - position: absolute; - top: 0; - margin-top: 16px; - margin-right: -16px; - margin-left: 16px; - z-index: 1; - width: 100%; } - -.noty_layout .noty_theme__nest.noty_bar:nth-child(n+6) { - position: absolute; - top: 0; - margin-top: 20px; - margin-right: -20px; - margin-left: 20px; - z-index: -1; - width: 100%; } - -#noty_layout__bottomLeft .noty_theme__nest.noty_bar:nth-child(2), -#noty_layout__topLeft .noty_theme__nest.noty_bar:nth-child(2) { - margin-top: 4px; - margin-left: -4px; - margin-right: 4px; } - -#noty_layout__bottomLeft .noty_theme__nest.noty_bar:nth-child(3), -#noty_layout__topLeft .noty_theme__nest.noty_bar:nth-child(3) { - margin-top: 8px; - margin-left: -8px; - margin-right: 8px; } - -#noty_layout__bottomLeft .noty_theme__nest.noty_bar:nth-child(4), -#noty_layout__topLeft .noty_theme__nest.noty_bar:nth-child(4) { - margin-top: 12px; - margin-left: -12px; - margin-right: 12px; } - -#noty_layout__bottomLeft .noty_theme__nest.noty_bar:nth-child(5), -#noty_layout__topLeft .noty_theme__nest.noty_bar:nth-child(5) { - margin-top: 16px; - margin-left: -16px; - margin-right: 16px; } - -#noty_layout__bottomLeft .noty_theme__nest.noty_bar:nth-child(n+6), -#noty_layout__topLeft .noty_theme__nest.noty_bar:nth-child(n+6) { - margin-top: 20px; - margin-left: -20px; - margin-right: 20px; } - -.noty_theme__nest.noty_type__alert, -.noty_theme__nest.noty_type__notification { - background-color: #073B4C; - color: #fff; } - .noty_theme__nest.noty_type__alert .noty_progressbar, - .noty_theme__nest.noty_type__notification .noty_progressbar { - background-color: #fff; } - -.noty_theme__nest.noty_type__warning { - background-color: #FFD166; - color: #fff; } - -.noty_theme__nest.noty_type__error { - background-color: #EF476F; - color: #fff; } - .noty_theme__nest.noty_type__error .noty_progressbar { - opacity: .4; } - -.noty_theme__nest.noty_type__info, -.noty_theme__nest.noty_type__information { - background-color: #118AB2; - color: #fff; } - .noty_theme__nest.noty_type__info .noty_progressbar, - .noty_theme__nest.noty_type__information .noty_progressbar { - opacity: .6; } - -.noty_theme__nest.noty_type__success { - background-color: #06D6A0; - color: #fff; } - -.noty_theme__light.noty_bar { - margin: 4px 0; - overflow: hidden; - border-radius: 2px; - position: relative; } - .noty_theme__light.noty_bar .noty_body { - padding: 10px; } - .noty_theme__light.noty_bar .noty_buttons { - border-top: 1px solid #e7e7e7; - padding: 5px 10px; } - -.noty_theme__light.noty_type__alert, -.noty_theme__light.noty_type__notification { - background-color: #fff; - border: 1px solid #dedede; - color: #444; } - -.noty_theme__light.noty_type__warning { - background-color: #FFEAA8; - border: 1px solid #FFC237; - color: #826200; } - .noty_theme__light.noty_type__warning .noty_buttons { - border-color: #dfaa30; } - -.noty_theme__light.noty_type__error { - background-color: #ED7000; - border: 1px solid #e25353; - color: #FFF; } - .noty_theme__light.noty_type__error .noty_buttons { - border-color: darkred; } - -.noty_theme__light.noty_type__info, -.noty_theme__light.noty_type__information { - background-color: #78C5E7; - border: 1px solid #3badd6; - color: #FFF; } - .noty_theme__light.noty_type__info .noty_buttons, - .noty_theme__light.noty_type__information .noty_buttons { - border-color: #0B90C4; } - -.noty_theme__light.noty_type__success { - background-color: #57C880; - border: 1px solid #7cdd77; - color: darkgreen; } - .noty_theme__light.noty_type__success .noty_buttons { - border-color: #50C24E; } - -/*# sourceMappingURL=noty.css.map*/ \ No newline at end of file diff --git a/static/noty/noty.min.js b/static/noty/noty.min.js deleted file mode 100644 index 4d43bf34e..000000000 --- a/static/noty/noty.min.js +++ /dev/null @@ -1,17 +0,0 @@ -/* - @package NOTY - Dependency-free notification library - @version version: 3.1.4 - @contributors https://github.com/needim/noty/graphs/contributors - @documentation Examples and Documentation - http://needim.github.com/noty - @license Licensed under the MIT licenses: http://www.opensource.org/licenses/mit-license.php -*/ - -!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define("Noty",[],e):"object"==typeof exports?exports.Noty=e():t.Noty=e()}(this,function(){return function(t){function e(o){if(n[o])return n[o].exports;var i=n[o]={i:o,l:!1,exports:{}};return t[o].call(i.exports,i,i.exports,e),i.l=!0,i.exports}var n={};return e.m=t,e.c=n,e.i=function(t){return t},e.d=function(t,n,o){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:o})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=6)}([function(t,e,n){"use strict";function o(t,e,n){var o=void 0;if(!n){for(o in e)if(e.hasOwnProperty(o)&&e[o]===t)return!0}else for(o in e)if(e.hasOwnProperty(o)&&e[o]===t)return!0;return!1}function i(t){t=t||window.event,void 0!==t.stopPropagation?t.stopPropagation():t.cancelBubble=!0}function r(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e="noty_"+t+"_";return e+="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){var e=16*Math.random()|0;return("x"===t?e:3&e|8).toString(16)})}function s(t){var e=t.offsetHeight,n=window.getComputedStyle(t);return e+=parseInt(n.marginTop)+parseInt(n.marginBottom)}function u(t,e,n){var o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];e=e.split(" ");for(var i=0;i=0}function c(t,e){var n=f(t),o=n+e;a(n,e)||(t.className=o.substring(1))}function l(t,e){var n=f(t),o=void 0;a(t,e)&&(o=n.replace(" "+e+" "," "),t.className=o.substring(1,o.length-1))}function d(t){t.parentNode&&t.parentNode.removeChild(t)}function f(t){return(" "+(t&&t.className||"")+" ").replace(/\s+/gi," ")}function h(){function t(){b.PageHidden=document[s],o()}function e(){b.PageHidden=!0,o()}function n(){b.PageHidden=!1,o()}function o(){b.PageHidden?i():r()}function i(){setTimeout(function(){Object.keys(b.Store).forEach(function(t){b.Store.hasOwnProperty(t)&&b.Store[t].options.visibilityControl&&b.Store[t].stop()})},100)}function r(){setTimeout(function(){Object.keys(b.Store).forEach(function(t){b.Store.hasOwnProperty(t)&&b.Store[t].options.visibilityControl&&b.Store[t].resume()}),b.queueRenderAll()},100)}var s=void 0,a=void 0;void 0!==document.hidden?(s="hidden",a="visibilitychange"):void 0!==document.msHidden?(s="msHidden",a="msvisibilitychange"):void 0!==document.webkitHidden&&(s="webkitHidden",a="webkitvisibilitychange"),a&&u(document,a,t),u(window,"blur",e),u(window,"focus",n)}function p(t){if(t.hasSound){var e=document.createElement("audio");t.options.sounds.sources.forEach(function(t){var n=document.createElement("source");n.src=t,n.type="audio/"+m(t),e.appendChild(n)}),t.barDom?t.barDom.appendChild(e):document.querySelector("body").appendChild(e),e.volume=t.options.sounds.volume,t.soundPlayed||(e.play(),t.soundPlayed=!0),e.onended=function(){d(e)}}}function m(t){return t.match(/\.([^.]+)$/)[1]}Object.defineProperty(e,"__esModule",{value:!0}),e.css=e.deepExtend=e.animationEndEvents=void 0;var v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};e.inArray=o,e.stopPropagation=i,e.generateID=r,e.outerHeight=s,e.addListener=u,e.hasClass=a,e.addClass=c,e.removeClass=l,e.remove=d,e.classList=f,e.visibilityChangeFlow=h,e.createAudioElements=p;var y=n(1),b=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e}(y);e.animationEndEvents="webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend",e.deepExtend=function t(e){e=e||{};for(var n=1;n0&&void 0!==arguments[0]?arguments[0]:"global",e=0,n=x;return E.hasOwnProperty(t)&&(n=E[t].maxVisible,Object.keys(P).forEach(function(n){P[n].options.queue!==t||P[n].closed||e++})),{current:e,maxVisible:n}}function i(t){E.hasOwnProperty(t.options.queue)||(E[t.options.queue]={maxVisible:x,queue:[]}),E[t.options.queue].queue.push(t)}function r(t){if(E.hasOwnProperty(t.options.queue)){var e=[];Object.keys(E[t.options.queue].queue).forEach(function(n){E[t.options.queue].queue[n].id!==t.id&&e.push(E[t.options.queue].queue[n])}),E[t.options.queue].queue=e}}function s(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"global";if(E.hasOwnProperty(t)){var e=E[t].queue.shift();e&&e.show()}}function u(){Object.keys(E).forEach(function(t){s(t)})}function a(t){var e=k.generateID("ghost"),n=document.createElement("div");n.setAttribute("id",e),k.css(n,{height:k.outerHeight(t.barDom)+"px"}),t.barDom.insertAdjacentHTML("afterend",n.outerHTML),k.remove(t.barDom),n=document.getElementById(e),k.addClass(n,"noty_fix_effects_height"),k.addListener(n,k.animationEndEvents,function(){k.remove(n)})}function c(t){m(t);var e='
'+t.options.text+"
"+d(t)+'
';t.barDom=document.createElement("div"),t.barDom.setAttribute("id",t.id),k.addClass(t.barDom,"noty_bar noty_type__"+t.options.type+" noty_theme__"+t.options.theme),t.barDom.innerHTML=e,b(t,"onTemplate")}function l(t){return!(!t.options.buttons||!Object.keys(t.options.buttons).length)}function d(t){if(l(t)){var e=document.createElement("div");return k.addClass(e,"noty_buttons"),Object.keys(t.options.buttons).forEach(function(n){e.appendChild(t.options.buttons[n].dom)}),t.options.buttons.forEach(function(t){e.appendChild(t.dom)}),e.outerHTML}return""}function f(t){t.options.modal&&(0===C&&p(),e.DocModalCount=C+=1)}function h(t){if(t.options.modal&&C>0&&(e.DocModalCount=C-=1,C<=0)){var n=document.querySelector(".noty_modal");n&&(k.removeClass(n,"noty_modal_open"),k.addClass(n,"noty_modal_close"),k.addListener(n,k.animationEndEvents,function(){k.remove(n)}))}}function p(){var t=document.querySelector("body"),e=document.createElement("div");k.addClass(e,"noty_modal"),t.insertBefore(e,t.firstChild),k.addClass(e,"noty_modal_open"),k.addListener(e,k.animationEndEvents,function(){k.removeClass(e,"noty_modal_open")})}function m(t){if(t.options.container)return void(t.layoutDom=document.querySelector(t.options.container));var e="noty_layout__"+t.options.layout;t.layoutDom=document.querySelector("div#"+e),t.layoutDom||(t.layoutDom=document.createElement("div"),t.layoutDom.setAttribute("id",e),t.layoutDom.setAttribute("role","alert"),t.layoutDom.setAttribute("aria-live","polite"),k.addClass(t.layoutDom,"noty_layout"),document.querySelector("body").appendChild(t.layoutDom))}function v(t){t.options.timeout&&(t.options.progressBar&&t.progressDom&&k.css(t.progressDom,{transition:"width "+t.options.timeout+"ms linear",width:"0%"}),clearTimeout(t.closeTimer),t.closeTimer=setTimeout(function(){t.close()},t.options.timeout))}function y(t){t.options.timeout&&t.closeTimer&&(clearTimeout(t.closeTimer),t.closeTimer=-1,t.options.progressBar&&t.progressDom&&k.css(t.progressDom,{transition:"width 0ms linear",width:"100%"}))}function b(t,e){t.listeners.hasOwnProperty(e)&&t.listeners[e].forEach(function(e){"function"==typeof e&&e.apply(t)})}function w(t){b(t,"afterShow"),v(t),k.addListener(t.barDom,"mouseenter",function(){y(t)}),k.addListener(t.barDom,"mouseleave",function(){v(t)})}function g(t){delete P[t.id],t.closing=!1,b(t,"afterClose"),k.remove(t.barDom),0!==t.layoutDom.querySelectorAll(".noty_bar").length||t.options.container||k.remove(t.layoutDom),(k.inArray("docVisible",t.options.titleCount.conditions)||k.inArray("docHidden",t.options.titleCount.conditions))&&D.decrement(),s(t.options.queue)}Object.defineProperty(e,"__esModule",{value:!0}),e.Defaults=e.Store=e.Queues=e.DefaultMaxVisible=e.docTitle=e.DocModalCount=e.PageHidden=void 0,e.getQueueCounts=o,e.addToQueue=i,e.removeFromQueue=r,e.queueRender=s,e.queueRenderAll=u,e.ghostFix=a,e.build=c,e.hasButtons=l,e.handleModal=f,e.handleModalClose=h,e.queueClose=v,e.dequeueClose=y,e.fire=b,e.openFlow=w,e.closeFlow=g;var _=n(0),k=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e}(_),C=(e.PageHidden=!1,e.DocModalCount=0),S={originalTitle:null,count:0,changed:!1,timer:-1},D=e.docTitle={increment:function(){S.count++,D._update()},decrement:function(){if(--S.count<=0)return void D._clear();D._update()},_update:function(){var t=document.title;S.changed?document.title="("+S.count+") "+S.originalTitle:(S.originalTitle=t,document.title="("+S.count+") "+t,S.changed=!0)},_clear:function(){S.changed&&(S.count=0,document.title=S.originalTitle,S.changed=!1)}},x=e.DefaultMaxVisible=5,E=e.Queues={global:{maxVisible:x,queue:[]}},P=e.Store={};e.Defaults={type:"alert",layout:"topRight",theme:"mint",text:"",timeout:!1,progressBar:!0,closeWith:["click"],animation:{open:"noty_effects_open",close:"noty_effects_close"},id:!1,force:!1,killer:!1,queue:"global",container:!1,buttons:[],callbacks:{beforeShow:null,onShow:null,afterShow:null,onClose:null,afterClose:null,onClick:null,onHover:null,onTemplate:null},sounds:{sources:[],volume:1,conditions:[]},titleCount:{conditions:[]},modal:!1,visibilityControl:!1}},function(t,e,n){"use strict";function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0}),e.NotyButton=void 0;var i=n(0),r=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e}(i);e.NotyButton=function t(e,n,i){var s=this,u=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return o(this,t),this.dom=document.createElement("button"),this.dom.innerHTML=e,this.id=u.id=u.id||r.generateID("button"),this.cb=i,Object.keys(u).forEach(function(t){s.dom.setAttribute(t,u[t])}),r.addClass(this.dom,n||"noty_btn"),this}},function(t,e,n){"use strict";function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(t,e){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:"/service-worker.js";return o(this,t),this.subData={},this.workerPath=e,this.listeners={onPermissionGranted:[],onPermissionDenied:[],onSubscriptionSuccess:[],onSubscriptionCancel:[],onWorkerError:[],onWorkerSuccess:[],onWorkerNotSupported:[]},this}return i(t,[{key:"on",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(){};return"function"==typeof e&&this.listeners.hasOwnProperty(t)&&this.listeners[t].push(e),this}},{key:"fire",value:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];this.listeners.hasOwnProperty(t)&&this.listeners[t].forEach(function(t){"function"==typeof t&&t.apply(e,n)})}},{key:"create",value:function(){console.log("NOT IMPLEMENTED YET")}},{key:"isSupported",value:function(){var t=!1;try{t=window.Notification||window.webkitNotifications||navigator.mozNotification||window.external&&void 0!==window.external.msIsSiteMode()}catch(t){}return t}},{key:"getPermissionStatus",value:function(){var t="default";if(window.Notification&&window.Notification.permissionLevel)t=window.Notification.permissionLevel;else if(window.webkitNotifications&&window.webkitNotifications.checkPermission)switch(window.webkitNotifications.checkPermission()){case 1:t="default";break;case 0:t="granted";break;default:t="denied"}else window.Notification&&window.Notification.permission?t=window.Notification.permission:navigator.mozNotification?t="granted":window.external&&void 0!==window.external.msIsSiteMode()&&(t=window.external.msIsSiteMode()?"granted":"default");return t.toString().toLowerCase()}},{key:"getEndpoint",value:function(t){var e=t.endpoint,n=t.subscriptionId;return n&&-1===e.indexOf(n)&&(e+="/"+n),e}},{key:"isSWRegistered",value:function(){try{return"activated"===navigator.serviceWorker.controller.state}catch(t){return!1}}},{key:"unregisterWorker",value:function(){var t=this;"serviceWorker"in navigator&&navigator.serviceWorker.getRegistrations().then(function(e){var n=!0,o=!1,i=void 0;try{for(var r,s=e[Symbol.iterator]();!(n=(r=s.next()).done);n=!0){r.value.unregister(),t.fire("onSubscriptionCancel")}}catch(t){o=!0,i=t}finally{try{!n&&s.return&&s.return()}finally{if(o)throw i}}})}},{key:"requestSubscription",value:function(){var t=this,e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],n=this,o=this.getPermissionStatus(),i=function(o){"granted"===o?(t.fire("onPermissionGranted"),"serviceWorker"in navigator?navigator.serviceWorker.register(t.workerPath).then(function(){navigator.serviceWorker.ready.then(function(t){n.fire("onWorkerSuccess"),t.pushManager.subscribe({userVisibleOnly:e}).then(function(t){var e=t.getKey("p256dh"),o=t.getKey("auth");n.subData={endpoint:n.getEndpoint(t),p256dh:e?window.btoa(String.fromCharCode.apply(null,new Uint8Array(e))):null,auth:o?window.btoa(String.fromCharCode.apply(null,new Uint8Array(o))):null},n.fire("onSubscriptionSuccess",[n.subData])}).catch(function(t){n.fire("onWorkerError",[t])})})}):n.fire("onWorkerNotSupported")):"denied"===o&&(t.fire("onPermissionDenied"),t.unregisterWorker())};"default"===o?window.Notification&&window.Notification.requestPermission?window.Notification.requestPermission(i):window.webkitNotifications&&window.webkitNotifications.checkPermission&&window.webkitNotifications.requestPermission(i):i(o)}}]),t}()},function(t,e,n){(function(e,o){/*! - * @overview es6-promise - a tiny implementation of Promises/A+. - * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald) - * @license Licensed under MIT license - * See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE - * @version 4.1.1 - */ -!function(e,n){t.exports=n()}(0,function(){"use strict";function t(t){var e=typeof t;return null!==t&&("object"===e||"function"===e)}function i(t){return"function"==typeof t}function r(t){z=t}function s(t){U=t}function u(){return void 0!==R?function(){R(c)}:a()}function a(){var t=setTimeout;return function(){return t(c,1)}}function c(){for(var t=0;t0&&void 0!==arguments[0]?arguments[0]:{};return i(this,t),this.options=c.deepExtend({},d.Defaults,e),this.id=this.options.id||c.generateID("bar"),this.closeTimer=-1,this.barDom=null,this.layoutDom=null,this.progressDom=null,this.showing=!1,this.shown=!1,this.closed=!1,this.closing=!1,this.killable=this.options.timeout||this.options.closeWith.length>0,this.hasSound=this.options.sounds.sources.length>0,this.soundPlayed=!1,this.listeners={beforeShow:[],onShow:[],afterShow:[],onClose:[],afterClose:[],onClick:[],onHover:[],onTemplate:[]},this.promises={show:null,close:null},this.on("beforeShow",this.options.callbacks.beforeShow),this.on("onShow",this.options.callbacks.onShow),this.on("afterShow",this.options.callbacks.afterShow),this.on("onClose",this.options.callbacks.onClose),this.on("afterClose",this.options.callbacks.afterClose),this.on("onClick",this.options.callbacks.onClick),this.on("onHover",this.options.callbacks.onHover),this.on("onTemplate",this.options.callbacks.onTemplate),this}return r(t,[{key:"on",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(){};return"function"==typeof e&&this.listeners.hasOwnProperty(t)&&this.listeners[t].push(e),this}},{key:"show",value:function(){var e=this;!0===this.options.killer?t.closeAll():"string"==typeof this.options.killer&&t.closeAll(this.options.killer);var n=d.getQueueCounts(this.options.queue);if(n.current>=n.maxVisible||d.PageHidden&&this.options.visibilityControl)return d.addToQueue(this),d.PageHidden&&this.hasSound&&c.inArray("docHidden",this.options.sounds.conditions)&&c.createAudioElements(this),d.PageHidden&&c.inArray("docHidden",this.options.titleCount.conditions)&&d.docTitle.increment(),this;if(d.Store[this.id]=this,d.fire(this,"beforeShow"),this.showing=!0,this.closing)return this.showing=!1,this;if(d.build(this),d.handleModal(this),this.options.force?this.layoutDom.insertBefore(this.barDom,this.layoutDom.firstChild):this.layoutDom.appendChild(this.barDom),this.hasSound&&!this.soundPlayed&&c.inArray("docVisible",this.options.sounds.conditions)&&c.createAudioElements(this),c.inArray("docVisible",this.options.titleCount.conditions)&&d.docTitle.increment(),this.shown=!0,this.closed=!1,d.hasButtons(this)&&Object.keys(this.options.buttons).forEach(function(t){var n=e.barDom.querySelector("#"+e.options.buttons[t].id);c.addListener(n,"click",function(n){c.stopPropagation(n),e.options.buttons[t].cb()})}),this.progressDom=this.barDom.querySelector(".noty_progressbar"),c.inArray("click",this.options.closeWith)&&(c.addClass(this.barDom,"noty_close_with_click"),c.addListener(this.barDom,"click",function(t){c.stopPropagation(t),d.fire(e,"onClick"),e.close()},!1)),c.addListener(this.barDom,"mouseenter",function(){d.fire(e,"onHover")},!1),this.options.timeout&&c.addClass(this.barDom,"noty_has_timeout"),this.options.progressBar&&c.addClass(this.barDom,"noty_has_progressbar"),c.inArray("button",this.options.closeWith)){c.addClass(this.barDom,"noty_close_with_button");var o=document.createElement("div");c.addClass(o,"noty_close_button"),o.innerHTML="×",this.barDom.appendChild(o),c.addListener(o,"click",function(t){c.stopPropagation(t),e.close()},!1)}return d.fire(this,"onShow"),null===this.options.animation.open?this.promises.show=new u.default(function(t){t()}):"function"==typeof this.options.animation.open?this.promises.show=new u.default(this.options.animation.open.bind(this)):(c.addClass(this.barDom,this.options.animation.open),this.promises.show=new u.default(function(t){c.addListener(e.barDom,c.animationEndEvents,function(){c.removeClass(e.barDom,e.options.animation.open),t()})})),this.promises.show.then(function(){var t=e;setTimeout(function(){d.openFlow(t)},100)}),this}},{key:"stop",value:function(){return d.dequeueClose(this),this}},{key:"resume",value:function(){return d.queueClose(this),this}},{key:"setTimeout",value:function(t){function e(e){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}(function(t){if(this.stop(),this.options.timeout=t,this.barDom){this.options.timeout?c.addClass(this.barDom,"noty_has_timeout"):c.removeClass(this.barDom,"noty_has_timeout");var e=this;setTimeout(function(){e.resume()},100)}return this})},{key:"setText",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this.barDom&&(this.barDom.querySelector(".noty_body").innerHTML=t),e&&(this.options.text=t),this}},{key:"setType",value:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(this.barDom){c.classList(this.barDom).split(" ").forEach(function(t){"noty_type__"===t.substring(0,11)&&c.removeClass(e.barDom,t)}),c.addClass(this.barDom,"noty_type__"+t)}return n&&(this.options.type=t),this}},{key:"setTheme",value:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(this.barDom){c.classList(this.barDom).split(" ").forEach(function(t){"noty_theme__"===t.substring(0,12)&&c.removeClass(e.barDom,t)}),c.addClass(this.barDom,"noty_theme__"+t)}return n&&(this.options.theme=t),this}},{key:"close",value:function(){var t=this;return this.closed?this:this.shown?(d.fire(this,"onClose"),this.closing=!0,null===this.options.animation.close?this.promises.close=new u.default(function(t){t()}):"function"==typeof this.options.animation.close?this.promises.close=new u.default(this.options.animation.close.bind(this)):(c.addClass(this.barDom,this.options.animation.close),this.promises.close=new u.default(function(e){c.addListener(t.barDom,c.animationEndEvents,function(){t.options.force?c.remove(t.barDom):d.ghostFix(t),e()})})),this.promises.close.then(function(){d.closeFlow(t),d.handleModalClose(t)}),this.closed=!0,this):(d.removeFromQueue(this),this)}}],[{key:"closeAll",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return Object.keys(d.Store).forEach(function(e){t?d.Store[e].options.queue===t&&d.Store[e].killable&&d.Store[e].close():d.Store[e].killable&&d.Store[e].close()}),this}},{key:"overrideDefaults",value:function(t){return d.Defaults=c.deepExtend({},d.Defaults,t),this}},{key:"setMaxVisible",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:d.DefaultMaxVisible,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"global";return d.Queues.hasOwnProperty(e)||(d.Queues[e]={maxVisible:t,queue:[]}),d.Queues[e].maxVisible=t,this}},{key:"button",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments[2],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return new f.NotyButton(t,e,n,o)}},{key:"version",value:function(){return"3.1.4"}},{key:"Push",value:function(t){return new h.Push(t)}}]),t}();e.default=p,c.visibilityChangeFlow(),t.exports=e.default},function(t,e){function n(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function i(t){if(l===setTimeout)return setTimeout(t,0);if((l===n||!l)&&setTimeout)return l=setTimeout,setTimeout(t,0);try{return l(t,0)}catch(e){try{return l.call(null,t,0)}catch(e){return l.call(this,t,0)}}}function r(t){if(d===clearTimeout)return clearTimeout(t);if((d===o||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(t);try{return d(t)}catch(e){try{return d.call(null,t)}catch(e){return d.call(this,t)}}}function s(){m&&h&&(m=!1,h.length?p=h.concat(p):v=-1,p.length&&u())}function u(){if(!m){var t=i(s);m=!0;for(var e=p.length;e;){for(h=p,p=[];++v1)for(var n=1;n .dropdown.icon { - float: right; - margin: 0.21425em 0em 0em 1em; - -webkit-transform: rotate(180deg); - transform: rotate(180deg); -} - -/* Header */ -.ui.accordion .ui.header .dropdown.icon { - font-size: 1em; - margin: 0em 0.25rem 0em 0rem; -} - - -/******************************* - States -*******************************/ - -.ui.accordion .active.title .dropdown.icon, -.ui.accordion .accordion .active.title .dropdown.icon { - -webkit-transform: rotate(90deg); - transform: rotate(90deg); -} -.ui.accordion.menu .item .active.title > .dropdown.icon { - -webkit-transform: rotate(90deg); - transform: rotate(90deg); -} - - -/******************************* - Types -*******************************/ - - -/*-------------- - Styled ----------------*/ - -.ui.styled.accordion { - width: 600px; -} -.ui.styled.accordion, -.ui.styled.accordion .accordion { - border-radius: 0.28571429rem; - background: #FFFFFF; - -webkit-box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15); - box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15); -} -.ui.styled.accordion .title, -.ui.styled.accordion .accordion .title { - margin: 0em; - padding: 0.75em 1em; - color: rgba(0, 0, 0, 0.4); - font-weight: bold; - border-top: 1px solid rgba(34, 36, 38, 0.15); - -webkit-transition: background 0.1s ease, color 0.1s ease; - transition: background 0.1s ease, color 0.1s ease; -} -.ui.styled.accordion > .title:first-child, -.ui.styled.accordion .accordion .title:first-child { - border-top: none; -} - -/* Content */ -.ui.styled.accordion .content, -.ui.styled.accordion .accordion .content { - margin: 0em; - padding: 0.5em 1em 1.5em; -} -.ui.styled.accordion .accordion .content { - padding: 0em; - padding: 0.5em 1em 1.5em; -} - -/* Hover */ -.ui.styled.accordion .title:hover, -.ui.styled.accordion .active.title, -.ui.styled.accordion .accordion .title:hover, -.ui.styled.accordion .accordion .active.title { - background: transparent; - color: rgba(0, 0, 0, 0.87); -} -.ui.styled.accordion .accordion .title:hover, -.ui.styled.accordion .accordion .active.title { - background: transparent; - color: rgba(0, 0, 0, 0.87); -} - -/* Active */ -.ui.styled.accordion .active.title { - background: transparent; - color: rgba(0, 0, 0, 0.95); -} -.ui.styled.accordion .accordion .active.title { - background: transparent; - color: rgba(0, 0, 0, 0.95); -} - - -/******************************* - States -*******************************/ - - -/*-------------- - Active ----------------*/ - -.ui.accordion .active.content, -.ui.accordion .accordion .active.content { - display: block; -} - - -/******************************* - Variations -*******************************/ - - -/*-------------- - Fluid ----------------*/ - -.ui.fluid.accordion, -.ui.fluid.accordion .accordion { - width: 100%; -} - -/*-------------- - Inverted ----------------*/ - -.ui.inverted.accordion .title:not(.ui) { - color: rgba(255, 255, 255, 0.9); -} - - -/******************************* - Theme Overrides -*******************************/ - -@font-face { - font-family: 'Accordion'; - src: url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMggjB5AAAAC8AAAAYGNtYXAPfOIKAAABHAAAAExnYXNwAAAAEAAAAWgAAAAIZ2x5Zryj6HgAAAFwAAAAyGhlYWT/0IhHAAACOAAAADZoaGVhApkB5wAAAnAAAAAkaG10eAJuABIAAAKUAAAAGGxvY2EAjABWAAACrAAAAA5tYXhwAAgAFgAAArwAAAAgbmFtZfC1n04AAALcAAABPHBvc3QAAwAAAAAEGAAAACAAAwIAAZAABQAAAUwBZgAAAEcBTAFmAAAA9QAZAIQAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADw2gHg/+D/4AHgACAAAAABAAAAAAAAAAAAAAAgAAAAAAACAAAAAwAAABQAAwABAAAAFAAEADgAAAAKAAgAAgACAAEAIPDa//3//wAAAAAAIPDZ//3//wAB/+MPKwADAAEAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQASAEkAtwFuABMAADc0PwE2FzYXFh0BFAcGJwYvASY1EgaABQgHBQYGBQcIBYAG2wcGfwcBAQcECf8IBAcBAQd/BgYAAAAAAQAAAEkApQFuABMAADcRNDc2MzIfARYVFA8BBiMiJyY1AAUGBwgFgAYGgAUIBwYFWwEACAUGBoAFCAcFgAYGBQcAAAABAAAAAQAAqWYls18PPPUACwIAAAAAAM/9o+4AAAAAz/2j7gAAAAAAtwFuAAAACAACAAAAAAAAAAEAAAHg/+AAAAIAAAAAAAC3AAEAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAQAAAAC3ABIAtwAAAAAAAAAKABQAHgBCAGQAAAABAAAABgAUAAEAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAADgCuAAEAAAAAAAEADAAAAAEAAAAAAAIADgBAAAEAAAAAAAMADAAiAAEAAAAAAAQADABOAAEAAAAAAAUAFgAMAAEAAAAAAAYABgAuAAEAAAAAAAoANABaAAMAAQQJAAEADAAAAAMAAQQJAAIADgBAAAMAAQQJAAMADAAiAAMAAQQJAAQADABOAAMAAQQJAAUAFgAMAAMAAQQJAAYADAA0AAMAAQQJAAoANABaAHIAYQB0AGkAbgBnAFYAZQByAHMAaQBvAG4AIAAxAC4AMAByAGEAdABpAG4AZ3JhdGluZwByAGEAdABpAG4AZwBSAGUAZwB1AGwAYQByAHIAYQB0AGkAbgBnAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format('truetype'), url(data:application/font-woff;charset=utf-8;base64,d09GRk9UVE8AAASwAAoAAAAABGgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABDRkYgAAAA9AAAAS0AAAEtFpovuE9TLzIAAAIkAAAAYAAAAGAIIweQY21hcAAAAoQAAABMAAAATA984gpnYXNwAAAC0AAAAAgAAAAIAAAAEGhlYWQAAALYAAAANgAAADb/0IhHaGhlYQAAAxAAAAAkAAAAJAKZAedobXR4AAADNAAAABgAAAAYAm4AEm1heHAAAANMAAAABgAAAAYABlAAbmFtZQAAA1QAAAE8AAABPPC1n05wb3N0AAAEkAAAACAAAAAgAAMAAAEABAQAAQEBB3JhdGluZwABAgABADr4HAL4GwP4GAQeCgAZU/+Lix4KABlT/4uLDAeLa/iU+HQFHQAAAHkPHQAAAH4RHQAAAAkdAAABJBIABwEBBw0PERQZHnJhdGluZ3JhdGluZ3UwdTF1MjB1RjBEOXVGMERBAAACAYkABAAGAQEEBwoNVp38lA78lA78lA77lA773Z33bxWLkI2Qj44I9xT3FAWOj5CNkIuQi4+JjoePiI2Gi4YIi/uUBYuGiYeHiIiHh4mGi4aLho2Ijwj7FPcUBYeOiY+LkAgO+92L5hWL95QFi5CNkI6Oj4+PjZCLkIuQiY6HCPcU+xQFj4iNhouGi4aJh4eICPsU+xQFiIeGiYaLhouHjYePiI6Jj4uQCA74lBT4lBWLDAoAAAAAAwIAAZAABQAAAUwBZgAAAEcBTAFmAAAA9QAZAIQAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADw2gHg/+D/4AHgACAAAAABAAAAAAAAAAAAAAAgAAAAAAACAAAAAwAAABQAAwABAAAAFAAEADgAAAAKAAgAAgACAAEAIPDa//3//wAAAAAAIPDZ//3//wAB/+MPKwADAAEAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAEAADfYOJZfDzz1AAsCAAAAAADP/aPuAAAAAM/9o+4AAAAAALcBbgAAAAgAAgAAAAAAAAABAAAB4P/gAAACAAAAAAAAtwABAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAEAAAAAtwASALcAAAAAUAAABgAAAAAADgCuAAEAAAAAAAEADAAAAAEAAAAAAAIADgBAAAEAAAAAAAMADAAiAAEAAAAAAAQADABOAAEAAAAAAAUAFgAMAAEAAAAAAAYABgAuAAEAAAAAAAoANABaAAMAAQQJAAEADAAAAAMAAQQJAAIADgBAAAMAAQQJAAMADAAiAAMAAQQJAAQADABOAAMAAQQJAAUAFgAMAAMAAQQJAAYADAA0AAMAAQQJAAoANABaAHIAYQB0AGkAbgBnAFYAZQByAHMAaQBvAG4AIAAxAC4AMAByAGEAdABpAG4AZ3JhdGluZwByAGEAdABpAG4AZwBSAGUAZwB1AGwAYQByAHIAYQB0AGkAbgBnAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format('woff'); - font-weight: normal; - font-style: normal; -} - -/* Dropdown Icon */ -.ui.accordion .title .dropdown.icon, -.ui.accordion .accordion .title .dropdown.icon { - font-family: Accordion; - line-height: 1; - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - font-weight: normal; - font-style: normal; - text-align: center; -} -.ui.accordion .title .dropdown.icon:before, -.ui.accordion .accordion .title .dropdown.icon:before { - content: '\f0da' /*rtl:'\f0d9'*/; -} - - -/******************************* - User Overrides -*******************************/ - diff --git a/static/semantic/components/accordion.js b/static/semantic/components/accordion.js deleted file mode 100644 index c0b56aef3..000000000 --- a/static/semantic/components/accordion.js +++ /dev/null @@ -1,613 +0,0 @@ -/*! - * # Semantic UI 2.4.0 - Accordion - * http://github.com/semantic-org/semantic-ui/ - * - * - * Released under the MIT license - * http://opensource.org/licenses/MIT - * - */ - -;(function ($, window, document, undefined) { - -'use strict'; - -window = (typeof window != 'undefined' && window.Math == Math) - ? window - : (typeof self != 'undefined' && self.Math == Math) - ? self - : Function('return this')() -; - -$.fn.accordion = function(parameters) { - var - $allModules = $(this), - - time = new Date().getTime(), - performance = [], - - query = arguments[0], - methodInvoked = (typeof query == 'string'), - queryArguments = [].slice.call(arguments, 1), - - requestAnimationFrame = window.requestAnimationFrame - || window.mozRequestAnimationFrame - || window.webkitRequestAnimationFrame - || window.msRequestAnimationFrame - || function(callback) { setTimeout(callback, 0); }, - - returnedValue - ; - $allModules - .each(function() { - var - settings = ( $.isPlainObject(parameters) ) - ? $.extend(true, {}, $.fn.accordion.settings, parameters) - : $.extend({}, $.fn.accordion.settings), - - className = settings.className, - namespace = settings.namespace, - selector = settings.selector, - error = settings.error, - - eventNamespace = '.' + namespace, - moduleNamespace = 'module-' + namespace, - moduleSelector = $allModules.selector || '', - - $module = $(this), - $title = $module.find(selector.title), - $content = $module.find(selector.content), - - element = this, - instance = $module.data(moduleNamespace), - observer, - module - ; - - module = { - - initialize: function() { - module.debug('Initializing', $module); - module.bind.events(); - if(settings.observeChanges) { - module.observeChanges(); - } - module.instantiate(); - }, - - instantiate: function() { - instance = module; - $module - .data(moduleNamespace, module) - ; - }, - - destroy: function() { - module.debug('Destroying previous instance', $module); - $module - .off(eventNamespace) - .removeData(moduleNamespace) - ; - }, - - refresh: function() { - $title = $module.find(selector.title); - $content = $module.find(selector.content); - }, - - observeChanges: function() { - if('MutationObserver' in window) { - observer = new MutationObserver(function(mutations) { - module.debug('DOM tree modified, updating selector cache'); - module.refresh(); - }); - observer.observe(element, { - childList : true, - subtree : true - }); - module.debug('Setting up mutation observer', observer); - } - }, - - bind: { - events: function() { - module.debug('Binding delegated events'); - $module - .on(settings.on + eventNamespace, selector.trigger, module.event.click) - ; - } - }, - - event: { - click: function() { - module.toggle.call(this); - } - }, - - toggle: function(query) { - var - $activeTitle = (query !== undefined) - ? (typeof query === 'number') - ? $title.eq(query) - : $(query).closest(selector.title) - : $(this).closest(selector.title), - $activeContent = $activeTitle.next($content), - isAnimating = $activeContent.hasClass(className.animating), - isActive = $activeContent.hasClass(className.active), - isOpen = (isActive && !isAnimating), - isOpening = (!isActive && isAnimating) - ; - module.debug('Toggling visibility of content', $activeTitle); - if(isOpen || isOpening) { - if(settings.collapsible) { - module.close.call($activeTitle); - } - else { - module.debug('Cannot close accordion content collapsing is disabled'); - } - } - else { - module.open.call($activeTitle); - } - }, - - open: function(query) { - var - $activeTitle = (query !== undefined) - ? (typeof query === 'number') - ? $title.eq(query) - : $(query).closest(selector.title) - : $(this).closest(selector.title), - $activeContent = $activeTitle.next($content), - isAnimating = $activeContent.hasClass(className.animating), - isActive = $activeContent.hasClass(className.active), - isOpen = (isActive || isAnimating) - ; - if(isOpen) { - module.debug('Accordion already open, skipping', $activeContent); - return; - } - module.debug('Opening accordion content', $activeTitle); - settings.onOpening.call($activeContent); - settings.onChanging.call($activeContent); - if(settings.exclusive) { - module.closeOthers.call($activeTitle); - } - $activeTitle - .addClass(className.active) - ; - $activeContent - .stop(true, true) - .addClass(className.animating) - ; - if(settings.animateChildren) { - if($.fn.transition !== undefined && $module.transition('is supported')) { - $activeContent - .children() - .transition({ - animation : 'fade in', - queue : false, - useFailSafe : true, - debug : settings.debug, - verbose : settings.verbose, - duration : settings.duration - }) - ; - } - else { - $activeContent - .children() - .stop(true, true) - .animate({ - opacity: 1 - }, settings.duration, module.resetOpacity) - ; - } - } - $activeContent - .slideDown(settings.duration, settings.easing, function() { - $activeContent - .removeClass(className.animating) - .addClass(className.active) - ; - module.reset.display.call(this); - settings.onOpen.call(this); - settings.onChange.call(this); - }) - ; - }, - - close: function(query) { - var - $activeTitle = (query !== undefined) - ? (typeof query === 'number') - ? $title.eq(query) - : $(query).closest(selector.title) - : $(this).closest(selector.title), - $activeContent = $activeTitle.next($content), - isAnimating = $activeContent.hasClass(className.animating), - isActive = $activeContent.hasClass(className.active), - isOpening = (!isActive && isAnimating), - isClosing = (isActive && isAnimating) - ; - if((isActive || isOpening) && !isClosing) { - module.debug('Closing accordion content', $activeContent); - settings.onClosing.call($activeContent); - settings.onChanging.call($activeContent); - $activeTitle - .removeClass(className.active) - ; - $activeContent - .stop(true, true) - .addClass(className.animating) - ; - if(settings.animateChildren) { - if($.fn.transition !== undefined && $module.transition('is supported')) { - $activeContent - .children() - .transition({ - animation : 'fade out', - queue : false, - useFailSafe : true, - debug : settings.debug, - verbose : settings.verbose, - duration : settings.duration - }) - ; - } - else { - $activeContent - .children() - .stop(true, true) - .animate({ - opacity: 0 - }, settings.duration, module.resetOpacity) - ; - } - } - $activeContent - .slideUp(settings.duration, settings.easing, function() { - $activeContent - .removeClass(className.animating) - .removeClass(className.active) - ; - module.reset.display.call(this); - settings.onClose.call(this); - settings.onChange.call(this); - }) - ; - } - }, - - closeOthers: function(index) { - var - $activeTitle = (index !== undefined) - ? $title.eq(index) - : $(this).closest(selector.title), - $parentTitles = $activeTitle.parents(selector.content).prev(selector.title), - $activeAccordion = $activeTitle.closest(selector.accordion), - activeSelector = selector.title + '.' + className.active + ':visible', - activeContent = selector.content + '.' + className.active + ':visible', - $openTitles, - $nestedTitles, - $openContents - ; - if(settings.closeNested) { - $openTitles = $activeAccordion.find(activeSelector).not($parentTitles); - $openContents = $openTitles.next($content); - } - else { - $openTitles = $activeAccordion.find(activeSelector).not($parentTitles); - $nestedTitles = $activeAccordion.find(activeContent).find(activeSelector).not($parentTitles); - $openTitles = $openTitles.not($nestedTitles); - $openContents = $openTitles.next($content); - } - if( ($openTitles.length > 0) ) { - module.debug('Exclusive enabled, closing other content', $openTitles); - $openTitles - .removeClass(className.active) - ; - $openContents - .removeClass(className.animating) - .stop(true, true) - ; - if(settings.animateChildren) { - if($.fn.transition !== undefined && $module.transition('is supported')) { - $openContents - .children() - .transition({ - animation : 'fade out', - useFailSafe : true, - debug : settings.debug, - verbose : settings.verbose, - duration : settings.duration - }) - ; - } - else { - $openContents - .children() - .stop(true, true) - .animate({ - opacity: 0 - }, settings.duration, module.resetOpacity) - ; - } - } - $openContents - .slideUp(settings.duration , settings.easing, function() { - $(this).removeClass(className.active); - module.reset.display.call(this); - }) - ; - } - }, - - reset: { - - display: function() { - module.verbose('Removing inline display from element', this); - $(this).css('display', ''); - if( $(this).attr('style') === '') { - $(this) - .attr('style', '') - .removeAttr('style') - ; - } - }, - - opacity: function() { - module.verbose('Removing inline opacity from element', this); - $(this).css('opacity', ''); - if( $(this).attr('style') === '') { - $(this) - .attr('style', '') - .removeAttr('style') - ; - } - }, - - }, - - setting: function(name, value) { - module.debug('Changing setting', name, value); - if( $.isPlainObject(name) ) { - $.extend(true, settings, name); - } - else if(value !== undefined) { - if($.isPlainObject(settings[name])) { - $.extend(true, settings[name], value); - } - else { - settings[name] = value; - } - } - else { - return settings[name]; - } - }, - internal: function(name, value) { - module.debug('Changing internal', name, value); - if(value !== undefined) { - if( $.isPlainObject(name) ) { - $.extend(true, module, name); - } - else { - module[name] = value; - } - } - else { - return module[name]; - } - }, - debug: function() { - if(!settings.silent && settings.debug) { - if(settings.performance) { - module.performance.log(arguments); - } - else { - module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); - module.debug.apply(console, arguments); - } - } - }, - verbose: function() { - if(!settings.silent && settings.verbose && settings.debug) { - if(settings.performance) { - module.performance.log(arguments); - } - else { - module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); - module.verbose.apply(console, arguments); - } - } - }, - error: function() { - if(!settings.silent) { - module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); - module.error.apply(console, arguments); - } - }, - performance: { - log: function(message) { - var - currentTime, - executionTime, - previousTime - ; - if(settings.performance) { - currentTime = new Date().getTime(); - previousTime = time || currentTime; - executionTime = currentTime - previousTime; - time = currentTime; - performance.push({ - 'Name' : message[0], - 'Arguments' : [].slice.call(message, 1) || '', - 'Element' : element, - 'Execution Time' : executionTime - }); - } - clearTimeout(module.performance.timer); - module.performance.timer = setTimeout(module.performance.display, 500); - }, - display: function() { - var - title = settings.name + ':', - totalTime = 0 - ; - time = false; - clearTimeout(module.performance.timer); - $.each(performance, function(index, data) { - totalTime += data['Execution Time']; - }); - title += ' ' + totalTime + 'ms'; - if(moduleSelector) { - title += ' \'' + moduleSelector + '\''; - } - if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { - console.groupCollapsed(title); - if(console.table) { - console.table(performance); - } - else { - $.each(performance, function(index, data) { - console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); - }); - } - console.groupEnd(); - } - performance = []; - } - }, - invoke: function(query, passedArguments, context) { - var - object = instance, - maxDepth, - found, - response - ; - passedArguments = passedArguments || queryArguments; - context = element || context; - if(typeof query == 'string' && object !== undefined) { - query = query.split(/[\. ]/); - maxDepth = query.length - 1; - $.each(query, function(depth, value) { - var camelCaseValue = (depth != maxDepth) - ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) - : query - ; - if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { - object = object[camelCaseValue]; - } - else if( object[camelCaseValue] !== undefined ) { - found = object[camelCaseValue]; - return false; - } - else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { - object = object[value]; - } - else if( object[value] !== undefined ) { - found = object[value]; - return false; - } - else { - module.error(error.method, query); - return false; - } - }); - } - if ( $.isFunction( found ) ) { - response = found.apply(context, passedArguments); - } - else if(found !== undefined) { - response = found; - } - if($.isArray(returnedValue)) { - returnedValue.push(response); - } - else if(returnedValue !== undefined) { - returnedValue = [returnedValue, response]; - } - else if(response !== undefined) { - returnedValue = response; - } - return found; - } - }; - if(methodInvoked) { - if(instance === undefined) { - module.initialize(); - } - module.invoke(query); - } - else { - if(instance !== undefined) { - instance.invoke('destroy'); - } - module.initialize(); - } - }) - ; - return (returnedValue !== undefined) - ? returnedValue - : this - ; -}; - -$.fn.accordion.settings = { - - name : 'Accordion', - namespace : 'accordion', - - silent : false, - debug : false, - verbose : false, - performance : true, - - on : 'click', // event on title that opens accordion - - observeChanges : true, // whether accordion should automatically refresh on DOM insertion - - exclusive : true, // whether a single accordion content panel should be open at once - collapsible : true, // whether accordion content can be closed - closeNested : false, // whether nested content should be closed when a panel is closed - animateChildren : true, // whether children opacity should be animated - - duration : 350, // duration of animation - easing : 'easeOutQuad', // easing equation for animation - - onOpening : function(){}, // callback before open animation - onClosing : function(){}, // callback before closing animation - onChanging : function(){}, // callback before closing or opening animation - - onOpen : function(){}, // callback after open animation - onClose : function(){}, // callback after closing animation - onChange : function(){}, // callback after closing or opening animation - - error: { - method : 'The method you called is not defined' - }, - - className : { - active : 'active', - animating : 'animating' - }, - - selector : { - accordion : '.accordion', - title : '.title', - trigger : '.title', - content : '.content' - } - -}; - -// Adds easing -$.extend( $.easing, { - easeOutQuad: function (x, t, b, c, d) { - return -c *(t/=d)*(t-2) + b; - } -}); - -})( jQuery, window, document ); - diff --git a/static/semantic/components/accordion.min.css b/static/semantic/components/accordion.min.css deleted file mode 100644 index a3fafa02d..000000000 --- a/static/semantic/components/accordion.min.css +++ /dev/null @@ -1,9 +0,0 @@ -/*! - * # Semantic UI 2.4.0 - Accordion - * http://github.com/semantic-org/semantic-ui/ - * - * - * Released under the MIT license - * http://opensource.org/licenses/MIT - * - */.ui.accordion,.ui.accordion .accordion{max-width:100%}.ui.accordion .accordion{margin:1em 0 0;padding:0}.ui.accordion .accordion .title,.ui.accordion .title{cursor:pointer}.ui.accordion .title:not(.ui){padding:.5em 0;font-family:Lato,'Helvetica Neue',Arial,Helvetica,sans-serif;font-size:1em;color:rgba(0,0,0,.87)}.ui.accordion .accordion .title~.content,.ui.accordion .title~.content{display:none}.ui.accordion:not(.styled) .accordion .title~.content:not(.ui),.ui.accordion:not(.styled) .title~.content:not(.ui){margin:'';padding:.5em 0 1em}.ui.accordion:not(.styled) .title~.content:not(.ui):last-child{padding-bottom:0}.ui.accordion .accordion .title .dropdown.icon,.ui.accordion .title .dropdown.icon{display:inline-block;float:none;opacity:1;width:1.25em;height:1em;margin:0 .25rem 0 0;padding:0;font-size:1em;-webkit-transition:opacity .1s ease,-webkit-transform .1s ease;transition:opacity .1s ease,-webkit-transform .1s ease;transition:transform .1s ease,opacity .1s ease;transition:transform .1s ease,opacity .1s ease,-webkit-transform .1s ease;vertical-align:baseline;-webkit-transform:none;transform:none}.ui.accordion.menu .item .title{display:block;padding:0}.ui.accordion.menu .item .title>.dropdown.icon{float:right;margin:.21425em 0 0 1em;-webkit-transform:rotate(180deg);transform:rotate(180deg)}.ui.accordion .ui.header .dropdown.icon{font-size:1em;margin:0 .25rem 0 0}.ui.accordion .accordion .active.title .dropdown.icon,.ui.accordion .active.title .dropdown.icon{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.ui.accordion.menu .item .active.title>.dropdown.icon{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.ui.styled.accordion{width:600px}.ui.styled.accordion,.ui.styled.accordion .accordion{border-radius:.28571429rem;background:#fff;-webkit-box-shadow:0 1px 2px 0 rgba(34,36,38,.15),0 0 0 1px rgba(34,36,38,.15);box-shadow:0 1px 2px 0 rgba(34,36,38,.15),0 0 0 1px rgba(34,36,38,.15)}.ui.styled.accordion .accordion .title,.ui.styled.accordion .title{margin:0;padding:.75em 1em;color:rgba(0,0,0,.4);font-weight:700;border-top:1px solid rgba(34,36,38,.15);-webkit-transition:background .1s ease,color .1s ease;transition:background .1s ease,color .1s ease}.ui.styled.accordion .accordion .title:first-child,.ui.styled.accordion>.title:first-child{border-top:none}.ui.styled.accordion .accordion .content,.ui.styled.accordion .content{margin:0;padding:.5em 1em 1.5em}.ui.styled.accordion .accordion .content{padding:0;padding:.5em 1em 1.5em}.ui.styled.accordion .accordion .active.title,.ui.styled.accordion .accordion .title:hover,.ui.styled.accordion .active.title,.ui.styled.accordion .title:hover{background:0 0;color:rgba(0,0,0,.87)}.ui.styled.accordion .accordion .active.title,.ui.styled.accordion .accordion .title:hover{background:0 0;color:rgba(0,0,0,.87)}.ui.styled.accordion .active.title{background:0 0;color:rgba(0,0,0,.95)}.ui.styled.accordion .accordion .active.title{background:0 0;color:rgba(0,0,0,.95)}.ui.accordion .accordion .active.content,.ui.accordion .active.content{display:block}.ui.fluid.accordion,.ui.fluid.accordion .accordion{width:100%}.ui.inverted.accordion .title:not(.ui){color:rgba(255,255,255,.9)}@font-face{font-family:Accordion;src:url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMggjB5AAAAC8AAAAYGNtYXAPfOIKAAABHAAAAExnYXNwAAAAEAAAAWgAAAAIZ2x5Zryj6HgAAAFwAAAAyGhlYWT/0IhHAAACOAAAADZoaGVhApkB5wAAAnAAAAAkaG10eAJuABIAAAKUAAAAGGxvY2EAjABWAAACrAAAAA5tYXhwAAgAFgAAArwAAAAgbmFtZfC1n04AAALcAAABPHBvc3QAAwAAAAAEGAAAACAAAwIAAZAABQAAAUwBZgAAAEcBTAFmAAAA9QAZAIQAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADw2gHg/+D/4AHgACAAAAABAAAAAAAAAAAAAAAgAAAAAAACAAAAAwAAABQAAwABAAAAFAAEADgAAAAKAAgAAgACAAEAIPDa//3//wAAAAAAIPDZ//3//wAB/+MPKwADAAEAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQASAEkAtwFuABMAADc0PwE2FzYXFh0BFAcGJwYvASY1EgaABQgHBQYGBQcIBYAG2wcGfwcBAQcECf8IBAcBAQd/BgYAAAAAAQAAAEkApQFuABMAADcRNDc2MzIfARYVFA8BBiMiJyY1AAUGBwgFgAYGgAUIBwYFWwEACAUGBoAFCAcFgAYGBQcAAAABAAAAAQAAqWYls18PPPUACwIAAAAAAM/9o+4AAAAAz/2j7gAAAAAAtwFuAAAACAACAAAAAAAAAAEAAAHg/+AAAAIAAAAAAAC3AAEAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAQAAAAC3ABIAtwAAAAAAAAAKABQAHgBCAGQAAAABAAAABgAUAAEAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAADgCuAAEAAAAAAAEADAAAAAEAAAAAAAIADgBAAAEAAAAAAAMADAAiAAEAAAAAAAQADABOAAEAAAAAAAUAFgAMAAEAAAAAAAYABgAuAAEAAAAAAAoANABaAAMAAQQJAAEADAAAAAMAAQQJAAIADgBAAAMAAQQJAAMADAAiAAMAAQQJAAQADABOAAMAAQQJAAUAFgAMAAMAAQQJAAYADAA0AAMAAQQJAAoANABaAHIAYQB0AGkAbgBnAFYAZQByAHMAaQBvAG4AIAAxAC4AMAByAGEAdABpAG4AZ3JhdGluZwByAGEAdABpAG4AZwBSAGUAZwB1AGwAYQByAHIAYQB0AGkAbgBnAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format('truetype'),url(data:application/font-woff;charset=utf-8;base64,d09GRk9UVE8AAASwAAoAAAAABGgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABDRkYgAAAA9AAAAS0AAAEtFpovuE9TLzIAAAIkAAAAYAAAAGAIIweQY21hcAAAAoQAAABMAAAATA984gpnYXNwAAAC0AAAAAgAAAAIAAAAEGhlYWQAAALYAAAANgAAADb/0IhHaGhlYQAAAxAAAAAkAAAAJAKZAedobXR4AAADNAAAABgAAAAYAm4AEm1heHAAAANMAAAABgAAAAYABlAAbmFtZQAAA1QAAAE8AAABPPC1n05wb3N0AAAEkAAAACAAAAAgAAMAAAEABAQAAQEBB3JhdGluZwABAgABADr4HAL4GwP4GAQeCgAZU/+Lix4KABlT/4uLDAeLa/iU+HQFHQAAAHkPHQAAAH4RHQAAAAkdAAABJBIABwEBBw0PERQZHnJhdGluZ3JhdGluZ3UwdTF1MjB1RjBEOXVGMERBAAACAYkABAAGAQEEBwoNVp38lA78lA78lA77lA773Z33bxWLkI2Qj44I9xT3FAWOj5CNkIuQi4+JjoePiI2Gi4YIi/uUBYuGiYeHiIiHh4mGi4aLho2Ijwj7FPcUBYeOiY+LkAgO+92L5hWL95QFi5CNkI6Oj4+PjZCLkIuQiY6HCPcU+xQFj4iNhouGi4aJh4eICPsU+xQFiIeGiYaLhouHjYePiI6Jj4uQCA74lBT4lBWLDAoAAAAAAwIAAZAABQAAAUwBZgAAAEcBTAFmAAAA9QAZAIQAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADw2gHg/+D/4AHgACAAAAABAAAAAAAAAAAAAAAgAAAAAAACAAAAAwAAABQAAwABAAAAFAAEADgAAAAKAAgAAgACAAEAIPDa//3//wAAAAAAIPDZ//3//wAB/+MPKwADAAEAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAEAADfYOJZfDzz1AAsCAAAAAADP/aPuAAAAAM/9o+4AAAAAALcBbgAAAAgAAgAAAAAAAAABAAAB4P/gAAACAAAAAAAAtwABAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAEAAAAAtwASALcAAAAAUAAABgAAAAAADgCuAAEAAAAAAAEADAAAAAEAAAAAAAIADgBAAAEAAAAAAAMADAAiAAEAAAAAAAQADABOAAEAAAAAAAUAFgAMAAEAAAAAAAYABgAuAAEAAAAAAAoANABaAAMAAQQJAAEADAAAAAMAAQQJAAIADgBAAAMAAQQJAAMADAAiAAMAAQQJAAQADABOAAMAAQQJAAUAFgAMAAMAAQQJAAYADAA0AAMAAQQJAAoANABaAHIAYQB0AGkAbgBnAFYAZQByAHMAaQBvAG4AIAAxAC4AMAByAGEAdABpAG4AZ3JhdGluZwByAGEAdABpAG4AZwBSAGUAZwB1AGwAYQByAHIAYQB0AGkAbgBnAEYAbwBuAHQAIABnAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAEkAYwBvAE0AbwBvAG4ALgADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format('woff');font-weight:400;font-style:normal}.ui.accordion .accordion .title .dropdown.icon,.ui.accordion .title .dropdown.icon{font-family:Accordion;line-height:1;-webkit-backface-visibility:hidden;backface-visibility:hidden;font-weight:400;font-style:normal;text-align:center}.ui.accordion .accordion .title .dropdown.icon:before,.ui.accordion .title .dropdown.icon:before{content:'\f0da'} \ No newline at end of file diff --git a/static/semantic/components/accordion.min.js b/static/semantic/components/accordion.min.js deleted file mode 100644 index 391e5133d..000000000 --- a/static/semantic/components/accordion.min.js +++ /dev/null @@ -1 +0,0 @@ -!function(e,n,t,i){"use strict";n=void 0!==n&&n.Math==Math?n:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")(),e.fn.accordion=function(t){var o,a=e(this),s=(new Date).getTime(),l=[],r=arguments[0],c="string"==typeof r,u=[].slice.call(arguments,1);n.requestAnimationFrame||n.mozRequestAnimationFrame||n.webkitRequestAnimationFrame||n.msRequestAnimationFrame;return a.each(function(){var d,g,f=e.isPlainObject(t)?e.extend(!0,{},e.fn.accordion.settings,t):e.extend({},e.fn.accordion.settings),m=f.className,p=f.namespace,h=f.selector,v=f.error,b="."+p,y="module-"+p,C=a.selector||"",O=e(this),x=O.find(h.title),F=O.find(h.content),A=this,q=O.data(y);g={initialize:function(){g.debug("Initializing",O),g.bind.events(),f.observeChanges&&g.observeChanges(),g.instantiate()},instantiate:function(){q=g,O.data(y,g)},destroy:function(){g.debug("Destroying previous instance",O),O.off(b).removeData(y)},refresh:function(){x=O.find(h.title),F=O.find(h.content)},observeChanges:function(){"MutationObserver"in n&&((d=new MutationObserver(function(e){g.debug("DOM tree modified, updating selector cache"),g.refresh()})).observe(A,{childList:!0,subtree:!0}),g.debug("Setting up mutation observer",d))},bind:{events:function(){g.debug("Binding delegated events"),O.on(f.on+b,h.trigger,g.event.click)}},event:{click:function(){g.toggle.call(this)}},toggle:function(n){var t=n!==i?"number"==typeof n?x.eq(n):e(n).closest(h.title):e(this).closest(h.title),o=t.next(F),a=o.hasClass(m.animating),s=o.hasClass(m.active),l=s&&!a,r=!s&&a;g.debug("Toggling visibility of content",t),l||r?f.collapsible?g.close.call(t):g.debug("Cannot close accordion content collapsing is disabled"):g.open.call(t)},open:function(n){var t=n!==i?"number"==typeof n?x.eq(n):e(n).closest(h.title):e(this).closest(h.title),o=t.next(F),a=o.hasClass(m.animating);o.hasClass(m.active)||a?g.debug("Accordion already open, skipping",o):(g.debug("Opening accordion content",t),f.onOpening.call(o),f.onChanging.call(o),f.exclusive&&g.closeOthers.call(t),t.addClass(m.active),o.stop(!0,!0).addClass(m.animating),f.animateChildren&&(e.fn.transition!==i&&O.transition("is supported")?o.children().transition({animation:"fade in",queue:!1,useFailSafe:!0,debug:f.debug,verbose:f.verbose,duration:f.duration}):o.children().stop(!0,!0).animate({opacity:1},f.duration,g.resetOpacity)),o.slideDown(f.duration,f.easing,function(){o.removeClass(m.animating).addClass(m.active),g.reset.display.call(this),f.onOpen.call(this),f.onChange.call(this)}))},close:function(n){var t=n!==i?"number"==typeof n?x.eq(n):e(n).closest(h.title):e(this).closest(h.title),o=t.next(F),a=o.hasClass(m.animating),s=o.hasClass(m.active);!s&&!(!s&&a)||s&&a||(g.debug("Closing accordion content",o),f.onClosing.call(o),f.onChanging.call(o),t.removeClass(m.active),o.stop(!0,!0).addClass(m.animating),f.animateChildren&&(e.fn.transition!==i&&O.transition("is supported")?o.children().transition({animation:"fade out",queue:!1,useFailSafe:!0,debug:f.debug,verbose:f.verbose,duration:f.duration}):o.children().stop(!0,!0).animate({opacity:0},f.duration,g.resetOpacity)),o.slideUp(f.duration,f.easing,function(){o.removeClass(m.animating).removeClass(m.active),g.reset.display.call(this),f.onClose.call(this),f.onChange.call(this)}))},closeOthers:function(n){var t,o,a,s=n!==i?x.eq(n):e(this).closest(h.title),l=s.parents(h.content).prev(h.title),r=s.closest(h.accordion),c=h.title+"."+m.active+":visible",u=h.content+"."+m.active+":visible";f.closeNested?a=(t=r.find(c).not(l)).next(F):(t=r.find(c).not(l),o=r.find(u).find(c).not(l),a=(t=t.not(o)).next(F)),t.length>0&&(g.debug("Exclusive enabled, closing other content",t),t.removeClass(m.active),a.removeClass(m.animating).stop(!0,!0),f.animateChildren&&(e.fn.transition!==i&&O.transition("is supported")?a.children().transition({animation:"fade out",useFailSafe:!0,debug:f.debug,verbose:f.verbose,duration:f.duration}):a.children().stop(!0,!0).animate({opacity:0},f.duration,g.resetOpacity)),a.slideUp(f.duration,f.easing,function(){e(this).removeClass(m.active),g.reset.display.call(this)}))},reset:{display:function(){g.verbose("Removing inline display from element",this),e(this).css("display",""),""===e(this).attr("style")&&e(this).attr("style","").removeAttr("style")},opacity:function(){g.verbose("Removing inline opacity from element",this),e(this).css("opacity",""),""===e(this).attr("style")&&e(this).attr("style","").removeAttr("style")}},setting:function(n,t){if(g.debug("Changing setting",n,t),e.isPlainObject(n))e.extend(!0,f,n);else{if(t===i)return f[n];e.isPlainObject(f[n])?e.extend(!0,f[n],t):f[n]=t}},internal:function(n,t){if(g.debug("Changing internal",n,t),t===i)return g[n];e.isPlainObject(n)?e.extend(!0,g,n):g[n]=t},debug:function(){!f.silent&&f.debug&&(f.performance?g.performance.log(arguments):(g.debug=Function.prototype.bind.call(console.info,console,f.name+":"),g.debug.apply(console,arguments)))},verbose:function(){!f.silent&&f.verbose&&f.debug&&(f.performance?g.performance.log(arguments):(g.verbose=Function.prototype.bind.call(console.info,console,f.name+":"),g.verbose.apply(console,arguments)))},error:function(){f.silent||(g.error=Function.prototype.bind.call(console.error,console,f.name+":"),g.error.apply(console,arguments))},performance:{log:function(e){var n,t;f.performance&&(t=(n=(new Date).getTime())-(s||n),s=n,l.push({Name:e[0],Arguments:[].slice.call(e,1)||"",Element:A,"Execution Time":t})),clearTimeout(g.performance.timer),g.performance.timer=setTimeout(g.performance.display,500)},display:function(){var n=f.name+":",t=0;s=!1,clearTimeout(g.performance.timer),e.each(l,function(e,n){t+=n["Execution Time"]}),n+=" "+t+"ms",C&&(n+=" '"+C+"'"),(console.group!==i||console.table!==i)&&l.length>0&&(console.groupCollapsed(n),console.table?console.table(l):e.each(l,function(e,n){console.log(n.Name+": "+n["Execution Time"]+"ms")}),console.groupEnd()),l=[]}},invoke:function(n,t,a){var s,l,r,c=q;return t=t||u,a=A||a,"string"==typeof n&&c!==i&&(n=n.split(/[\. ]/),s=n.length-1,e.each(n,function(t,o){var a=t!=s?o+n[t+1].charAt(0).toUpperCase()+n[t+1].slice(1):n;if(e.isPlainObject(c[a])&&t!=s)c=c[a];else{if(c[a]!==i)return l=c[a],!1;if(!e.isPlainObject(c[o])||t==s)return c[o]!==i?(l=c[o],!1):(g.error(v.method,n),!1);c=c[o]}})),e.isFunction(l)?r=l.apply(a,t):l!==i&&(r=l),e.isArray(o)?o.push(r):o!==i?o=[o,r]:r!==i&&(o=r),l}},c?(q===i&&g.initialize(),g.invoke(r)):(q!==i&&q.invoke("destroy"),g.initialize())}),o!==i?o:this},e.fn.accordion.settings={name:"Accordion",namespace:"accordion",silent:!1,debug:!1,verbose:!1,performance:!0,on:"click",observeChanges:!0,exclusive:!0,collapsible:!0,closeNested:!1,animateChildren:!0,duration:350,easing:"easeOutQuad",onOpening:function(){},onClosing:function(){},onChanging:function(){},onOpen:function(){},onClose:function(){},onChange:function(){},error:{method:"The method you called is not defined"},className:{active:"active",animating:"animating"},selector:{accordion:".accordion",title:".title",trigger:".title",content:".content"}},e.extend(e.easing,{easeOutQuad:function(e,n,t,i,o){return-i*(n/=o)*(n-2)+t}})}(jQuery,window,document); \ No newline at end of file diff --git a/static/semantic/components/ad.css b/static/semantic/components/ad.css deleted file mode 100644 index 6666921d0..000000000 --- a/static/semantic/components/ad.css +++ /dev/null @@ -1,275 +0,0 @@ -/*! - * # Semantic UI 2.4.0 - Ad - * http://github.com/semantic-org/semantic-ui/ - * - * - * Copyright 2013 Contributors - * Released under the MIT license - * http://opensource.org/licenses/MIT - * - */ - - -/******************************* - Advertisement -*******************************/ - -.ui.ad { - display: block; - overflow: hidden; - margin: 1em 0em; -} -.ui.ad:first-child { - margin: 0em; -} -.ui.ad:last-child { - margin: 0em; -} -.ui.ad iframe { - margin: 0em; - padding: 0em; - border: none; - overflow: hidden; -} - -/*-------------- - Common ----------------*/ - - -/* Leaderboard */ -.ui.leaderboard.ad { - width: 728px; - height: 90px; -} - -/* Medium Rectangle */ -.ui[class*="medium rectangle"].ad { - width: 300px; - height: 250px; -} - -/* Large Rectangle */ -.ui[class*="large rectangle"].ad { - width: 336px; - height: 280px; -} - -/* Half Page */ -.ui[class*="half page"].ad { - width: 300px; - height: 600px; -} - -/*-------------- - Square ----------------*/ - - -/* Square */ -.ui.square.ad { - width: 250px; - height: 250px; -} - -/* Small Square */ -.ui[class*="small square"].ad { - width: 200px; - height: 200px; -} - -/*-------------- - Rectangle ----------------*/ - - -/* Small Rectangle */ -.ui[class*="small rectangle"].ad { - width: 180px; - height: 150px; -} - -/* Vertical Rectangle */ -.ui[class*="vertical rectangle"].ad { - width: 240px; - height: 400px; -} - -/*-------------- - Button ----------------*/ - -.ui.button.ad { - width: 120px; - height: 90px; -} -.ui[class*="square button"].ad { - width: 125px; - height: 125px; -} -.ui[class*="small button"].ad { - width: 120px; - height: 60px; -} - -/*-------------- - Skyscrapers ----------------*/ - - -/* Skyscraper */ -.ui.skyscraper.ad { - width: 120px; - height: 600px; -} - -/* Wide Skyscraper */ -.ui[class*="wide skyscraper"].ad { - width: 160px; -} - -/*-------------- - Banners ----------------*/ - - -/* Banner */ -.ui.banner.ad { - width: 468px; - height: 60px; -} - -/* Vertical Banner */ -.ui[class*="vertical banner"].ad { - width: 120px; - height: 240px; -} - -/* Top Banner */ -.ui[class*="top banner"].ad { - width: 930px; - height: 180px; -} - -/* Half Banner */ -.ui[class*="half banner"].ad { - width: 234px; - height: 60px; -} - -/*-------------- - Boards ----------------*/ - - -/* Leaderboard */ -.ui[class*="large leaderboard"].ad { - width: 970px; - height: 90px; -} - -/* Billboard */ -.ui.billboard.ad { - width: 970px; - height: 250px; -} - -/*-------------- - Panorama ----------------*/ - - -/* Panorama */ -.ui.panorama.ad { - width: 980px; - height: 120px; -} - -/*-------------- - Netboard ----------------*/ - - -/* Netboard */ -.ui.netboard.ad { - width: 580px; - height: 400px; -} - -/*-------------- - Mobile ----------------*/ - - -/* Large Mobile Banner */ -.ui[class*="large mobile banner"].ad { - width: 320px; - height: 100px; -} - -/* Mobile Leaderboard */ -.ui[class*="mobile leaderboard"].ad { - width: 320px; - height: 50px; -} - - -/******************************* - Types -*******************************/ - - -/* Mobile Sizes */ -.ui.mobile.ad { - display: none; -} -@media only screen and (max-width: 767px) { - .ui.mobile.ad { - display: block; - } -} - - -/******************************* - Variations -*******************************/ - -.ui.centered.ad { - margin-left: auto; - margin-right: auto; -} -.ui.test.ad { - position: relative; - background: #545454; -} -.ui.test.ad:after { - position: absolute; - top: 50%; - left: 50%; - width: 100%; - text-align: center; - -webkit-transform: translateX(-50%) translateY(-50%); - transform: translateX(-50%) translateY(-50%); - content: 'Ad'; - color: #FFFFFF; - font-size: 1em; - font-weight: bold; -} -.ui.mobile.test.ad:after { - font-size: 0.85714286em; -} -.ui.test.ad[data-text]:after { - content: attr(data-text); -} - - -/******************************* - Theme Overrides -*******************************/ - - - -/******************************* - User Variable Overrides -*******************************/ - diff --git a/static/semantic/components/ad.min.css b/static/semantic/components/ad.min.css deleted file mode 100644 index 8fbed8569..000000000 --- a/static/semantic/components/ad.min.css +++ /dev/null @@ -1,10 +0,0 @@ -/*! - * # Semantic UI 2.4.0 - Ad - * http://github.com/semantic-org/semantic-ui/ - * - * - * Copyright 2013 Contributors - * Released under the MIT license - * http://opensource.org/licenses/MIT - * - */.ui.ad{display:block;overflow:hidden;margin:1em 0}.ui.ad:first-child{margin:0}.ui.ad:last-child{margin:0}.ui.ad iframe{margin:0;padding:0;border:none;overflow:hidden}.ui.leaderboard.ad{width:728px;height:90px}.ui[class*="medium rectangle"].ad{width:300px;height:250px}.ui[class*="large rectangle"].ad{width:336px;height:280px}.ui[class*="half page"].ad{width:300px;height:600px}.ui.square.ad{width:250px;height:250px}.ui[class*="small square"].ad{width:200px;height:200px}.ui[class*="small rectangle"].ad{width:180px;height:150px}.ui[class*="vertical rectangle"].ad{width:240px;height:400px}.ui.button.ad{width:120px;height:90px}.ui[class*="square button"].ad{width:125px;height:125px}.ui[class*="small button"].ad{width:120px;height:60px}.ui.skyscraper.ad{width:120px;height:600px}.ui[class*="wide skyscraper"].ad{width:160px}.ui.banner.ad{width:468px;height:60px}.ui[class*="vertical banner"].ad{width:120px;height:240px}.ui[class*="top banner"].ad{width:930px;height:180px}.ui[class*="half banner"].ad{width:234px;height:60px}.ui[class*="large leaderboard"].ad{width:970px;height:90px}.ui.billboard.ad{width:970px;height:250px}.ui.panorama.ad{width:980px;height:120px}.ui.netboard.ad{width:580px;height:400px}.ui[class*="large mobile banner"].ad{width:320px;height:100px}.ui[class*="mobile leaderboard"].ad{width:320px;height:50px}.ui.mobile.ad{display:none}@media only screen and (max-width:767px){.ui.mobile.ad{display:block}}.ui.centered.ad{margin-left:auto;margin-right:auto}.ui.test.ad{position:relative;background:#545454}.ui.test.ad:after{position:absolute;top:50%;left:50%;width:100%;text-align:center;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);content:'Ad';color:#fff;font-size:1em;font-weight:700}.ui.mobile.test.ad:after{font-size:.85714286em}.ui.test.ad[data-text]:after{content:attr(data-text)} \ No newline at end of file diff --git a/static/semantic/components/api.js b/static/semantic/components/api.js deleted file mode 100644 index 714b3430e..000000000 --- a/static/semantic/components/api.js +++ /dev/null @@ -1,1167 +0,0 @@ -/*! - * # Semantic UI 2.4.0 - API - * http://github.com/semantic-org/semantic-ui/ - * - * - * Released under the MIT license - * http://opensource.org/licenses/MIT - * - */ - -;(function ($, window, document, undefined) { - -'use strict'; - -var - window = (typeof window != 'undefined' && window.Math == Math) - ? window - : (typeof self != 'undefined' && self.Math == Math) - ? self - : Function('return this')() -; - -$.api = $.fn.api = function(parameters) { - - var - // use window context if none specified - $allModules = $.isFunction(this) - ? $(window) - : $(this), - moduleSelector = $allModules.selector || '', - time = new Date().getTime(), - performance = [], - - query = arguments[0], - methodInvoked = (typeof query == 'string'), - queryArguments = [].slice.call(arguments, 1), - - returnedValue - ; - - $allModules - .each(function() { - var - settings = ( $.isPlainObject(parameters) ) - ? $.extend(true, {}, $.fn.api.settings, parameters) - : $.extend({}, $.fn.api.settings), - - // internal aliases - namespace = settings.namespace, - metadata = settings.metadata, - selector = settings.selector, - error = settings.error, - className = settings.className, - - // define namespaces for modules - eventNamespace = '.' + namespace, - moduleNamespace = 'module-' + namespace, - - // element that creates request - $module = $(this), - $form = $module.closest(selector.form), - - // context used for state - $context = (settings.stateContext) - ? $(settings.stateContext) - : $module, - - // request details - ajaxSettings, - requestSettings, - url, - data, - requestStartTime, - - // standard module - element = this, - context = $context[0], - instance = $module.data(moduleNamespace), - module - ; - - module = { - - initialize: function() { - if(!methodInvoked) { - module.bind.events(); - } - module.instantiate(); - }, - - instantiate: function() { - module.verbose('Storing instance of module', module); - instance = module; - $module - .data(moduleNamespace, instance) - ; - }, - - destroy: function() { - module.verbose('Destroying previous module for', element); - $module - .removeData(moduleNamespace) - .off(eventNamespace) - ; - }, - - bind: { - events: function() { - var - triggerEvent = module.get.event() - ; - if( triggerEvent ) { - module.verbose('Attaching API events to element', triggerEvent); - $module - .on(triggerEvent + eventNamespace, module.event.trigger) - ; - } - else if(settings.on == 'now') { - module.debug('Querying API endpoint immediately'); - module.query(); - } - } - }, - - decode: { - json: function(response) { - if(response !== undefined && typeof response == 'string') { - try { - response = JSON.parse(response); - } - catch(e) { - // isnt json string - } - } - return response; - } - }, - - read: { - cachedResponse: function(url) { - var - response - ; - if(window.Storage === undefined) { - module.error(error.noStorage); - return; - } - response = sessionStorage.getItem(url); - module.debug('Using cached response', url, response); - response = module.decode.json(response); - return response; - } - }, - write: { - cachedResponse: function(url, response) { - if(response && response === '') { - module.debug('Response empty, not caching', response); - return; - } - if(window.Storage === undefined) { - module.error(error.noStorage); - return; - } - if( $.isPlainObject(response) ) { - response = JSON.stringify(response); - } - sessionStorage.setItem(url, response); - module.verbose('Storing cached response for url', url, response); - } - }, - - query: function() { - - if(module.is.disabled()) { - module.debug('Element is disabled API request aborted'); - return; - } - - if(module.is.loading()) { - if(settings.interruptRequests) { - module.debug('Interrupting previous request'); - module.abort(); - } - else { - module.debug('Cancelling request, previous request is still pending'); - return; - } - } - - // pass element metadata to url (value, text) - if(settings.defaultData) { - $.extend(true, settings.urlData, module.get.defaultData()); - } - - // Add form content - if(settings.serializeForm) { - settings.data = module.add.formData(settings.data); - } - - // call beforesend and get any settings changes - requestSettings = module.get.settings(); - - // check if before send cancelled request - if(requestSettings === false) { - module.cancelled = true; - module.error(error.beforeSend); - return; - } - else { - module.cancelled = false; - } - - // get url - url = module.get.templatedURL(); - - if(!url && !module.is.mocked()) { - module.error(error.missingURL); - return; - } - - // replace variables - url = module.add.urlData( url ); - // missing url parameters - if( !url && !module.is.mocked()) { - return; - } - - requestSettings.url = settings.base + url; - - // look for jQuery ajax parameters in settings - ajaxSettings = $.extend(true, {}, settings, { - type : settings.method || settings.type, - data : data, - url : settings.base + url, - beforeSend : settings.beforeXHR, - success : function() {}, - failure : function() {}, - complete : function() {} - }); - - module.debug('Querying URL', ajaxSettings.url); - module.verbose('Using AJAX settings', ajaxSettings); - if(settings.cache === 'local' && module.read.cachedResponse(url)) { - module.debug('Response returned from local cache'); - module.request = module.create.request(); - module.request.resolveWith(context, [ module.read.cachedResponse(url) ]); - return; - } - - if( !settings.throttle ) { - module.debug('Sending request', data, ajaxSettings.method); - module.send.request(); - } - else { - if(!settings.throttleFirstRequest && !module.timer) { - module.debug('Sending request', data, ajaxSettings.method); - module.send.request(); - module.timer = setTimeout(function(){}, settings.throttle); - } - else { - module.debug('Throttling request', settings.throttle); - clearTimeout(module.timer); - module.timer = setTimeout(function() { - if(module.timer) { - delete module.timer; - } - module.debug('Sending throttled request', data, ajaxSettings.method); - module.send.request(); - }, settings.throttle); - } - } - - }, - - should: { - removeError: function() { - return ( settings.hideError === true || (settings.hideError === 'auto' && !module.is.form()) ); - } - }, - - is: { - disabled: function() { - return ($module.filter(selector.disabled).length > 0); - }, - expectingJSON: function() { - return settings.dataType === 'json' || settings.dataType === 'jsonp'; - }, - form: function() { - return $module.is('form') || $context.is('form'); - }, - mocked: function() { - return (settings.mockResponse || settings.mockResponseAsync || settings.response || settings.responseAsync); - }, - input: function() { - return $module.is('input'); - }, - loading: function() { - return (module.request) - ? (module.request.state() == 'pending') - : false - ; - }, - abortedRequest: function(xhr) { - if(xhr && xhr.readyState !== undefined && xhr.readyState === 0) { - module.verbose('XHR request determined to be aborted'); - return true; - } - else { - module.verbose('XHR request was not aborted'); - return false; - } - }, - validResponse: function(response) { - if( (!module.is.expectingJSON()) || !$.isFunction(settings.successTest) ) { - module.verbose('Response is not JSON, skipping validation', settings.successTest, response); - return true; - } - module.debug('Checking JSON returned success', settings.successTest, response); - if( settings.successTest(response) ) { - module.debug('Response passed success test', response); - return true; - } - else { - module.debug('Response failed success test', response); - return false; - } - } - }, - - was: { - cancelled: function() { - return (module.cancelled || false); - }, - succesful: function() { - return (module.request && module.request.state() == 'resolved'); - }, - failure: function() { - return (module.request && module.request.state() == 'rejected'); - }, - complete: function() { - return (module.request && (module.request.state() == 'resolved' || module.request.state() == 'rejected') ); - } - }, - - add: { - urlData: function(url, urlData) { - var - requiredVariables, - optionalVariables - ; - if(url) { - requiredVariables = url.match(settings.regExp.required); - optionalVariables = url.match(settings.regExp.optional); - urlData = urlData || settings.urlData; - if(requiredVariables) { - module.debug('Looking for required URL variables', requiredVariables); - $.each(requiredVariables, function(index, templatedString) { - var - // allow legacy {$var} style - variable = (templatedString.indexOf('$') !== -1) - ? templatedString.substr(2, templatedString.length - 3) - : templatedString.substr(1, templatedString.length - 2), - value = ($.isPlainObject(urlData) && urlData[variable] !== undefined) - ? urlData[variable] - : ($module.data(variable) !== undefined) - ? $module.data(variable) - : ($context.data(variable) !== undefined) - ? $context.data(variable) - : urlData[variable] - ; - // remove value - if(value === undefined) { - module.error(error.requiredParameter, variable, url); - url = false; - return false; - } - else { - module.verbose('Found required variable', variable, value); - value = (settings.encodeParameters) - ? module.get.urlEncodedValue(value) - : value - ; - url = url.replace(templatedString, value); - } - }); - } - if(optionalVariables) { - module.debug('Looking for optional URL variables', requiredVariables); - $.each(optionalVariables, function(index, templatedString) { - var - // allow legacy {/$var} style - variable = (templatedString.indexOf('$') !== -1) - ? templatedString.substr(3, templatedString.length - 4) - : templatedString.substr(2, templatedString.length - 3), - value = ($.isPlainObject(urlData) && urlData[variable] !== undefined) - ? urlData[variable] - : ($module.data(variable) !== undefined) - ? $module.data(variable) - : ($context.data(variable) !== undefined) - ? $context.data(variable) - : urlData[variable] - ; - // optional replacement - if(value !== undefined) { - module.verbose('Optional variable Found', variable, value); - url = url.replace(templatedString, value); - } - else { - module.verbose('Optional variable not found', variable); - // remove preceding slash if set - if(url.indexOf('/' + templatedString) !== -1) { - url = url.replace('/' + templatedString, ''); - } - else { - url = url.replace(templatedString, ''); - } - } - }); - } - } - return url; - }, - formData: function(data) { - var - canSerialize = ($.fn.serializeObject !== undefined), - formData = (canSerialize) - ? $form.serializeObject() - : $form.serialize(), - hasOtherData - ; - data = data || settings.data; - hasOtherData = $.isPlainObject(data); - - if(hasOtherData) { - if(canSerialize) { - module.debug('Extending existing data with form data', data, formData); - data = $.extend(true, {}, data, formData); - } - else { - module.error(error.missingSerialize); - module.debug('Cant extend data. Replacing data with form data', data, formData); - data = formData; - } - } - else { - module.debug('Adding form data', formData); - data = formData; - } - return data; - } - }, - - send: { - request: function() { - module.set.loading(); - module.request = module.create.request(); - if( module.is.mocked() ) { - module.mockedXHR = module.create.mockedXHR(); - } - else { - module.xhr = module.create.xhr(); - } - settings.onRequest.call(context, module.request, module.xhr); - } - }, - - event: { - trigger: function(event) { - module.query(); - if(event.type == 'submit' || event.type == 'click') { - event.preventDefault(); - } - }, - xhr: { - always: function() { - // nothing special - }, - done: function(response, textStatus, xhr) { - var - context = this, - elapsedTime = (new Date().getTime() - requestStartTime), - timeLeft = (settings.loadingDuration - elapsedTime), - translatedResponse = ( $.isFunction(settings.onResponse) ) - ? module.is.expectingJSON() - ? settings.onResponse.call(context, $.extend(true, {}, response)) - : settings.onResponse.call(context, response) - : false - ; - timeLeft = (timeLeft > 0) - ? timeLeft - : 0 - ; - if(translatedResponse) { - module.debug('Modified API response in onResponse callback', settings.onResponse, translatedResponse, response); - response = translatedResponse; - } - if(timeLeft > 0) { - module.debug('Response completed early delaying state change by', timeLeft); - } - setTimeout(function() { - if( module.is.validResponse(response) ) { - module.request.resolveWith(context, [response, xhr]); - } - else { - module.request.rejectWith(context, [xhr, 'invalid']); - } - }, timeLeft); - }, - fail: function(xhr, status, httpMessage) { - var - context = this, - elapsedTime = (new Date().getTime() - requestStartTime), - timeLeft = (settings.loadingDuration - elapsedTime) - ; - timeLeft = (timeLeft > 0) - ? timeLeft - : 0 - ; - if(timeLeft > 0) { - module.debug('Response completed early delaying state change by', timeLeft); - } - setTimeout(function() { - if( module.is.abortedRequest(xhr) ) { - module.request.rejectWith(context, [xhr, 'aborted', httpMessage]); - } - else { - module.request.rejectWith(context, [xhr, 'error', status, httpMessage]); - } - }, timeLeft); - } - }, - request: { - done: function(response, xhr) { - module.debug('Successful API Response', response); - if(settings.cache === 'local' && url) { - module.write.cachedResponse(url, response); - module.debug('Saving server response locally', module.cache); - } - settings.onSuccess.call(context, response, $module, xhr); - }, - complete: function(firstParameter, secondParameter) { - var - xhr, - response - ; - // have to guess callback parameters based on request success - if( module.was.succesful() ) { - response = firstParameter; - xhr = secondParameter; - } - else { - xhr = firstParameter; - response = module.get.responseFromXHR(xhr); - } - module.remove.loading(); - settings.onComplete.call(context, response, $module, xhr); - }, - fail: function(xhr, status, httpMessage) { - var - // pull response from xhr if available - response = module.get.responseFromXHR(xhr), - errorMessage = module.get.errorFromRequest(response, status, httpMessage) - ; - if(status == 'aborted') { - module.debug('XHR Aborted (Most likely caused by page navigation or CORS Policy)', status, httpMessage); - settings.onAbort.call(context, status, $module, xhr); - return true; - } - else if(status == 'invalid') { - module.debug('JSON did not pass success test. A server-side error has most likely occurred', response); - } - else if(status == 'error') { - if(xhr !== undefined) { - module.debug('XHR produced a server error', status, httpMessage); - // make sure we have an error to display to console - if( xhr.status != 200 && httpMessage !== undefined && httpMessage !== '') { - module.error(error.statusMessage + httpMessage, ajaxSettings.url); - } - settings.onError.call(context, errorMessage, $module, xhr); - } - } - - if(settings.errorDuration && status !== 'aborted') { - module.debug('Adding error state'); - module.set.error(); - if( module.should.removeError() ) { - setTimeout(module.remove.error, settings.errorDuration); - } - } - module.debug('API Request failed', errorMessage, xhr); - settings.onFailure.call(context, response, $module, xhr); - } - } - }, - - create: { - - request: function() { - // api request promise - return $.Deferred() - .always(module.event.request.complete) - .done(module.event.request.done) - .fail(module.event.request.fail) - ; - }, - - mockedXHR: function () { - var - // xhr does not simulate these properties of xhr but must return them - textStatus = false, - status = false, - httpMessage = false, - responder = settings.mockResponse || settings.response, - asyncResponder = settings.mockResponseAsync || settings.responseAsync, - asyncCallback, - response, - mockedXHR - ; - - mockedXHR = $.Deferred() - .always(module.event.xhr.complete) - .done(module.event.xhr.done) - .fail(module.event.xhr.fail) - ; - - if(responder) { - if( $.isFunction(responder) ) { - module.debug('Using specified synchronous callback', responder); - response = responder.call(context, requestSettings); - } - else { - module.debug('Using settings specified response', responder); - response = responder; - } - // simulating response - mockedXHR.resolveWith(context, [ response, textStatus, { responseText: response }]); - } - else if( $.isFunction(asyncResponder) ) { - asyncCallback = function(response) { - module.debug('Async callback returned response', response); - - if(response) { - mockedXHR.resolveWith(context, [ response, textStatus, { responseText: response }]); - } - else { - mockedXHR.rejectWith(context, [{ responseText: response }, status, httpMessage]); - } - }; - module.debug('Using specified async response callback', asyncResponder); - asyncResponder.call(context, requestSettings, asyncCallback); - } - return mockedXHR; - }, - - xhr: function() { - var - xhr - ; - // ajax request promise - xhr = $.ajax(ajaxSettings) - .always(module.event.xhr.always) - .done(module.event.xhr.done) - .fail(module.event.xhr.fail) - ; - module.verbose('Created server request', xhr, ajaxSettings); - return xhr; - } - }, - - set: { - error: function() { - module.verbose('Adding error state to element', $context); - $context.addClass(className.error); - }, - loading: function() { - module.verbose('Adding loading state to element', $context); - $context.addClass(className.loading); - requestStartTime = new Date().getTime(); - } - }, - - remove: { - error: function() { - module.verbose('Removing error state from element', $context); - $context.removeClass(className.error); - }, - loading: function() { - module.verbose('Removing loading state from element', $context); - $context.removeClass(className.loading); - } - }, - - get: { - responseFromXHR: function(xhr) { - return $.isPlainObject(xhr) - ? (module.is.expectingJSON()) - ? module.decode.json(xhr.responseText) - : xhr.responseText - : false - ; - }, - errorFromRequest: function(response, status, httpMessage) { - return ($.isPlainObject(response) && response.error !== undefined) - ? response.error // use json error message - : (settings.error[status] !== undefined) // use server error message - ? settings.error[status] - : httpMessage - ; - }, - request: function() { - return module.request || false; - }, - xhr: function() { - return module.xhr || false; - }, - settings: function() { - var - runSettings - ; - runSettings = settings.beforeSend.call(context, settings); - if(runSettings) { - if(runSettings.success !== undefined) { - module.debug('Legacy success callback detected', runSettings); - module.error(error.legacyParameters, runSettings.success); - runSettings.onSuccess = runSettings.success; - } - if(runSettings.failure !== undefined) { - module.debug('Legacy failure callback detected', runSettings); - module.error(error.legacyParameters, runSettings.failure); - runSettings.onFailure = runSettings.failure; - } - if(runSettings.complete !== undefined) { - module.debug('Legacy complete callback detected', runSettings); - module.error(error.legacyParameters, runSettings.complete); - runSettings.onComplete = runSettings.complete; - } - } - if(runSettings === undefined) { - module.error(error.noReturnedValue); - } - if(runSettings === false) { - return runSettings; - } - return (runSettings !== undefined) - ? $.extend(true, {}, runSettings) - : $.extend(true, {}, settings) - ; - }, - urlEncodedValue: function(value) { - var - decodedValue = window.decodeURIComponent(value), - encodedValue = window.encodeURIComponent(value), - alreadyEncoded = (decodedValue !== value) - ; - if(alreadyEncoded) { - module.debug('URL value is already encoded, avoiding double encoding', value); - return value; - } - module.verbose('Encoding value using encodeURIComponent', value, encodedValue); - return encodedValue; - }, - defaultData: function() { - var - data = {} - ; - if( !$.isWindow(element) ) { - if( module.is.input() ) { - data.value = $module.val(); - } - else if( module.is.form() ) { - - } - else { - data.text = $module.text(); - } - } - return data; - }, - event: function() { - if( $.isWindow(element) || settings.on == 'now' ) { - module.debug('API called without element, no events attached'); - return false; - } - else if(settings.on == 'auto') { - if( $module.is('input') ) { - return (element.oninput !== undefined) - ? 'input' - : (element.onpropertychange !== undefined) - ? 'propertychange' - : 'keyup' - ; - } - else if( $module.is('form') ) { - return 'submit'; - } - else { - return 'click'; - } - } - else { - return settings.on; - } - }, - templatedURL: function(action) { - action = action || $module.data(metadata.action) || settings.action || false; - url = $module.data(metadata.url) || settings.url || false; - if(url) { - module.debug('Using specified url', url); - return url; - } - if(action) { - module.debug('Looking up url for action', action, settings.api); - if(settings.api[action] === undefined && !module.is.mocked()) { - module.error(error.missingAction, settings.action, settings.api); - return; - } - url = settings.api[action]; - } - else if( module.is.form() ) { - url = $module.attr('action') || $context.attr('action') || false; - module.debug('No url or action specified, defaulting to form action', url); - } - return url; - } - }, - - abort: function() { - var - xhr = module.get.xhr() - ; - if( xhr && xhr.state() !== 'resolved') { - module.debug('Cancelling API request'); - xhr.abort(); - } - }, - - // reset state - reset: function() { - module.remove.error(); - module.remove.loading(); - }, - - setting: function(name, value) { - module.debug('Changing setting', name, value); - if( $.isPlainObject(name) ) { - $.extend(true, settings, name); - } - else if(value !== undefined) { - if($.isPlainObject(settings[name])) { - $.extend(true, settings[name], value); - } - else { - settings[name] = value; - } - } - else { - return settings[name]; - } - }, - internal: function(name, value) { - if( $.isPlainObject(name) ) { - $.extend(true, module, name); - } - else if(value !== undefined) { - module[name] = value; - } - else { - return module[name]; - } - }, - debug: function() { - if(!settings.silent && settings.debug) { - if(settings.performance) { - module.performance.log(arguments); - } - else { - module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); - module.debug.apply(console, arguments); - } - } - }, - verbose: function() { - if(!settings.silent && settings.verbose && settings.debug) { - if(settings.performance) { - module.performance.log(arguments); - } - else { - module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); - module.verbose.apply(console, arguments); - } - } - }, - error: function() { - if(!settings.silent) { - module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); - module.error.apply(console, arguments); - } - }, - performance: { - log: function(message) { - var - currentTime, - executionTime, - previousTime - ; - if(settings.performance) { - currentTime = new Date().getTime(); - previousTime = time || currentTime; - executionTime = currentTime - previousTime; - time = currentTime; - performance.push({ - 'Name' : message[0], - 'Arguments' : [].slice.call(message, 1) || '', - //'Element' : element, - 'Execution Time' : executionTime - }); - } - clearTimeout(module.performance.timer); - module.performance.timer = setTimeout(module.performance.display, 500); - }, - display: function() { - var - title = settings.name + ':', - totalTime = 0 - ; - time = false; - clearTimeout(module.performance.timer); - $.each(performance, function(index, data) { - totalTime += data['Execution Time']; - }); - title += ' ' + totalTime + 'ms'; - if(moduleSelector) { - title += ' \'' + moduleSelector + '\''; - } - if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { - console.groupCollapsed(title); - if(console.table) { - console.table(performance); - } - else { - $.each(performance, function(index, data) { - console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); - }); - } - console.groupEnd(); - } - performance = []; - } - }, - invoke: function(query, passedArguments, context) { - var - object = instance, - maxDepth, - found, - response - ; - passedArguments = passedArguments || queryArguments; - context = element || context; - if(typeof query == 'string' && object !== undefined) { - query = query.split(/[\. ]/); - maxDepth = query.length - 1; - $.each(query, function(depth, value) { - var camelCaseValue = (depth != maxDepth) - ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) - : query - ; - if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { - object = object[camelCaseValue]; - } - else if( object[camelCaseValue] !== undefined ) { - found = object[camelCaseValue]; - return false; - } - else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { - object = object[value]; - } - else if( object[value] !== undefined ) { - found = object[value]; - return false; - } - else { - module.error(error.method, query); - return false; - } - }); - } - if ( $.isFunction( found ) ) { - response = found.apply(context, passedArguments); - } - else if(found !== undefined) { - response = found; - } - if($.isArray(returnedValue)) { - returnedValue.push(response); - } - else if(returnedValue !== undefined) { - returnedValue = [returnedValue, response]; - } - else if(response !== undefined) { - returnedValue = response; - } - return found; - } - }; - - if(methodInvoked) { - if(instance === undefined) { - module.initialize(); - } - module.invoke(query); - } - else { - if(instance !== undefined) { - instance.invoke('destroy'); - } - module.initialize(); - } - }) - ; - - return (returnedValue !== undefined) - ? returnedValue - : this - ; -}; - -$.api.settings = { - - name : 'API', - namespace : 'api', - - debug : false, - verbose : false, - performance : true, - - // object containing all templates endpoints - api : {}, - - // whether to cache responses - cache : true, - - // whether new requests should abort previous requests - interruptRequests : true, - - // event binding - on : 'auto', - - // context for applying state classes - stateContext : false, - - // duration for loading state - loadingDuration : 0, - - // whether to hide errors after a period of time - hideError : 'auto', - - // duration for error state - errorDuration : 2000, - - // whether parameters should be encoded with encodeURIComponent - encodeParameters : true, - - // API action to use - action : false, - - // templated URL to use - url : false, - - // base URL to apply to all endpoints - base : '', - - // data that will - urlData : {}, - - // whether to add default data to url data - defaultData : true, - - // whether to serialize closest form - serializeForm : false, - - // how long to wait before request should occur - throttle : 0, - - // whether to throttle first request or only repeated - throttleFirstRequest : true, - - // standard ajax settings - method : 'get', - data : {}, - dataType : 'json', - - // mock response - mockResponse : false, - mockResponseAsync : false, - - // aliases for mock - response : false, - responseAsync : false, - - // callbacks before request - beforeSend : function(settings) { return settings; }, - beforeXHR : function(xhr) {}, - onRequest : function(promise, xhr) {}, - - // after request - onResponse : false, // function(response) { }, - - // response was successful, if JSON passed validation - onSuccess : function(response, $module) {}, - - // request finished without aborting - onComplete : function(response, $module) {}, - - // failed JSON success test - onFailure : function(response, $module) {}, - - // server error - onError : function(errorMessage, $module) {}, - - // request aborted - onAbort : function(errorMessage, $module) {}, - - successTest : false, - - // errors - error : { - beforeSend : 'The before send function has aborted the request', - error : 'There was an error with your request', - exitConditions : 'API Request Aborted. Exit conditions met', - JSONParse : 'JSON could not be parsed during error handling', - legacyParameters : 'You are using legacy API success callback names', - method : 'The method you called is not defined', - missingAction : 'API action used but no url was defined', - missingSerialize : 'jquery-serialize-object is required to add form data to an existing data object', - missingURL : 'No URL specified for api event', - noReturnedValue : 'The beforeSend callback must return a settings object, beforeSend ignored.', - noStorage : 'Caching responses locally requires session storage', - parseError : 'There was an error parsing your request', - requiredParameter : 'Missing a required URL parameter: ', - statusMessage : 'Server gave an error: ', - timeout : 'Your request timed out' - }, - - regExp : { - required : /\{\$*[A-z0-9]+\}/g, - optional : /\{\/\$*[A-z0-9]+\}/g, - }, - - className: { - loading : 'loading', - error : 'error' - }, - - selector: { - disabled : '.disabled', - form : 'form' - }, - - metadata: { - action : 'action', - url : 'url' - } -}; - - - -})( jQuery, window, document ); diff --git a/static/semantic/components/api.min.js b/static/semantic/components/api.min.js deleted file mode 100644 index aec935d18..000000000 --- a/static/semantic/components/api.min.js +++ /dev/null @@ -1 +0,0 @@ -!function(e,t,r,n){"use strict";t=void 0!==t&&t.Math==Math?t:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();e.api=e.fn.api=function(r){var o,s=e.isFunction(this)?e(t):e(this),i=s.selector||"",a=(new Date).getTime(),u=[],c=arguments[0],d="string"==typeof c,l=[].slice.call(arguments,1);return s.each(function(){var s,g,f,p,m,b,v=e.isPlainObject(r)?e.extend(!0,{},e.fn.api.settings,r):e.extend({},e.fn.api.settings),h=v.namespace,y=v.metadata,q=v.selector,R=v.error,x=v.className,S="."+h,A="module-"+h,k=e(this),T=k.closest(q.form),P=v.stateContext?e(v.stateContext):k,j=this,O=P[0],w=k.data(A);b={initialize:function(){d||b.bind.events(),b.instantiate()},instantiate:function(){b.verbose("Storing instance of module",b),w=b,k.data(A,w)},destroy:function(){b.verbose("Destroying previous module for",j),k.removeData(A).off(S)},bind:{events:function(){var e=b.get.event();e?(b.verbose("Attaching API events to element",e),k.on(e+S,b.event.trigger)):"now"==v.on&&(b.debug("Querying API endpoint immediately"),b.query())}},decode:{json:function(e){if(e!==n&&"string"==typeof e)try{e=JSON.parse(e)}catch(e){}return e}},read:{cachedResponse:function(e){var r;if(t.Storage!==n)return r=sessionStorage.getItem(e),b.debug("Using cached response",e,r),r=b.decode.json(r);b.error(R.noStorage)}},write:{cachedResponse:function(r,o){o&&""===o?b.debug("Response empty, not caching",o):t.Storage!==n?(e.isPlainObject(o)&&(o=JSON.stringify(o)),sessionStorage.setItem(r,o),b.verbose("Storing cached response for url",r,o)):b.error(R.noStorage)}},query:function(){if(b.is.disabled())b.debug("Element is disabled API request aborted");else{if(b.is.loading()){if(!v.interruptRequests)return void b.debug("Cancelling request, previous request is still pending");b.debug("Interrupting previous request"),b.abort()}if(v.defaultData&&e.extend(!0,v.urlData,b.get.defaultData()),v.serializeForm&&(v.data=b.add.formData(v.data)),!1===(g=b.get.settings()))return b.cancelled=!0,void b.error(R.beforeSend);if(b.cancelled=!1,(f=b.get.templatedURL())||b.is.mocked()){if((f=b.add.urlData(f))||b.is.mocked()){if(g.url=v.base+f,s=e.extend(!0,{},v,{type:v.method||v.type,data:p,url:v.base+f,beforeSend:v.beforeXHR,success:function(){},failure:function(){},complete:function(){}}),b.debug("Querying URL",s.url),b.verbose("Using AJAX settings",s),"local"===v.cache&&b.read.cachedResponse(f))return b.debug("Response returned from local cache"),b.request=b.create.request(),void b.request.resolveWith(O,[b.read.cachedResponse(f)]);v.throttle?v.throttleFirstRequest||b.timer?(b.debug("Throttling request",v.throttle),clearTimeout(b.timer),b.timer=setTimeout(function(){b.timer&&delete b.timer,b.debug("Sending throttled request",p,s.method),b.send.request()},v.throttle)):(b.debug("Sending request",p,s.method),b.send.request(),b.timer=setTimeout(function(){},v.throttle)):(b.debug("Sending request",p,s.method),b.send.request())}}else b.error(R.missingURL)}},should:{removeError:function(){return!0===v.hideError||"auto"===v.hideError&&!b.is.form()}},is:{disabled:function(){return k.filter(q.disabled).length>0},expectingJSON:function(){return"json"===v.dataType||"jsonp"===v.dataType},form:function(){return k.is("form")||P.is("form")},mocked:function(){return v.mockResponse||v.mockResponseAsync||v.response||v.responseAsync},input:function(){return k.is("input")},loading:function(){return!!b.request&&"pending"==b.request.state()},abortedRequest:function(e){return e&&e.readyState!==n&&0===e.readyState?(b.verbose("XHR request determined to be aborted"),!0):(b.verbose("XHR request was not aborted"),!1)},validResponse:function(t){return b.is.expectingJSON()&&e.isFunction(v.successTest)?(b.debug("Checking JSON returned success",v.successTest,t),v.successTest(t)?(b.debug("Response passed success test",t),!0):(b.debug("Response failed success test",t),!1)):(b.verbose("Response is not JSON, skipping validation",v.successTest,t),!0)}},was:{cancelled:function(){return b.cancelled||!1},succesful:function(){return b.request&&"resolved"==b.request.state()},failure:function(){return b.request&&"rejected"==b.request.state()},complete:function(){return b.request&&("resolved"==b.request.state()||"rejected"==b.request.state())}},add:{urlData:function(t,r){var o,s;return t&&(o=t.match(v.regExp.required),s=t.match(v.regExp.optional),r=r||v.urlData,o&&(b.debug("Looking for required URL variables",o),e.each(o,function(o,s){var i=-1!==s.indexOf("$")?s.substr(2,s.length-3):s.substr(1,s.length-2),a=e.isPlainObject(r)&&r[i]!==n?r[i]:k.data(i)!==n?k.data(i):P.data(i)!==n?P.data(i):r[i];if(a===n)return b.error(R.requiredParameter,i,t),t=!1,!1;b.verbose("Found required variable",i,a),a=v.encodeParameters?b.get.urlEncodedValue(a):a,t=t.replace(s,a)})),s&&(b.debug("Looking for optional URL variables",o),e.each(s,function(o,s){var i=-1!==s.indexOf("$")?s.substr(3,s.length-4):s.substr(2,s.length-3),a=e.isPlainObject(r)&&r[i]!==n?r[i]:k.data(i)!==n?k.data(i):P.data(i)!==n?P.data(i):r[i];a!==n?(b.verbose("Optional variable Found",i,a),t=t.replace(s,a)):(b.verbose("Optional variable not found",i),t=-1!==t.indexOf("/"+s)?t.replace("/"+s,""):t.replace(s,""))}))),t},formData:function(t){var r=e.fn.serializeObject!==n,o=r?T.serializeObject():T.serialize();return t=t||v.data,e.isPlainObject(t)?r?(b.debug("Extending existing data with form data",t,o),t=e.extend(!0,{},t,o)):(b.error(R.missingSerialize),b.debug("Cant extend data. Replacing data with form data",t,o),t=o):(b.debug("Adding form data",o),t=o),t}},send:{request:function(){b.set.loading(),b.request=b.create.request(),b.is.mocked()?b.mockedXHR=b.create.mockedXHR():b.xhr=b.create.xhr(),v.onRequest.call(O,b.request,b.xhr)}},event:{trigger:function(e){b.query(),"submit"!=e.type&&"click"!=e.type||e.preventDefault()},xhr:{always:function(){},done:function(t,r,n){var o=this,s=(new Date).getTime()-m,i=v.loadingDuration-s,a=!!e.isFunction(v.onResponse)&&(b.is.expectingJSON()?v.onResponse.call(o,e.extend(!0,{},t)):v.onResponse.call(o,t));i=i>0?i:0,a&&(b.debug("Modified API response in onResponse callback",v.onResponse,a,t),t=a),i>0&&b.debug("Response completed early delaying state change by",i),setTimeout(function(){b.is.validResponse(t)?b.request.resolveWith(o,[t,n]):b.request.rejectWith(o,[n,"invalid"])},i)},fail:function(e,t,r){var n=this,o=(new Date).getTime()-m,s=v.loadingDuration-o;(s=s>0?s:0)>0&&b.debug("Response completed early delaying state change by",s),setTimeout(function(){b.is.abortedRequest(e)?b.request.rejectWith(n,[e,"aborted",r]):b.request.rejectWith(n,[e,"error",t,r])},s)}},request:{done:function(e,t){b.debug("Successful API Response",e),"local"===v.cache&&f&&(b.write.cachedResponse(f,e),b.debug("Saving server response locally",b.cache)),v.onSuccess.call(O,e,k,t)},complete:function(e,t){var r,n;b.was.succesful()?(n=e,r=t):(r=e,n=b.get.responseFromXHR(r)),b.remove.loading(),v.onComplete.call(O,n,k,r)},fail:function(e,t,r){var o=b.get.responseFromXHR(e),i=b.get.errorFromRequest(o,t,r);if("aborted"==t)return b.debug("XHR Aborted (Most likely caused by page navigation or CORS Policy)",t,r),v.onAbort.call(O,t,k,e),!0;"invalid"==t?b.debug("JSON did not pass success test. A server-side error has most likely occurred",o):"error"==t&&e!==n&&(b.debug("XHR produced a server error",t,r),200!=e.status&&r!==n&&""!==r&&b.error(R.statusMessage+r,s.url),v.onError.call(O,i,k,e)),v.errorDuration&&"aborted"!==t&&(b.debug("Adding error state"),b.set.error(),b.should.removeError()&&setTimeout(b.remove.error,v.errorDuration)),b.debug("API Request failed",i,e),v.onFailure.call(O,o,k,e)}}},create:{request:function(){return e.Deferred().always(b.event.request.complete).done(b.event.request.done).fail(b.event.request.fail)},mockedXHR:function(){var t,r,n,o=v.mockResponse||v.response,s=v.mockResponseAsync||v.responseAsync;return n=e.Deferred().always(b.event.xhr.complete).done(b.event.xhr.done).fail(b.event.xhr.fail),o?(e.isFunction(o)?(b.debug("Using specified synchronous callback",o),r=o.call(O,g)):(b.debug("Using settings specified response",o),r=o),n.resolveWith(O,[r,!1,{responseText:r}])):e.isFunction(s)&&(t=function(e){b.debug("Async callback returned response",e),e?n.resolveWith(O,[e,!1,{responseText:e}]):n.rejectWith(O,[{responseText:e},!1,!1])},b.debug("Using specified async response callback",s),s.call(O,g,t)),n},xhr:function(){var t;return t=e.ajax(s).always(b.event.xhr.always).done(b.event.xhr.done).fail(b.event.xhr.fail),b.verbose("Created server request",t,s),t}},set:{error:function(){b.verbose("Adding error state to element",P),P.addClass(x.error)},loading:function(){b.verbose("Adding loading state to element",P),P.addClass(x.loading),m=(new Date).getTime()}},remove:{error:function(){b.verbose("Removing error state from element",P),P.removeClass(x.error)},loading:function(){b.verbose("Removing loading state from element",P),P.removeClass(x.loading)}},get:{responseFromXHR:function(t){return!!e.isPlainObject(t)&&(b.is.expectingJSON()?b.decode.json(t.responseText):t.responseText)},errorFromRequest:function(t,r,o){return e.isPlainObject(t)&&t.error!==n?t.error:v.error[r]!==n?v.error[r]:o},request:function(){return b.request||!1},xhr:function(){return b.xhr||!1},settings:function(){var t;return(t=v.beforeSend.call(O,v))&&(t.success!==n&&(b.debug("Legacy success callback detected",t),b.error(R.legacyParameters,t.success),t.onSuccess=t.success),t.failure!==n&&(b.debug("Legacy failure callback detected",t),b.error(R.legacyParameters,t.failure),t.onFailure=t.failure),t.complete!==n&&(b.debug("Legacy complete callback detected",t),b.error(R.legacyParameters,t.complete),t.onComplete=t.complete)),t===n&&b.error(R.noReturnedValue),!1===t?t:t!==n?e.extend(!0,{},t):e.extend(!0,{},v)},urlEncodedValue:function(e){var r=t.decodeURIComponent(e),n=t.encodeURIComponent(e);return r!==e?(b.debug("URL value is already encoded, avoiding double encoding",e),e):(b.verbose("Encoding value using encodeURIComponent",e,n),n)},defaultData:function(){var t={};return e.isWindow(j)||(b.is.input()?t.value=k.val():b.is.form()||(t.text=k.text())),t},event:function(){return e.isWindow(j)||"now"==v.on?(b.debug("API called without element, no events attached"),!1):"auto"==v.on?k.is("input")?j.oninput!==n?"input":j.onpropertychange!==n?"propertychange":"keyup":k.is("form")?"submit":"click":v.on},templatedURL:function(e){if(e=e||k.data(y.action)||v.action||!1,f=k.data(y.url)||v.url||!1)return b.debug("Using specified url",f),f;if(e){if(b.debug("Looking up url for action",e,v.api),v.api[e]===n&&!b.is.mocked())return void b.error(R.missingAction,v.action,v.api);f=v.api[e]}else b.is.form()&&(f=k.attr("action")||P.attr("action")||!1,b.debug("No url or action specified, defaulting to form action",f));return f}},abort:function(){var e=b.get.xhr();e&&"resolved"!==e.state()&&(b.debug("Cancelling API request"),e.abort())},reset:function(){b.remove.error(),b.remove.loading()},setting:function(t,r){if(b.debug("Changing setting",t,r),e.isPlainObject(t))e.extend(!0,v,t);else{if(r===n)return v[t];e.isPlainObject(v[t])?e.extend(!0,v[t],r):v[t]=r}},internal:function(t,r){if(e.isPlainObject(t))e.extend(!0,b,t);else{if(r===n)return b[t];b[t]=r}},debug:function(){!v.silent&&v.debug&&(v.performance?b.performance.log(arguments):(b.debug=Function.prototype.bind.call(console.info,console,v.name+":"),b.debug.apply(console,arguments)))},verbose:function(){!v.silent&&v.verbose&&v.debug&&(v.performance?b.performance.log(arguments):(b.verbose=Function.prototype.bind.call(console.info,console,v.name+":"),b.verbose.apply(console,arguments)))},error:function(){v.silent||(b.error=Function.prototype.bind.call(console.error,console,v.name+":"),b.error.apply(console,arguments))},performance:{log:function(e){var t,r;v.performance&&(r=(t=(new Date).getTime())-(a||t),a=t,u.push({Name:e[0],Arguments:[].slice.call(e,1)||"","Execution Time":r})),clearTimeout(b.performance.timer),b.performance.timer=setTimeout(b.performance.display,500)},display:function(){var t=v.name+":",r=0;a=!1,clearTimeout(b.performance.timer),e.each(u,function(e,t){r+=t["Execution Time"]}),t+=" "+r+"ms",i&&(t+=" '"+i+"'"),(console.group!==n||console.table!==n)&&u.length>0&&(console.groupCollapsed(t),console.table?console.table(u):e.each(u,function(e,t){console.log(t.Name+": "+t["Execution Time"]+"ms")}),console.groupEnd()),u=[]}},invoke:function(t,r,s){var i,a,u,c=w;return r=r||l,s=j||s,"string"==typeof t&&c!==n&&(t=t.split(/[\. ]/),i=t.length-1,e.each(t,function(r,o){var s=r!=i?o+t[r+1].charAt(0).toUpperCase()+t[r+1].slice(1):t;if(e.isPlainObject(c[s])&&r!=i)c=c[s];else{if(c[s]!==n)return a=c[s],!1;if(!e.isPlainObject(c[o])||r==i)return c[o]!==n?(a=c[o],!1):(b.error(R.method,t),!1);c=c[o]}})),e.isFunction(a)?u=a.apply(s,r):a!==n&&(u=a),e.isArray(o)?o.push(u):o!==n?o=[o,u]:u!==n&&(o=u),a}},d?(w===n&&b.initialize(),b.invoke(c)):(w!==n&&w.invoke("destroy"),b.initialize())}),o!==n?o:this},e.api.settings={name:"API",namespace:"api",debug:!1,verbose:!1,performance:!0,api:{},cache:!0,interruptRequests:!0,on:"auto",stateContext:!1,loadingDuration:0,hideError:"auto",errorDuration:2e3,encodeParameters:!0,action:!1,url:!1,base:"",urlData:{},defaultData:!0,serializeForm:!1,throttle:0,throttleFirstRequest:!0,method:"get",data:{},dataType:"json",mockResponse:!1,mockResponseAsync:!1,response:!1,responseAsync:!1,beforeSend:function(e){return e},beforeXHR:function(e){},onRequest:function(e,t){},onResponse:!1,onSuccess:function(e,t){},onComplete:function(e,t){},onFailure:function(e,t){},onError:function(e,t){},onAbort:function(e,t){},successTest:!1,error:{beforeSend:"The before send function has aborted the request",error:"There was an error with your request",exitConditions:"API Request Aborted. Exit conditions met",JSONParse:"JSON could not be parsed during error handling",legacyParameters:"You are using legacy API success callback names",method:"The method you called is not defined",missingAction:"API action used but no url was defined",missingSerialize:"jquery-serialize-object is required to add form data to an existing data object",missingURL:"No URL specified for api event",noReturnedValue:"The beforeSend callback must return a settings object, beforeSend ignored.",noStorage:"Caching responses locally requires session storage",parseError:"There was an error parsing your request",requiredParameter:"Missing a required URL parameter: ",statusMessage:"Server gave an error: ",timeout:"Your request timed out"},regExp:{required:/\{\$*[A-z0-9]+\}/g,optional:/\{\/\$*[A-z0-9]+\}/g},className:{loading:"loading",error:"error"},selector:{disabled:".disabled",form:"form"},metadata:{action:"action",url:"url"}}}(jQuery,window,document); \ No newline at end of file diff --git a/static/semantic/components/breadcrumb.css b/static/semantic/components/breadcrumb.css deleted file mode 100644 index c87e22fc6..000000000 --- a/static/semantic/components/breadcrumb.css +++ /dev/null @@ -1,124 +0,0 @@ -/*! - * # Semantic UI 2.4.0 - Breadcrumb - * http://github.com/semantic-org/semantic-ui/ - * - * - * Released under the MIT license - * http://opensource.org/licenses/MIT - * - */ - - -/******************************* - Breadcrumb -*******************************/ - -.ui.breadcrumb { - line-height: 1; - display: inline-block; - margin: 0em 0em; - vertical-align: middle; -} -.ui.breadcrumb:first-child { - margin-top: 0em; -} -.ui.breadcrumb:last-child { - margin-bottom: 0em; -} - - -/******************************* - Content -*******************************/ - - -/* Divider */ -.ui.breadcrumb .divider { - display: inline-block; - opacity: 0.7; - margin: 0em 0.21428571rem 0em; - font-size: 0.92857143em; - color: rgba(0, 0, 0, 0.4); - vertical-align: baseline; -} - -/* Link */ -.ui.breadcrumb a { - color: #4183C4; -} -.ui.breadcrumb a:hover { - color: #1e70bf; -} - -/* Icon Divider */ -.ui.breadcrumb .icon.divider { - font-size: 0.85714286em; - vertical-align: baseline; -} - -/* Section */ -.ui.breadcrumb a.section { - cursor: pointer; -} -.ui.breadcrumb .section { - display: inline-block; - margin: 0em; - padding: 0em; -} - -/* Loose Coupling */ -.ui.breadcrumb.segment { - display: inline-block; - padding: 0.78571429em 1em; -} - - -/******************************* - States -*******************************/ - -.ui.breadcrumb .active.section { - font-weight: bold; -} - - -/******************************* - Variations -*******************************/ - -.ui.mini.breadcrumb { - font-size: 0.78571429rem; -} -.ui.tiny.breadcrumb { - font-size: 0.85714286rem; -} -.ui.small.breadcrumb { - font-size: 0.92857143rem; -} -.ui.breadcrumb { - font-size: 1rem; -} -.ui.large.breadcrumb { - font-size: 1.14285714rem; -} -.ui.big.breadcrumb { - font-size: 1.28571429rem; -} -.ui.huge.breadcrumb { - font-size: 1.42857143rem; -} -.ui.massive.breadcrumb { - font-size: 1.71428571rem; -} - - -/******************************* - Theme Overrides -*******************************/ - - - -/******************************* - Site Overrides -*******************************/ - diff --git a/static/semantic/components/breadcrumb.min.css b/static/semantic/components/breadcrumb.min.css deleted file mode 100644 index 24c6f9584..000000000 --- a/static/semantic/components/breadcrumb.min.css +++ /dev/null @@ -1,9 +0,0 @@ -/*! - * # Semantic UI 2.4.0 - Breadcrumb - * http://github.com/semantic-org/semantic-ui/ - * - * - * Released under the MIT license - * http://opensource.org/licenses/MIT - * - */.ui.breadcrumb{line-height:1;display:inline-block;margin:0 0;vertical-align:middle}.ui.breadcrumb:first-child{margin-top:0}.ui.breadcrumb:last-child{margin-bottom:0}.ui.breadcrumb .divider{display:inline-block;opacity:.7;margin:0 .21428571rem 0;font-size:.92857143em;color:rgba(0,0,0,.4);vertical-align:baseline}.ui.breadcrumb a{color:#4183c4}.ui.breadcrumb a:hover{color:#1e70bf}.ui.breadcrumb .icon.divider{font-size:.85714286em;vertical-align:baseline}.ui.breadcrumb a.section{cursor:pointer}.ui.breadcrumb .section{display:inline-block;margin:0;padding:0}.ui.breadcrumb.segment{display:inline-block;padding:.78571429em 1em}.ui.breadcrumb .active.section{font-weight:700}.ui.mini.breadcrumb{font-size:.78571429rem}.ui.tiny.breadcrumb{font-size:.85714286rem}.ui.small.breadcrumb{font-size:.92857143rem}.ui.breadcrumb{font-size:1rem}.ui.large.breadcrumb{font-size:1.14285714rem}.ui.big.breadcrumb{font-size:1.28571429rem}.ui.huge.breadcrumb{font-size:1.42857143rem}.ui.massive.breadcrumb{font-size:1.71428571rem} \ No newline at end of file diff --git a/static/semantic/components/button.css b/static/semantic/components/button.css deleted file mode 100644 index 2e805faa2..000000000 --- a/static/semantic/components/button.css +++ /dev/null @@ -1,3838 +0,0 @@ -/*! - * # Semantic UI 2.4.0 - Button - * http://github.com/semantic-org/semantic-ui/ - * - * - * Released under the MIT license - * http://opensource.org/licenses/MIT - * - */ - - -/******************************* - Button -*******************************/ - -.ui.button { - cursor: pointer; - display: inline-block; - min-height: 1em; - outline: none; - border: none; - vertical-align: baseline; - background: #E0E1E2 none; - color: rgba(0, 0, 0, 0.6); - font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif; - margin: 0em 0.25em 0em 0em; - padding: 0.78571429em 1.5em 0.78571429em; - text-transform: none; - text-shadow: none; - font-weight: bold; - line-height: 1em; - font-style: normal; - text-align: center; - text-decoration: none; - border-radius: 0.28571429rem; - -webkit-box-shadow: 0px 0px 0px 1px transparent inset, 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0px 0px 1px transparent inset, 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - -webkit-transition: opacity 0.1s ease, background-color 0.1s ease, color 0.1s ease, background 0.1s ease, -webkit-box-shadow 0.1s ease; - transition: opacity 0.1s ease, background-color 0.1s ease, color 0.1s ease, background 0.1s ease, -webkit-box-shadow 0.1s ease; - transition: opacity 0.1s ease, background-color 0.1s ease, color 0.1s ease, box-shadow 0.1s ease, background 0.1s ease; - transition: opacity 0.1s ease, background-color 0.1s ease, color 0.1s ease, box-shadow 0.1s ease, background 0.1s ease, -webkit-box-shadow 0.1s ease; - will-change: ''; - -webkit-tap-highlight-color: transparent; -} - - -/******************************* - States -*******************************/ - - -/*-------------- - Hover ----------------*/ - -.ui.button:hover { - background-color: #CACBCD; - background-image: none; - -webkit-box-shadow: 0px 0px 0px 1px transparent inset, 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0px 0px 1px transparent inset, 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - color: rgba(0, 0, 0, 0.8); -} -.ui.button:hover .icon { - opacity: 0.85; -} - -/*-------------- - Focus ----------------*/ - -.ui.button:focus { - background-color: #CACBCD; - color: rgba(0, 0, 0, 0.8); - background-image: '' !important; - -webkit-box-shadow: '' !important; - box-shadow: '' !important; -} -.ui.button:focus .icon { - opacity: 0.85; -} - -/*-------------- - Down ----------------*/ - -.ui.button:active, -.ui.active.button:active { - background-color: #BABBBC; - background-image: ''; - color: rgba(0, 0, 0, 0.9); - -webkit-box-shadow: 0px 0px 0px 1px transparent inset, none; - box-shadow: 0px 0px 0px 1px transparent inset, none; -} - -/*-------------- - Active ----------------*/ - -.ui.active.button { - background-color: #C0C1C2; - background-image: none; - -webkit-box-shadow: 0px 0px 0px 1px transparent inset; - box-shadow: 0px 0px 0px 1px transparent inset; - color: rgba(0, 0, 0, 0.95); -} -.ui.active.button:hover { - background-color: #C0C1C2; - background-image: none; - color: rgba(0, 0, 0, 0.95); -} -.ui.active.button:active { - background-color: #C0C1C2; - background-image: none; -} - -/*-------------- - Loading ----------------*/ - - -/* Specificity hack */ -.ui.loading.loading.loading.loading.loading.loading.button { - position: relative; - cursor: default; - text-shadow: none !important; - color: transparent !important; - opacity: 1; - pointer-events: auto; - -webkit-transition: all 0s linear, opacity 0.1s ease; - transition: all 0s linear, opacity 0.1s ease; -} -.ui.loading.button:before { - position: absolute; - content: ''; - top: 50%; - left: 50%; - margin: -0.64285714em 0em 0em -0.64285714em; - width: 1.28571429em; - height: 1.28571429em; - border-radius: 500rem; - border: 0.2em solid rgba(0, 0, 0, 0.15); -} -.ui.loading.button:after { - position: absolute; - content: ''; - top: 50%; - left: 50%; - margin: -0.64285714em 0em 0em -0.64285714em; - width: 1.28571429em; - height: 1.28571429em; - -webkit-animation: button-spin 0.6s linear; - animation: button-spin 0.6s linear; - -webkit-animation-iteration-count: infinite; - animation-iteration-count: infinite; - border-radius: 500rem; - border-color: #FFFFFF transparent transparent; - border-style: solid; - border-width: 0.2em; - -webkit-box-shadow: 0px 0px 0px 1px transparent; - box-shadow: 0px 0px 0px 1px transparent; -} -.ui.labeled.icon.loading.button .icon { - background-color: transparent; - -webkit-box-shadow: none; - box-shadow: none; -} -@-webkit-keyframes button-spin { - from { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); - } - to { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); - } -} -@keyframes button-spin { - from { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); - } - to { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); - } -} -.ui.basic.loading.button:not(.inverted):before { - border-color: rgba(0, 0, 0, 0.1); -} -.ui.basic.loading.button:not(.inverted):after { - border-top-color: #767676; -} - -/*------------------- - Disabled ---------------------*/ - -.ui.buttons .disabled.button, -.ui.disabled.button, -.ui.button:disabled, -.ui.disabled.button:hover, -.ui.disabled.active.button { - cursor: default; - opacity: 0.45 !important; - background-image: none !important; - -webkit-box-shadow: none !important; - box-shadow: none !important; - pointer-events: none !important; -} - -/* Basic Group With Disabled */ -.ui.basic.buttons .ui.disabled.button { - border-color: rgba(34, 36, 38, 0.5); -} - - -/******************************* - Types -*******************************/ - - -/*------------------- - Animated ---------------------*/ - -.ui.animated.button { - position: relative; - overflow: hidden; - padding-right: 0em !important; - vertical-align: middle; - z-index: 1; -} -.ui.animated.button .content { - will-change: transform, opacity; -} -.ui.animated.button .visible.content { - position: relative; - margin-right: 1.5em; -} -.ui.animated.button .hidden.content { - position: absolute; - width: 100%; -} - -/* Horizontal */ -.ui.animated.button .visible.content, -.ui.animated.button .hidden.content { - -webkit-transition: right 0.3s ease 0s; - transition: right 0.3s ease 0s; -} -.ui.animated.button .visible.content { - left: auto; - right: 0%; -} -.ui.animated.button .hidden.content { - top: 50%; - left: auto; - right: -100%; - margin-top: -0.5em; -} -.ui.animated.button:focus .visible.content, -.ui.animated.button:hover .visible.content { - left: auto; - right: 200%; -} -.ui.animated.button:focus .hidden.content, -.ui.animated.button:hover .hidden.content { - left: auto; - right: 0%; -} - -/* Vertical */ -.ui.vertical.animated.button .visible.content, -.ui.vertical.animated.button .hidden.content { - -webkit-transition: top 0.3s ease, -webkit-transform 0.3s ease; - transition: top 0.3s ease, -webkit-transform 0.3s ease; - transition: top 0.3s ease, transform 0.3s ease; - transition: top 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease; -} -.ui.vertical.animated.button .visible.content { - -webkit-transform: translateY(0%); - transform: translateY(0%); - right: auto; -} -.ui.vertical.animated.button .hidden.content { - top: -50%; - left: 0%; - right: auto; -} -.ui.vertical.animated.button:focus .visible.content, -.ui.vertical.animated.button:hover .visible.content { - -webkit-transform: translateY(200%); - transform: translateY(200%); - right: auto; -} -.ui.vertical.animated.button:focus .hidden.content, -.ui.vertical.animated.button:hover .hidden.content { - top: 50%; - right: auto; -} - -/* Fade */ -.ui.fade.animated.button .visible.content, -.ui.fade.animated.button .hidden.content { - -webkit-transition: opacity 0.3s ease, -webkit-transform 0.3s ease; - transition: opacity 0.3s ease, -webkit-transform 0.3s ease; - transition: opacity 0.3s ease, transform 0.3s ease; - transition: opacity 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease; -} -.ui.fade.animated.button .visible.content { - left: auto; - right: auto; - opacity: 1; - -webkit-transform: scale(1); - transform: scale(1); -} -.ui.fade.animated.button .hidden.content { - opacity: 0; - left: 0%; - right: auto; - -webkit-transform: scale(1.5); - transform: scale(1.5); -} -.ui.fade.animated.button:focus .visible.content, -.ui.fade.animated.button:hover .visible.content { - left: auto; - right: auto; - opacity: 0; - -webkit-transform: scale(0.75); - transform: scale(0.75); -} -.ui.fade.animated.button:focus .hidden.content, -.ui.fade.animated.button:hover .hidden.content { - left: 0%; - right: auto; - opacity: 1; - -webkit-transform: scale(1); - transform: scale(1); -} - -/*------------------- - Inverted ---------------------*/ - -.ui.inverted.button { - -webkit-box-shadow: 0px 0px 0px 2px #FFFFFF inset !important; - box-shadow: 0px 0px 0px 2px #FFFFFF inset !important; - background: transparent none; - color: #FFFFFF; - text-shadow: none !important; -} - -/* Group */ -.ui.inverted.buttons .button { - margin: 0px 0px 0px -2px; -} -.ui.inverted.buttons .button:first-child { - margin-left: 0em; -} -.ui.inverted.vertical.buttons .button { - margin: 0px 0px -2px 0px; -} -.ui.inverted.vertical.buttons .button:first-child { - margin-top: 0em; -} - -/* States */ - -/* Hover */ -.ui.inverted.button:hover { - background: #FFFFFF; - -webkit-box-shadow: 0px 0px 0px 2px #FFFFFF inset !important; - box-shadow: 0px 0px 0px 2px #FFFFFF inset !important; - color: rgba(0, 0, 0, 0.8); -} - -/* Active / Focus */ -.ui.inverted.button:focus, -.ui.inverted.button.active { - background: #FFFFFF; - -webkit-box-shadow: 0px 0px 0px 2px #FFFFFF inset !important; - box-shadow: 0px 0px 0px 2px #FFFFFF inset !important; - color: rgba(0, 0, 0, 0.8); -} - -/* Active Focus */ -.ui.inverted.button.active:focus { - background: #DCDDDE; - -webkit-box-shadow: 0px 0px 0px 2px #DCDDDE inset !important; - box-shadow: 0px 0px 0px 2px #DCDDDE inset !important; - color: rgba(0, 0, 0, 0.8); -} - -/*------------------- - Labeled Button ---------------------*/ - -.ui.labeled.button:not(.icon) { - display: -webkit-inline-box; - display: -ms-inline-flexbox; - display: inline-flex; - -webkit-box-orient: horizontal; - -webkit-box-direction: normal; - -ms-flex-direction: row; - flex-direction: row; - background: none !important; - padding: 0px !important; - border: none !important; - -webkit-box-shadow: none !important; - box-shadow: none !important; -} -.ui.labeled.button > .button { - margin: 0px; -} -.ui.labeled.button > .label { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - margin: 0px 0px 0px -1px !important; - padding: ''; - font-size: 1em; - border-color: rgba(34, 36, 38, 0.15); -} - -/* Tag */ -.ui.labeled.button > .tag.label:before { - width: 1.85em; - height: 1.85em; -} - -/* Right */ -.ui.labeled.button:not([class*="left labeled"]) > .button { - border-top-right-radius: 0px; - border-bottom-right-radius: 0px; -} -.ui.labeled.button:not([class*="left labeled"]) > .label { - border-top-left-radius: 0px; - border-bottom-left-radius: 0px; -} - -/* Left Side */ -.ui[class*="left labeled"].button > .button { - border-top-left-radius: 0px; - border-bottom-left-radius: 0px; -} -.ui[class*="left labeled"].button > .label { - border-top-right-radius: 0px; - border-bottom-right-radius: 0px; -} - -/*------------------- - Social ---------------------*/ - - -/* Facebook */ -.ui.facebook.button { - background-color: #3B5998; - color: #FFFFFF; - text-shadow: none; - background-image: none; - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.facebook.button:hover { - background-color: #304d8a; - color: #FFFFFF; - text-shadow: none; -} -.ui.facebook.button:active { - background-color: #2d4373; - color: #FFFFFF; - text-shadow: none; -} - -/* Twitter */ -.ui.twitter.button { - background-color: #55ACEE; - color: #FFFFFF; - text-shadow: none; - background-image: none; - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.twitter.button:hover { - background-color: #35a2f4; - color: #FFFFFF; - text-shadow: none; -} -.ui.twitter.button:active { - background-color: #2795e9; - color: #FFFFFF; - text-shadow: none; -} - -/* Google Plus */ -.ui.google.plus.button { - background-color: #DD4B39; - color: #FFFFFF; - text-shadow: none; - background-image: none; - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.google.plus.button:hover { - background-color: #e0321c; - color: #FFFFFF; - text-shadow: none; -} -.ui.google.plus.button:active { - background-color: #c23321; - color: #FFFFFF; - text-shadow: none; -} - -/* Linked In */ -.ui.linkedin.button { - background-color: #1F88BE; - color: #FFFFFF; - text-shadow: none; -} -.ui.linkedin.button:hover { - background-color: #147baf; - color: #FFFFFF; - text-shadow: none; -} -.ui.linkedin.button:active { - background-color: #186992; - color: #FFFFFF; - text-shadow: none; -} - -/* YouTube */ -.ui.youtube.button { - background-color: #FF0000; - color: #FFFFFF; - text-shadow: none; - background-image: none; - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.youtube.button:hover { - background-color: #e60000; - color: #FFFFFF; - text-shadow: none; -} -.ui.youtube.button:active { - background-color: #cc0000; - color: #FFFFFF; - text-shadow: none; -} - -/* Instagram */ -.ui.instagram.button { - background-color: #49769C; - color: #FFFFFF; - text-shadow: none; - background-image: none; - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.instagram.button:hover { - background-color: #3d698e; - color: #FFFFFF; - text-shadow: none; -} -.ui.instagram.button:active { - background-color: #395c79; - color: #FFFFFF; - text-shadow: none; -} - -/* Pinterest */ -.ui.pinterest.button { - background-color: #BD081C; - color: #FFFFFF; - text-shadow: none; - background-image: none; - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.pinterest.button:hover { - background-color: #ac0013; - color: #FFFFFF; - text-shadow: none; -} -.ui.pinterest.button:active { - background-color: #8c0615; - color: #FFFFFF; - text-shadow: none; -} - -/* VK */ -.ui.vk.button { - background-color: #4D7198; - color: #FFFFFF; - background-image: none; - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.vk.button:hover { - background-color: #41648a; - color: #FFFFFF; -} -.ui.vk.button:active { - background-color: #3c5876; - color: #FFFFFF; -} - -/*-------------- - Icon ----------------*/ - -.ui.button > .icon:not(.button) { - height: 0.85714286em; - opacity: 0.8; - margin: 0em 0.42857143em 0em -0.21428571em; - -webkit-transition: opacity 0.1s ease; - transition: opacity 0.1s ease; - vertical-align: ''; - color: ''; -} -.ui.button:not(.icon) > .icon:not(.button):not(.dropdown) { - margin: 0em 0.42857143em 0em -0.21428571em; -} -.ui.button:not(.icon) > .right.icon:not(.button):not(.dropdown) { - margin: 0em -0.21428571em 0em 0.42857143em; -} - - -/******************************* - Variations -*******************************/ - - -/*------------------- - Floated ---------------------*/ - -.ui[class*="left floated"].buttons, -.ui[class*="left floated"].button { - float: left; - margin-left: 0em; - margin-right: 0.25em; -} -.ui[class*="right floated"].buttons, -.ui[class*="right floated"].button { - float: right; - margin-right: 0em; - margin-left: 0.25em; -} - -/*------------------- - Compact ---------------------*/ - -.ui.compact.buttons .button, -.ui.compact.button { - padding: 0.58928571em 1.125em 0.58928571em; -} -.ui.compact.icon.buttons .button, -.ui.compact.icon.button { - padding: 0.58928571em 0.58928571em 0.58928571em; -} -.ui.compact.labeled.icon.buttons .button, -.ui.compact.labeled.icon.button { - padding: 0.58928571em 3.69642857em 0.58928571em; -} - -/*------------------- - Sizes ---------------------*/ - -.ui.mini.buttons .button, -.ui.mini.buttons .or, -.ui.mini.button { - font-size: 0.78571429rem; -} -.ui.tiny.buttons .button, -.ui.tiny.buttons .or, -.ui.tiny.button { - font-size: 0.85714286rem; -} -.ui.small.buttons .button, -.ui.small.buttons .or, -.ui.small.button { - font-size: 0.92857143rem; -} -.ui.buttons .button, -.ui.buttons .or, -.ui.button { - font-size: 1rem; -} -.ui.large.buttons .button, -.ui.large.buttons .or, -.ui.large.button { - font-size: 1.14285714rem; -} -.ui.big.buttons .button, -.ui.big.buttons .or, -.ui.big.button { - font-size: 1.28571429rem; -} -.ui.huge.buttons .button, -.ui.huge.buttons .or, -.ui.huge.button { - font-size: 1.42857143rem; -} -.ui.massive.buttons .button, -.ui.massive.buttons .or, -.ui.massive.button { - font-size: 1.71428571rem; -} - -/*-------------- - Icon Only ----------------*/ - -.ui.icon.buttons .button, -.ui.icon.button { - padding: 0.78571429em 0.78571429em 0.78571429em; -} -.ui.icon.buttons .button > .icon, -.ui.icon.button > .icon { - opacity: 0.9; - margin: 0em !important; - vertical-align: top; -} - -/*------------------- - Basic ---------------------*/ - -.ui.basic.buttons .button, -.ui.basic.button { - background: transparent none !important; - color: rgba(0, 0, 0, 0.6) !important; - font-weight: normal; - border-radius: 0.28571429rem; - text-transform: none; - text-shadow: none !important; - -webkit-box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset; -} -.ui.basic.buttons { - -webkit-box-shadow: none; - box-shadow: none; - border: 1px solid rgba(34, 36, 38, 0.15); - border-radius: 0.28571429rem; -} -.ui.basic.buttons .button { - border-radius: 0em; -} -.ui.basic.buttons .button:hover, -.ui.basic.button:hover { - background: #FFFFFF !important; - color: rgba(0, 0, 0, 0.8) !important; - -webkit-box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.35) inset, 0px 0px 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.35) inset, 0px 0px 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.basic.buttons .button:focus, -.ui.basic.button:focus { - background: #FFFFFF !important; - color: rgba(0, 0, 0, 0.8) !important; - -webkit-box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.35) inset, 0px 0px 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.35) inset, 0px 0px 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.basic.buttons .button:active, -.ui.basic.button:active { - background: #F8F8F8 !important; - color: rgba(0, 0, 0, 0.9) !important; - -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.15) inset, 0px 1px 4px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.15) inset, 0px 1px 4px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.basic.buttons .active.button, -.ui.basic.active.button { - background: rgba(0, 0, 0, 0.05) !important; - -webkit-box-shadow: '' !important; - box-shadow: '' !important; - color: rgba(0, 0, 0, 0.95) !important; -} -.ui.basic.buttons .active.button:hover, -.ui.basic.active.button:hover { - background-color: rgba(0, 0, 0, 0.05); -} - -/* Vertical */ -.ui.basic.buttons .button:hover { - -webkit-box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.35) inset, 0px 0px 0px 0px rgba(34, 36, 38, 0.15) inset inset; - box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.35) inset, 0px 0px 0px 0px rgba(34, 36, 38, 0.15) inset inset; -} -.ui.basic.buttons .button:active { - -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.15) inset, 0px 1px 4px 0px rgba(34, 36, 38, 0.15) inset inset; - box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.15) inset, 0px 1px 4px 0px rgba(34, 36, 38, 0.15) inset inset; -} -.ui.basic.buttons .active.button { - -webkit-box-shadow: '' !important; - box-shadow: '' !important; -} - -/* Standard Basic Inverted */ -.ui.basic.inverted.buttons .button, -.ui.basic.inverted.button { - background-color: transparent !important; - color: #F9FAFB !important; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; -} -.ui.basic.inverted.buttons .button:hover, -.ui.basic.inverted.button:hover { - color: #FFFFFF !important; - -webkit-box-shadow: 0px 0px 0px 2px #ffffff inset !important; - box-shadow: 0px 0px 0px 2px #ffffff inset !important; -} -.ui.basic.inverted.buttons .button:focus, -.ui.basic.inverted.button:focus { - color: #FFFFFF !important; - -webkit-box-shadow: 0px 0px 0px 2px #ffffff inset !important; - box-shadow: 0px 0px 0px 2px #ffffff inset !important; -} -.ui.basic.inverted.buttons .button:active, -.ui.basic.inverted.button:active { - background-color: rgba(255, 255, 255, 0.08) !important; - color: #FFFFFF !important; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.9) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.9) inset !important; -} -.ui.basic.inverted.buttons .active.button, -.ui.basic.inverted.active.button { - background-color: rgba(255, 255, 255, 0.08); - color: #FFFFFF; - text-shadow: none; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.7) inset; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.7) inset; -} -.ui.basic.inverted.buttons .active.button:hover, -.ui.basic.inverted.active.button:hover { - background-color: rgba(255, 255, 255, 0.15); - -webkit-box-shadow: 0px 0px 0px 2px #ffffff inset !important; - box-shadow: 0px 0px 0px 2px #ffffff inset !important; -} - -/* Basic Group */ -.ui.basic.buttons .button { - border-left: 1px solid rgba(34, 36, 38, 0.15); - -webkit-box-shadow: none; - box-shadow: none; -} -.ui.basic.vertical.buttons .button { - border-left: none; -} -.ui.basic.vertical.buttons .button { - border-left-width: 0px; - border-top: 1px solid rgba(34, 36, 38, 0.15); -} -.ui.basic.vertical.buttons .button:first-child { - border-top-width: 0px; -} - -/*-------------- - Labeled Icon ----------------*/ - -.ui.labeled.icon.buttons .button, -.ui.labeled.icon.button { - position: relative; - padding-left: 4.07142857em !important; - padding-right: 1.5em !important; -} - -/* Left Labeled */ -.ui.labeled.icon.buttons > .button > .icon, -.ui.labeled.icon.button > .icon { - position: absolute; - height: 100%; - line-height: 1; - border-radius: 0px; - border-top-left-radius: inherit; - border-bottom-left-radius: inherit; - text-align: center; - margin: 0em; - width: 2.57142857em; - background-color: rgba(0, 0, 0, 0.05); - color: ''; - -webkit-box-shadow: -1px 0px 0px 0px transparent inset; - box-shadow: -1px 0px 0px 0px transparent inset; -} - -/* Left Labeled */ -.ui.labeled.icon.buttons > .button > .icon, -.ui.labeled.icon.button > .icon { - top: 0em; - left: 0em; -} - -/* Right Labeled */ -.ui[class*="right labeled"].icon.button { - padding-right: 4.07142857em !important; - padding-left: 1.5em !important; -} -.ui[class*="right labeled"].icon.button > .icon { - left: auto; - right: 0em; - border-radius: 0px; - border-top-right-radius: inherit; - border-bottom-right-radius: inherit; - -webkit-box-shadow: 1px 0px 0px 0px transparent inset; - box-shadow: 1px 0px 0px 0px transparent inset; -} -.ui.labeled.icon.buttons > .button > .icon:before, -.ui.labeled.icon.button > .icon:before, -.ui.labeled.icon.buttons > .button > .icon:after, -.ui.labeled.icon.button > .icon:after { - display: block; - position: absolute; - width: 100%; - top: 50%; - text-align: center; - -webkit-transform: translateY(-50%); - transform: translateY(-50%); -} -.ui.labeled.icon.buttons .button > .icon { - border-radius: 0em; -} -.ui.labeled.icon.buttons .button:first-child > .icon { - border-top-left-radius: 0.28571429rem; - border-bottom-left-radius: 0.28571429rem; -} -.ui.labeled.icon.buttons .button:last-child > .icon { - border-top-right-radius: 0.28571429rem; - border-bottom-right-radius: 0.28571429rem; -} -.ui.vertical.labeled.icon.buttons .button:first-child > .icon { - border-radius: 0em; - border-top-left-radius: 0.28571429rem; -} -.ui.vertical.labeled.icon.buttons .button:last-child > .icon { - border-radius: 0em; - border-bottom-left-radius: 0.28571429rem; -} - -/* Fluid Labeled */ -.ui.fluid[class*="left labeled"].icon.button, -.ui.fluid[class*="right labeled"].icon.button { - padding-left: 1.5em !important; - padding-right: 1.5em !important; -} - -/*-------------- - Toggle ----------------*/ - - -/* Toggle (Modifies active state to give affordances) */ -.ui.toggle.buttons .active.button, -.ui.buttons .button.toggle.active, -.ui.button.toggle.active { - background-color: #21BA45 !important; - -webkit-box-shadow: none !important; - box-shadow: none !important; - text-shadow: none; - color: #FFFFFF !important; -} -.ui.button.toggle.active:hover { - background-color: #16ab39 !important; - text-shadow: none; - color: #FFFFFF !important; -} - -/*-------------- - Circular ----------------*/ - -.ui.circular.button { - border-radius: 10em; -} -.ui.circular.button > .icon { - width: 1em; - vertical-align: baseline; -} - -/*------------------- - Or Buttons ---------------------*/ - -.ui.buttons .or { - position: relative; - width: 0.3em; - height: 2.57142857em; - z-index: 3; -} -.ui.buttons .or:before { - position: absolute; - text-align: center; - border-radius: 500rem; - content: 'or'; - top: 50%; - left: 50%; - background-color: #FFFFFF; - text-shadow: none; - margin-top: -0.89285714em; - margin-left: -0.89285714em; - width: 1.78571429em; - height: 1.78571429em; - line-height: 1.78571429em; - color: rgba(0, 0, 0, 0.4); - font-style: normal; - font-weight: bold; - -webkit-box-shadow: 0px 0px 0px 1px transparent inset; - box-shadow: 0px 0px 0px 1px transparent inset; -} -.ui.buttons .or[data-text]:before { - content: attr(data-text); -} - -/* Fluid Or */ -.ui.fluid.buttons .or { - width: 0em !important; -} -.ui.fluid.buttons .or:after { - display: none; -} - -/*------------------- - Attached ---------------------*/ - - -/* Singular */ -.ui.attached.button { - position: relative; - display: block; - margin: 0em; - border-radius: 0em; - -webkit-box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.15) !important; - box-shadow: 0px 0px 0px 1px rgba(34, 36, 38, 0.15) !important; -} - -/* Top / Bottom */ -.ui.attached.top.button { - border-radius: 0.28571429rem 0.28571429rem 0em 0em; -} -.ui.attached.bottom.button { - border-radius: 0em 0em 0.28571429rem 0.28571429rem; -} - -/* Left / Right */ -.ui.left.attached.button { - display: inline-block; - border-left: none; - text-align: right; - padding-right: 0.75em; - border-radius: 0.28571429rem 0em 0em 0.28571429rem; -} -.ui.right.attached.button { - display: inline-block; - text-align: left; - padding-left: 0.75em; - border-radius: 0em 0.28571429rem 0.28571429rem 0em; -} - -/* Plural */ -.ui.attached.buttons { - position: relative; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - border-radius: 0em; - width: auto !important; - z-index: 2; - margin-left: -1px; - margin-right: -1px; -} -.ui.attached.buttons .button { - margin: 0em; -} -.ui.attached.buttons .button:first-child { - border-radius: 0em; -} -.ui.attached.buttons .button:last-child { - border-radius: 0em; -} - -/* Top / Bottom */ -.ui[class*="top attached"].buttons { - margin-bottom: -1px; - border-radius: 0.28571429rem 0.28571429rem 0em 0em; -} -.ui[class*="top attached"].buttons .button:first-child { - border-radius: 0.28571429rem 0em 0em 0em; -} -.ui[class*="top attached"].buttons .button:last-child { - border-radius: 0em 0.28571429rem 0em 0em; -} -.ui[class*="bottom attached"].buttons { - margin-top: -1px; - border-radius: 0em 0em 0.28571429rem 0.28571429rem; -} -.ui[class*="bottom attached"].buttons .button:first-child { - border-radius: 0em 0em 0em 0.28571429rem; -} -.ui[class*="bottom attached"].buttons .button:last-child { - border-radius: 0em 0em 0.28571429rem 0em; -} - -/* Left / Right */ -.ui[class*="left attached"].buttons { - display: -webkit-inline-box; - display: -ms-inline-flexbox; - display: inline-flex; - margin-right: 0em; - margin-left: -1px; - border-radius: 0em 0.28571429rem 0.28571429rem 0em; -} -.ui[class*="left attached"].buttons .button:first-child { - margin-left: -1px; - border-radius: 0em 0.28571429rem 0em 0em; -} -.ui[class*="left attached"].buttons .button:last-child { - margin-left: -1px; - border-radius: 0em 0em 0.28571429rem 0em; -} -.ui[class*="right attached"].buttons { - display: -webkit-inline-box; - display: -ms-inline-flexbox; - display: inline-flex; - margin-left: 0em; - margin-right: -1px; - border-radius: 0.28571429rem 0em 0em 0.28571429rem; -} -.ui[class*="right attached"].buttons .button:first-child { - margin-left: -1px; - border-radius: 0.28571429rem 0em 0em 0em; -} -.ui[class*="right attached"].buttons .button:last-child { - margin-left: -1px; - border-radius: 0em 0em 0em 0.28571429rem; -} - -/*------------------- - Fluid ---------------------*/ - -.ui.fluid.buttons, -.ui.fluid.button { - width: 100%; -} -.ui.fluid.button { - display: block; -} -.ui.two.buttons { - width: 100%; -} -.ui.two.buttons > .button { - width: 50%; -} -.ui.three.buttons { - width: 100%; -} -.ui.three.buttons > .button { - width: 33.333%; -} -.ui.four.buttons { - width: 100%; -} -.ui.four.buttons > .button { - width: 25%; -} -.ui.five.buttons { - width: 100%; -} -.ui.five.buttons > .button { - width: 20%; -} -.ui.six.buttons { - width: 100%; -} -.ui.six.buttons > .button { - width: 16.666%; -} -.ui.seven.buttons { - width: 100%; -} -.ui.seven.buttons > .button { - width: 14.285%; -} -.ui.eight.buttons { - width: 100%; -} -.ui.eight.buttons > .button { - width: 12.500%; -} -.ui.nine.buttons { - width: 100%; -} -.ui.nine.buttons > .button { - width: 11.11%; -} -.ui.ten.buttons { - width: 100%; -} -.ui.ten.buttons > .button { - width: 10%; -} -.ui.eleven.buttons { - width: 100%; -} -.ui.eleven.buttons > .button { - width: 9.09%; -} -.ui.twelve.buttons { - width: 100%; -} -.ui.twelve.buttons > .button { - width: 8.3333%; -} - -/* Fluid Vertical Buttons */ -.ui.fluid.vertical.buttons, -.ui.fluid.vertical.buttons > .button { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - width: auto; -} -.ui.two.vertical.buttons > .button { - height: 50%; -} -.ui.three.vertical.buttons > .button { - height: 33.333%; -} -.ui.four.vertical.buttons > .button { - height: 25%; -} -.ui.five.vertical.buttons > .button { - height: 20%; -} -.ui.six.vertical.buttons > .button { - height: 16.666%; -} -.ui.seven.vertical.buttons > .button { - height: 14.285%; -} -.ui.eight.vertical.buttons > .button { - height: 12.500%; -} -.ui.nine.vertical.buttons > .button { - height: 11.11%; -} -.ui.ten.vertical.buttons > .button { - height: 10%; -} -.ui.eleven.vertical.buttons > .button { - height: 9.09%; -} -.ui.twelve.vertical.buttons > .button { - height: 8.3333%; -} - -/*------------------- - Colors ---------------------*/ - - -/*--- Black ---*/ - -.ui.black.buttons .button, -.ui.black.button { - background-color: #1B1C1D; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.black.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.black.buttons .button:hover, -.ui.black.button:hover { - background-color: #27292a; - color: #FFFFFF; - text-shadow: none; -} -.ui.black.buttons .button:focus, -.ui.black.button:focus { - background-color: #2f3032; - color: #FFFFFF; - text-shadow: none; -} -.ui.black.buttons .button:active, -.ui.black.button:active { - background-color: #343637; - color: #FFFFFF; - text-shadow: none; -} -.ui.black.buttons .active.button, -.ui.black.buttons .active.button:active, -.ui.black.active.button, -.ui.black.button .active.button:active { - background-color: #0f0f10; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.black.buttons .button, -.ui.basic.black.button { - -webkit-box-shadow: 0px 0px 0px 1px #1B1C1D inset !important; - box-shadow: 0px 0px 0px 1px #1B1C1D inset !important; - color: #1B1C1D !important; -} -.ui.basic.black.buttons .button:hover, -.ui.basic.black.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #27292a inset !important; - box-shadow: 0px 0px 0px 1px #27292a inset !important; - color: #27292a !important; -} -.ui.basic.black.buttons .button:focus, -.ui.basic.black.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #2f3032 inset !important; - box-shadow: 0px 0px 0px 1px #2f3032 inset !important; - color: #27292a !important; -} -.ui.basic.black.buttons .active.button, -.ui.basic.black.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #0f0f10 inset !important; - box-shadow: 0px 0px 0px 1px #0f0f10 inset !important; - color: #343637 !important; -} -.ui.basic.black.buttons .button:active, -.ui.basic.black.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #343637 inset !important; - box-shadow: 0px 0px 0px 1px #343637 inset !important; - color: #343637 !important; -} -.ui.buttons:not(.vertical) > .basic.black.button:not(:first-child) { - margin-left: -1px; -} - -/* Inverted */ -.ui.inverted.black.buttons .button, -.ui.inverted.black.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px #D4D4D5 inset !important; - box-shadow: 0px 0px 0px 2px #D4D4D5 inset !important; - color: #FFFFFF; -} -.ui.inverted.black.buttons .button:hover, -.ui.inverted.black.button:hover, -.ui.inverted.black.buttons .button:focus, -.ui.inverted.black.button:focus, -.ui.inverted.black.buttons .button.active, -.ui.inverted.black.button.active, -.ui.inverted.black.buttons .button:active, -.ui.inverted.black.button:active { - -webkit-box-shadow: none !important; - box-shadow: none !important; - color: #FFFFFF; -} -.ui.inverted.black.buttons .button:hover, -.ui.inverted.black.button:hover { - background-color: #000000; -} -.ui.inverted.black.buttons .button:focus, -.ui.inverted.black.button:focus { - background-color: #000000; -} -.ui.inverted.black.buttons .active.button, -.ui.inverted.black.active.button { - background-color: #000000; -} -.ui.inverted.black.buttons .button:active, -.ui.inverted.black.button:active { - background-color: #000000; -} - -/* Inverted Basic */ -.ui.inverted.black.basic.buttons .button, -.ui.inverted.black.buttons .basic.button, -.ui.inverted.black.basic.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - color: #FFFFFF !important; -} -.ui.inverted.black.basic.buttons .button:hover, -.ui.inverted.black.buttons .basic.button:hover, -.ui.inverted.black.basic.button:hover { - -webkit-box-shadow: 0px 0px 0px 2px #000000 inset !important; - box-shadow: 0px 0px 0px 2px #000000 inset !important; - color: #FFFFFF !important; -} -.ui.inverted.black.basic.buttons .button:focus, -.ui.inverted.black.basic.buttons .button:focus, -.ui.inverted.black.basic.button:focus { - -webkit-box-shadow: 0px 0px 0px 2px #000000 inset !important; - box-shadow: 0px 0px 0px 2px #000000 inset !important; - color: #545454 !important; -} -.ui.inverted.black.basic.buttons .active.button, -.ui.inverted.black.buttons .basic.active.button, -.ui.inverted.black.basic.active.button { - -webkit-box-shadow: 0px 0px 0px 2px #000000 inset !important; - box-shadow: 0px 0px 0px 2px #000000 inset !important; - color: #FFFFFF !important; -} -.ui.inverted.black.basic.buttons .button:active, -.ui.inverted.black.buttons .basic.button:active, -.ui.inverted.black.basic.button:active { - -webkit-box-shadow: 0px 0px 0px 2px #000000 inset !important; - box-shadow: 0px 0px 0px 2px #000000 inset !important; - color: #FFFFFF !important; -} - -/*--- Grey ---*/ - -.ui.grey.buttons .button, -.ui.grey.button { - background-color: #767676; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.grey.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.grey.buttons .button:hover, -.ui.grey.button:hover { - background-color: #838383; - color: #FFFFFF; - text-shadow: none; -} -.ui.grey.buttons .button:focus, -.ui.grey.button:focus { - background-color: #8a8a8a; - color: #FFFFFF; - text-shadow: none; -} -.ui.grey.buttons .button:active, -.ui.grey.button:active { - background-color: #909090; - color: #FFFFFF; - text-shadow: none; -} -.ui.grey.buttons .active.button, -.ui.grey.buttons .active.button:active, -.ui.grey.active.button, -.ui.grey.button .active.button:active { - background-color: #696969; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.grey.buttons .button, -.ui.basic.grey.button { - -webkit-box-shadow: 0px 0px 0px 1px #767676 inset !important; - box-shadow: 0px 0px 0px 1px #767676 inset !important; - color: #767676 !important; -} -.ui.basic.grey.buttons .button:hover, -.ui.basic.grey.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #838383 inset !important; - box-shadow: 0px 0px 0px 1px #838383 inset !important; - color: #838383 !important; -} -.ui.basic.grey.buttons .button:focus, -.ui.basic.grey.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #8a8a8a inset !important; - box-shadow: 0px 0px 0px 1px #8a8a8a inset !important; - color: #838383 !important; -} -.ui.basic.grey.buttons .active.button, -.ui.basic.grey.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #696969 inset !important; - box-shadow: 0px 0px 0px 1px #696969 inset !important; - color: #909090 !important; -} -.ui.basic.grey.buttons .button:active, -.ui.basic.grey.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #909090 inset !important; - box-shadow: 0px 0px 0px 1px #909090 inset !important; - color: #909090 !important; -} -.ui.buttons:not(.vertical) > .basic.grey.button:not(:first-child) { - margin-left: -1px; -} - -/* Inverted */ -.ui.inverted.grey.buttons .button, -.ui.inverted.grey.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px #D4D4D5 inset !important; - box-shadow: 0px 0px 0px 2px #D4D4D5 inset !important; - color: #FFFFFF; -} -.ui.inverted.grey.buttons .button:hover, -.ui.inverted.grey.button:hover, -.ui.inverted.grey.buttons .button:focus, -.ui.inverted.grey.button:focus, -.ui.inverted.grey.buttons .button.active, -.ui.inverted.grey.button.active, -.ui.inverted.grey.buttons .button:active, -.ui.inverted.grey.button:active { - -webkit-box-shadow: none !important; - box-shadow: none !important; - color: rgba(0, 0, 0, 0.6); -} -.ui.inverted.grey.buttons .button:hover, -.ui.inverted.grey.button:hover { - background-color: #cfd0d2; -} -.ui.inverted.grey.buttons .button:focus, -.ui.inverted.grey.button:focus { - background-color: #c7c9cb; -} -.ui.inverted.grey.buttons .active.button, -.ui.inverted.grey.active.button { - background-color: #cfd0d2; -} -.ui.inverted.grey.buttons .button:active, -.ui.inverted.grey.button:active { - background-color: #c2c4c5; -} - -/* Inverted Basic */ -.ui.inverted.grey.basic.buttons .button, -.ui.inverted.grey.buttons .basic.button, -.ui.inverted.grey.basic.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - color: #FFFFFF !important; -} -.ui.inverted.grey.basic.buttons .button:hover, -.ui.inverted.grey.buttons .basic.button:hover, -.ui.inverted.grey.basic.button:hover { - -webkit-box-shadow: 0px 0px 0px 2px #cfd0d2 inset !important; - box-shadow: 0px 0px 0px 2px #cfd0d2 inset !important; - color: #FFFFFF !important; -} -.ui.inverted.grey.basic.buttons .button:focus, -.ui.inverted.grey.basic.buttons .button:focus, -.ui.inverted.grey.basic.button:focus { - -webkit-box-shadow: 0px 0px 0px 2px #c7c9cb inset !important; - box-shadow: 0px 0px 0px 2px #c7c9cb inset !important; - color: #DCDDDE !important; -} -.ui.inverted.grey.basic.buttons .active.button, -.ui.inverted.grey.buttons .basic.active.button, -.ui.inverted.grey.basic.active.button { - -webkit-box-shadow: 0px 0px 0px 2px #cfd0d2 inset !important; - box-shadow: 0px 0px 0px 2px #cfd0d2 inset !important; - color: #FFFFFF !important; -} -.ui.inverted.grey.basic.buttons .button:active, -.ui.inverted.grey.buttons .basic.button:active, -.ui.inverted.grey.basic.button:active { - -webkit-box-shadow: 0px 0px 0px 2px #c2c4c5 inset !important; - box-shadow: 0px 0px 0px 2px #c2c4c5 inset !important; - color: #FFFFFF !important; -} - -/*--- Brown ---*/ - -.ui.brown.buttons .button, -.ui.brown.button { - background-color: #A5673F; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.brown.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.brown.buttons .button:hover, -.ui.brown.button:hover { - background-color: #975b33; - color: #FFFFFF; - text-shadow: none; -} -.ui.brown.buttons .button:focus, -.ui.brown.button:focus { - background-color: #90532b; - color: #FFFFFF; - text-shadow: none; -} -.ui.brown.buttons .button:active, -.ui.brown.button:active { - background-color: #805031; - color: #FFFFFF; - text-shadow: none; -} -.ui.brown.buttons .active.button, -.ui.brown.buttons .active.button:active, -.ui.brown.active.button, -.ui.brown.button .active.button:active { - background-color: #995a31; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.brown.buttons .button, -.ui.basic.brown.button { - -webkit-box-shadow: 0px 0px 0px 1px #A5673F inset !important; - box-shadow: 0px 0px 0px 1px #A5673F inset !important; - color: #A5673F !important; -} -.ui.basic.brown.buttons .button:hover, -.ui.basic.brown.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #975b33 inset !important; - box-shadow: 0px 0px 0px 1px #975b33 inset !important; - color: #975b33 !important; -} -.ui.basic.brown.buttons .button:focus, -.ui.basic.brown.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #90532b inset !important; - box-shadow: 0px 0px 0px 1px #90532b inset !important; - color: #975b33 !important; -} -.ui.basic.brown.buttons .active.button, -.ui.basic.brown.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #995a31 inset !important; - box-shadow: 0px 0px 0px 1px #995a31 inset !important; - color: #805031 !important; -} -.ui.basic.brown.buttons .button:active, -.ui.basic.brown.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #805031 inset !important; - box-shadow: 0px 0px 0px 1px #805031 inset !important; - color: #805031 !important; -} -.ui.buttons:not(.vertical) > .basic.brown.button:not(:first-child) { - margin-left: -1px; -} - -/* Inverted */ -.ui.inverted.brown.buttons .button, -.ui.inverted.brown.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px #D67C1C inset !important; - box-shadow: 0px 0px 0px 2px #D67C1C inset !important; - color: #D67C1C; -} -.ui.inverted.brown.buttons .button:hover, -.ui.inverted.brown.button:hover, -.ui.inverted.brown.buttons .button:focus, -.ui.inverted.brown.button:focus, -.ui.inverted.brown.buttons .button.active, -.ui.inverted.brown.button.active, -.ui.inverted.brown.buttons .button:active, -.ui.inverted.brown.button:active { - -webkit-box-shadow: none !important; - box-shadow: none !important; - color: #FFFFFF; -} -.ui.inverted.brown.buttons .button:hover, -.ui.inverted.brown.button:hover { - background-color: #c86f11; -} -.ui.inverted.brown.buttons .button:focus, -.ui.inverted.brown.button:focus { - background-color: #c16808; -} -.ui.inverted.brown.buttons .active.button, -.ui.inverted.brown.active.button { - background-color: #cc6f0d; -} -.ui.inverted.brown.buttons .button:active, -.ui.inverted.brown.button:active { - background-color: #a96216; -} - -/* Inverted Basic */ -.ui.inverted.brown.basic.buttons .button, -.ui.inverted.brown.buttons .basic.button, -.ui.inverted.brown.basic.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - color: #FFFFFF !important; -} -.ui.inverted.brown.basic.buttons .button:hover, -.ui.inverted.brown.buttons .basic.button:hover, -.ui.inverted.brown.basic.button:hover { - -webkit-box-shadow: 0px 0px 0px 2px #c86f11 inset !important; - box-shadow: 0px 0px 0px 2px #c86f11 inset !important; - color: #D67C1C !important; -} -.ui.inverted.brown.basic.buttons .button:focus, -.ui.inverted.brown.basic.buttons .button:focus, -.ui.inverted.brown.basic.button:focus { - -webkit-box-shadow: 0px 0px 0px 2px #c16808 inset !important; - box-shadow: 0px 0px 0px 2px #c16808 inset !important; - color: #D67C1C !important; -} -.ui.inverted.brown.basic.buttons .active.button, -.ui.inverted.brown.buttons .basic.active.button, -.ui.inverted.brown.basic.active.button { - -webkit-box-shadow: 0px 0px 0px 2px #cc6f0d inset !important; - box-shadow: 0px 0px 0px 2px #cc6f0d inset !important; - color: #D67C1C !important; -} -.ui.inverted.brown.basic.buttons .button:active, -.ui.inverted.brown.buttons .basic.button:active, -.ui.inverted.brown.basic.button:active { - -webkit-box-shadow: 0px 0px 0px 2px #a96216 inset !important; - box-shadow: 0px 0px 0px 2px #a96216 inset !important; - color: #D67C1C !important; -} - -/*--- Blue ---*/ - -.ui.blue.buttons .button, -.ui.blue.button { - background-color: #2185D0; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.blue.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.blue.buttons .button:hover, -.ui.blue.button:hover { - background-color: #1678c2; - color: #FFFFFF; - text-shadow: none; -} -.ui.blue.buttons .button:focus, -.ui.blue.button:focus { - background-color: #0d71bb; - color: #FFFFFF; - text-shadow: none; -} -.ui.blue.buttons .button:active, -.ui.blue.button:active { - background-color: #1a69a4; - color: #FFFFFF; - text-shadow: none; -} -.ui.blue.buttons .active.button, -.ui.blue.buttons .active.button:active, -.ui.blue.active.button, -.ui.blue.button .active.button:active { - background-color: #1279c6; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.blue.buttons .button, -.ui.basic.blue.button { - -webkit-box-shadow: 0px 0px 0px 1px #2185D0 inset !important; - box-shadow: 0px 0px 0px 1px #2185D0 inset !important; - color: #2185D0 !important; -} -.ui.basic.blue.buttons .button:hover, -.ui.basic.blue.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #1678c2 inset !important; - box-shadow: 0px 0px 0px 1px #1678c2 inset !important; - color: #1678c2 !important; -} -.ui.basic.blue.buttons .button:focus, -.ui.basic.blue.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #0d71bb inset !important; - box-shadow: 0px 0px 0px 1px #0d71bb inset !important; - color: #1678c2 !important; -} -.ui.basic.blue.buttons .active.button, -.ui.basic.blue.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #1279c6 inset !important; - box-shadow: 0px 0px 0px 1px #1279c6 inset !important; - color: #1a69a4 !important; -} -.ui.basic.blue.buttons .button:active, -.ui.basic.blue.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #1a69a4 inset !important; - box-shadow: 0px 0px 0px 1px #1a69a4 inset !important; - color: #1a69a4 !important; -} -.ui.buttons:not(.vertical) > .basic.blue.button:not(:first-child) { - margin-left: -1px; -} - -/* Inverted */ -.ui.inverted.blue.buttons .button, -.ui.inverted.blue.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px #54C8FF inset !important; - box-shadow: 0px 0px 0px 2px #54C8FF inset !important; - color: #54C8FF; -} -.ui.inverted.blue.buttons .button:hover, -.ui.inverted.blue.button:hover, -.ui.inverted.blue.buttons .button:focus, -.ui.inverted.blue.button:focus, -.ui.inverted.blue.buttons .button.active, -.ui.inverted.blue.button.active, -.ui.inverted.blue.buttons .button:active, -.ui.inverted.blue.button:active { - -webkit-box-shadow: none !important; - box-shadow: none !important; - color: #FFFFFF; -} -.ui.inverted.blue.buttons .button:hover, -.ui.inverted.blue.button:hover { - background-color: #3ac0ff; -} -.ui.inverted.blue.buttons .button:focus, -.ui.inverted.blue.button:focus { - background-color: #2bbbff; -} -.ui.inverted.blue.buttons .active.button, -.ui.inverted.blue.active.button { - background-color: #3ac0ff; -} -.ui.inverted.blue.buttons .button:active, -.ui.inverted.blue.button:active { - background-color: #21b8ff; -} - -/* Inverted Basic */ -.ui.inverted.blue.basic.buttons .button, -.ui.inverted.blue.buttons .basic.button, -.ui.inverted.blue.basic.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - color: #FFFFFF !important; -} -.ui.inverted.blue.basic.buttons .button:hover, -.ui.inverted.blue.buttons .basic.button:hover, -.ui.inverted.blue.basic.button:hover { - -webkit-box-shadow: 0px 0px 0px 2px #3ac0ff inset !important; - box-shadow: 0px 0px 0px 2px #3ac0ff inset !important; - color: #54C8FF !important; -} -.ui.inverted.blue.basic.buttons .button:focus, -.ui.inverted.blue.basic.buttons .button:focus, -.ui.inverted.blue.basic.button:focus { - -webkit-box-shadow: 0px 0px 0px 2px #2bbbff inset !important; - box-shadow: 0px 0px 0px 2px #2bbbff inset !important; - color: #54C8FF !important; -} -.ui.inverted.blue.basic.buttons .active.button, -.ui.inverted.blue.buttons .basic.active.button, -.ui.inverted.blue.basic.active.button { - -webkit-box-shadow: 0px 0px 0px 2px #3ac0ff inset !important; - box-shadow: 0px 0px 0px 2px #3ac0ff inset !important; - color: #54C8FF !important; -} -.ui.inverted.blue.basic.buttons .button:active, -.ui.inverted.blue.buttons .basic.button:active, -.ui.inverted.blue.basic.button:active { - -webkit-box-shadow: 0px 0px 0px 2px #21b8ff inset !important; - box-shadow: 0px 0px 0px 2px #21b8ff inset !important; - color: #54C8FF !important; -} - -/*--- Green ---*/ - -.ui.green.buttons .button, -.ui.green.button { - background-color: #21BA45; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.green.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.green.buttons .button:hover, -.ui.green.button:hover { - background-color: #16ab39; - color: #FFFFFF; - text-shadow: none; -} -.ui.green.buttons .button:focus, -.ui.green.button:focus { - background-color: #0ea432; - color: #FFFFFF; - text-shadow: none; -} -.ui.green.buttons .button:active, -.ui.green.button:active { - background-color: #198f35; - color: #FFFFFF; - text-shadow: none; -} -.ui.green.buttons .active.button, -.ui.green.buttons .active.button:active, -.ui.green.active.button, -.ui.green.button .active.button:active { - background-color: #13ae38; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.green.buttons .button, -.ui.basic.green.button { - -webkit-box-shadow: 0px 0px 0px 1px #21BA45 inset !important; - box-shadow: 0px 0px 0px 1px #21BA45 inset !important; - color: #21BA45 !important; -} -.ui.basic.green.buttons .button:hover, -.ui.basic.green.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #16ab39 inset !important; - box-shadow: 0px 0px 0px 1px #16ab39 inset !important; - color: #16ab39 !important; -} -.ui.basic.green.buttons .button:focus, -.ui.basic.green.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #0ea432 inset !important; - box-shadow: 0px 0px 0px 1px #0ea432 inset !important; - color: #16ab39 !important; -} -.ui.basic.green.buttons .active.button, -.ui.basic.green.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #13ae38 inset !important; - box-shadow: 0px 0px 0px 1px #13ae38 inset !important; - color: #198f35 !important; -} -.ui.basic.green.buttons .button:active, -.ui.basic.green.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #198f35 inset !important; - box-shadow: 0px 0px 0px 1px #198f35 inset !important; - color: #198f35 !important; -} -.ui.buttons:not(.vertical) > .basic.green.button:not(:first-child) { - margin-left: -1px; -} - -/* Inverted */ -.ui.inverted.green.buttons .button, -.ui.inverted.green.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px #2ECC40 inset !important; - box-shadow: 0px 0px 0px 2px #2ECC40 inset !important; - color: #2ECC40; -} -.ui.inverted.green.buttons .button:hover, -.ui.inverted.green.button:hover, -.ui.inverted.green.buttons .button:focus, -.ui.inverted.green.button:focus, -.ui.inverted.green.buttons .button.active, -.ui.inverted.green.button.active, -.ui.inverted.green.buttons .button:active, -.ui.inverted.green.button:active { - -webkit-box-shadow: none !important; - box-shadow: none !important; - color: #FFFFFF; -} -.ui.inverted.green.buttons .button:hover, -.ui.inverted.green.button:hover { - background-color: #22be34; -} -.ui.inverted.green.buttons .button:focus, -.ui.inverted.green.button:focus { - background-color: #19b82b; -} -.ui.inverted.green.buttons .active.button, -.ui.inverted.green.active.button { - background-color: #1fc231; -} -.ui.inverted.green.buttons .button:active, -.ui.inverted.green.button:active { - background-color: #25a233; -} - -/* Inverted Basic */ -.ui.inverted.green.basic.buttons .button, -.ui.inverted.green.buttons .basic.button, -.ui.inverted.green.basic.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - color: #FFFFFF !important; -} -.ui.inverted.green.basic.buttons .button:hover, -.ui.inverted.green.buttons .basic.button:hover, -.ui.inverted.green.basic.button:hover { - -webkit-box-shadow: 0px 0px 0px 2px #22be34 inset !important; - box-shadow: 0px 0px 0px 2px #22be34 inset !important; - color: #2ECC40 !important; -} -.ui.inverted.green.basic.buttons .button:focus, -.ui.inverted.green.basic.buttons .button:focus, -.ui.inverted.green.basic.button:focus { - -webkit-box-shadow: 0px 0px 0px 2px #19b82b inset !important; - box-shadow: 0px 0px 0px 2px #19b82b inset !important; - color: #2ECC40 !important; -} -.ui.inverted.green.basic.buttons .active.button, -.ui.inverted.green.buttons .basic.active.button, -.ui.inverted.green.basic.active.button { - -webkit-box-shadow: 0px 0px 0px 2px #1fc231 inset !important; - box-shadow: 0px 0px 0px 2px #1fc231 inset !important; - color: #2ECC40 !important; -} -.ui.inverted.green.basic.buttons .button:active, -.ui.inverted.green.buttons .basic.button:active, -.ui.inverted.green.basic.button:active { - -webkit-box-shadow: 0px 0px 0px 2px #25a233 inset !important; - box-shadow: 0px 0px 0px 2px #25a233 inset !important; - color: #2ECC40 !important; -} - -/*--- Orange ---*/ - -.ui.orange.buttons .button, -.ui.orange.button { - background-color: #F2711C; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.orange.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.orange.buttons .button:hover, -.ui.orange.button:hover { - background-color: #f26202; - color: #FFFFFF; - text-shadow: none; -} -.ui.orange.buttons .button:focus, -.ui.orange.button:focus { - background-color: #e55b00; - color: #FFFFFF; - text-shadow: none; -} -.ui.orange.buttons .button:active, -.ui.orange.button:active { - background-color: #cf590c; - color: #FFFFFF; - text-shadow: none; -} -.ui.orange.buttons .active.button, -.ui.orange.buttons .active.button:active, -.ui.orange.active.button, -.ui.orange.button .active.button:active { - background-color: #f56100; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.orange.buttons .button, -.ui.basic.orange.button { - -webkit-box-shadow: 0px 0px 0px 1px #F2711C inset !important; - box-shadow: 0px 0px 0px 1px #F2711C inset !important; - color: #F2711C !important; -} -.ui.basic.orange.buttons .button:hover, -.ui.basic.orange.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #f26202 inset !important; - box-shadow: 0px 0px 0px 1px #f26202 inset !important; - color: #f26202 !important; -} -.ui.basic.orange.buttons .button:focus, -.ui.basic.orange.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #e55b00 inset !important; - box-shadow: 0px 0px 0px 1px #e55b00 inset !important; - color: #f26202 !important; -} -.ui.basic.orange.buttons .active.button, -.ui.basic.orange.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #f56100 inset !important; - box-shadow: 0px 0px 0px 1px #f56100 inset !important; - color: #cf590c !important; -} -.ui.basic.orange.buttons .button:active, -.ui.basic.orange.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #cf590c inset !important; - box-shadow: 0px 0px 0px 1px #cf590c inset !important; - color: #cf590c !important; -} -.ui.buttons:not(.vertical) > .basic.orange.button:not(:first-child) { - margin-left: -1px; -} - -/* Inverted */ -.ui.inverted.orange.buttons .button, -.ui.inverted.orange.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px #FF851B inset !important; - box-shadow: 0px 0px 0px 2px #FF851B inset !important; - color: #FF851B; -} -.ui.inverted.orange.buttons .button:hover, -.ui.inverted.orange.button:hover, -.ui.inverted.orange.buttons .button:focus, -.ui.inverted.orange.button:focus, -.ui.inverted.orange.buttons .button.active, -.ui.inverted.orange.button.active, -.ui.inverted.orange.buttons .button:active, -.ui.inverted.orange.button:active { - -webkit-box-shadow: none !important; - box-shadow: none !important; - color: #FFFFFF; -} -.ui.inverted.orange.buttons .button:hover, -.ui.inverted.orange.button:hover { - background-color: #ff7701; -} -.ui.inverted.orange.buttons .button:focus, -.ui.inverted.orange.button:focus { - background-color: #f17000; -} -.ui.inverted.orange.buttons .active.button, -.ui.inverted.orange.active.button { - background-color: #ff7701; -} -.ui.inverted.orange.buttons .button:active, -.ui.inverted.orange.button:active { - background-color: #e76b00; -} - -/* Inverted Basic */ -.ui.inverted.orange.basic.buttons .button, -.ui.inverted.orange.buttons .basic.button, -.ui.inverted.orange.basic.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - color: #FFFFFF !important; -} -.ui.inverted.orange.basic.buttons .button:hover, -.ui.inverted.orange.buttons .basic.button:hover, -.ui.inverted.orange.basic.button:hover { - -webkit-box-shadow: 0px 0px 0px 2px #ff7701 inset !important; - box-shadow: 0px 0px 0px 2px #ff7701 inset !important; - color: #FF851B !important; -} -.ui.inverted.orange.basic.buttons .button:focus, -.ui.inverted.orange.basic.buttons .button:focus, -.ui.inverted.orange.basic.button:focus { - -webkit-box-shadow: 0px 0px 0px 2px #f17000 inset !important; - box-shadow: 0px 0px 0px 2px #f17000 inset !important; - color: #FF851B !important; -} -.ui.inverted.orange.basic.buttons .active.button, -.ui.inverted.orange.buttons .basic.active.button, -.ui.inverted.orange.basic.active.button { - -webkit-box-shadow: 0px 0px 0px 2px #ff7701 inset !important; - box-shadow: 0px 0px 0px 2px #ff7701 inset !important; - color: #FF851B !important; -} -.ui.inverted.orange.basic.buttons .button:active, -.ui.inverted.orange.buttons .basic.button:active, -.ui.inverted.orange.basic.button:active { - -webkit-box-shadow: 0px 0px 0px 2px #e76b00 inset !important; - box-shadow: 0px 0px 0px 2px #e76b00 inset !important; - color: #FF851B !important; -} - -/*--- Pink ---*/ - -.ui.pink.buttons .button, -.ui.pink.button { - background-color: #E03997; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.pink.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.pink.buttons .button:hover, -.ui.pink.button:hover { - background-color: #e61a8d; - color: #FFFFFF; - text-shadow: none; -} -.ui.pink.buttons .button:focus, -.ui.pink.button:focus { - background-color: #e10f85; - color: #FFFFFF; - text-shadow: none; -} -.ui.pink.buttons .button:active, -.ui.pink.button:active { - background-color: #c71f7e; - color: #FFFFFF; - text-shadow: none; -} -.ui.pink.buttons .active.button, -.ui.pink.buttons .active.button:active, -.ui.pink.active.button, -.ui.pink.button .active.button:active { - background-color: #ea158d; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.pink.buttons .button, -.ui.basic.pink.button { - -webkit-box-shadow: 0px 0px 0px 1px #E03997 inset !important; - box-shadow: 0px 0px 0px 1px #E03997 inset !important; - color: #E03997 !important; -} -.ui.basic.pink.buttons .button:hover, -.ui.basic.pink.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #e61a8d inset !important; - box-shadow: 0px 0px 0px 1px #e61a8d inset !important; - color: #e61a8d !important; -} -.ui.basic.pink.buttons .button:focus, -.ui.basic.pink.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #e10f85 inset !important; - box-shadow: 0px 0px 0px 1px #e10f85 inset !important; - color: #e61a8d !important; -} -.ui.basic.pink.buttons .active.button, -.ui.basic.pink.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #ea158d inset !important; - box-shadow: 0px 0px 0px 1px #ea158d inset !important; - color: #c71f7e !important; -} -.ui.basic.pink.buttons .button:active, -.ui.basic.pink.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #c71f7e inset !important; - box-shadow: 0px 0px 0px 1px #c71f7e inset !important; - color: #c71f7e !important; -} -.ui.buttons:not(.vertical) > .basic.pink.button:not(:first-child) { - margin-left: -1px; -} - -/* Inverted */ -.ui.inverted.pink.buttons .button, -.ui.inverted.pink.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px #FF8EDF inset !important; - box-shadow: 0px 0px 0px 2px #FF8EDF inset !important; - color: #FF8EDF; -} -.ui.inverted.pink.buttons .button:hover, -.ui.inverted.pink.button:hover, -.ui.inverted.pink.buttons .button:focus, -.ui.inverted.pink.button:focus, -.ui.inverted.pink.buttons .button.active, -.ui.inverted.pink.button.active, -.ui.inverted.pink.buttons .button:active, -.ui.inverted.pink.button:active { - -webkit-box-shadow: none !important; - box-shadow: none !important; - color: #FFFFFF; -} -.ui.inverted.pink.buttons .button:hover, -.ui.inverted.pink.button:hover { - background-color: #ff74d8; -} -.ui.inverted.pink.buttons .button:focus, -.ui.inverted.pink.button:focus { - background-color: #ff65d3; -} -.ui.inverted.pink.buttons .active.button, -.ui.inverted.pink.active.button { - background-color: #ff74d8; -} -.ui.inverted.pink.buttons .button:active, -.ui.inverted.pink.button:active { - background-color: #ff5bd1; -} - -/* Inverted Basic */ -.ui.inverted.pink.basic.buttons .button, -.ui.inverted.pink.buttons .basic.button, -.ui.inverted.pink.basic.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - color: #FFFFFF !important; -} -.ui.inverted.pink.basic.buttons .button:hover, -.ui.inverted.pink.buttons .basic.button:hover, -.ui.inverted.pink.basic.button:hover { - -webkit-box-shadow: 0px 0px 0px 2px #ff74d8 inset !important; - box-shadow: 0px 0px 0px 2px #ff74d8 inset !important; - color: #FF8EDF !important; -} -.ui.inverted.pink.basic.buttons .button:focus, -.ui.inverted.pink.basic.buttons .button:focus, -.ui.inverted.pink.basic.button:focus { - -webkit-box-shadow: 0px 0px 0px 2px #ff65d3 inset !important; - box-shadow: 0px 0px 0px 2px #ff65d3 inset !important; - color: #FF8EDF !important; -} -.ui.inverted.pink.basic.buttons .active.button, -.ui.inverted.pink.buttons .basic.active.button, -.ui.inverted.pink.basic.active.button { - -webkit-box-shadow: 0px 0px 0px 2px #ff74d8 inset !important; - box-shadow: 0px 0px 0px 2px #ff74d8 inset !important; - color: #FF8EDF !important; -} -.ui.inverted.pink.basic.buttons .button:active, -.ui.inverted.pink.buttons .basic.button:active, -.ui.inverted.pink.basic.button:active { - -webkit-box-shadow: 0px 0px 0px 2px #ff5bd1 inset !important; - box-shadow: 0px 0px 0px 2px #ff5bd1 inset !important; - color: #FF8EDF !important; -} - -/*--- Violet ---*/ - -.ui.violet.buttons .button, -.ui.violet.button { - background-color: #6435C9; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.violet.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.violet.buttons .button:hover, -.ui.violet.button:hover { - background-color: #5829bb; - color: #FFFFFF; - text-shadow: none; -} -.ui.violet.buttons .button:focus, -.ui.violet.button:focus { - background-color: #4f20b5; - color: #FFFFFF; - text-shadow: none; -} -.ui.violet.buttons .button:active, -.ui.violet.button:active { - background-color: #502aa1; - color: #FFFFFF; - text-shadow: none; -} -.ui.violet.buttons .active.button, -.ui.violet.buttons .active.button:active, -.ui.violet.active.button, -.ui.violet.button .active.button:active { - background-color: #5626bf; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.violet.buttons .button, -.ui.basic.violet.button { - -webkit-box-shadow: 0px 0px 0px 1px #6435C9 inset !important; - box-shadow: 0px 0px 0px 1px #6435C9 inset !important; - color: #6435C9 !important; -} -.ui.basic.violet.buttons .button:hover, -.ui.basic.violet.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #5829bb inset !important; - box-shadow: 0px 0px 0px 1px #5829bb inset !important; - color: #5829bb !important; -} -.ui.basic.violet.buttons .button:focus, -.ui.basic.violet.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #4f20b5 inset !important; - box-shadow: 0px 0px 0px 1px #4f20b5 inset !important; - color: #5829bb !important; -} -.ui.basic.violet.buttons .active.button, -.ui.basic.violet.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #5626bf inset !important; - box-shadow: 0px 0px 0px 1px #5626bf inset !important; - color: #502aa1 !important; -} -.ui.basic.violet.buttons .button:active, -.ui.basic.violet.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #502aa1 inset !important; - box-shadow: 0px 0px 0px 1px #502aa1 inset !important; - color: #502aa1 !important; -} -.ui.buttons:not(.vertical) > .basic.violet.button:not(:first-child) { - margin-left: -1px; -} - -/* Inverted */ -.ui.inverted.violet.buttons .button, -.ui.inverted.violet.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px #A291FB inset !important; - box-shadow: 0px 0px 0px 2px #A291FB inset !important; - color: #A291FB; -} -.ui.inverted.violet.buttons .button:hover, -.ui.inverted.violet.button:hover, -.ui.inverted.violet.buttons .button:focus, -.ui.inverted.violet.button:focus, -.ui.inverted.violet.buttons .button.active, -.ui.inverted.violet.button.active, -.ui.inverted.violet.buttons .button:active, -.ui.inverted.violet.button:active { - -webkit-box-shadow: none !important; - box-shadow: none !important; - color: #FFFFFF; -} -.ui.inverted.violet.buttons .button:hover, -.ui.inverted.violet.button:hover { - background-color: #8a73ff; -} -.ui.inverted.violet.buttons .button:focus, -.ui.inverted.violet.button:focus { - background-color: #7d64ff; -} -.ui.inverted.violet.buttons .active.button, -.ui.inverted.violet.active.button { - background-color: #8a73ff; -} -.ui.inverted.violet.buttons .button:active, -.ui.inverted.violet.button:active { - background-color: #7860f9; -} - -/* Inverted Basic */ -.ui.inverted.violet.basic.buttons .button, -.ui.inverted.violet.buttons .basic.button, -.ui.inverted.violet.basic.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - color: #FFFFFF !important; -} -.ui.inverted.violet.basic.buttons .button:hover, -.ui.inverted.violet.buttons .basic.button:hover, -.ui.inverted.violet.basic.button:hover { - -webkit-box-shadow: 0px 0px 0px 2px #8a73ff inset !important; - box-shadow: 0px 0px 0px 2px #8a73ff inset !important; - color: #A291FB !important; -} -.ui.inverted.violet.basic.buttons .button:focus, -.ui.inverted.violet.basic.buttons .button:focus, -.ui.inverted.violet.basic.button:focus { - -webkit-box-shadow: 0px 0px 0px 2px #7d64ff inset !important; - box-shadow: 0px 0px 0px 2px #7d64ff inset !important; - color: #A291FB !important; -} -.ui.inverted.violet.basic.buttons .active.button, -.ui.inverted.violet.buttons .basic.active.button, -.ui.inverted.violet.basic.active.button { - -webkit-box-shadow: 0px 0px 0px 2px #8a73ff inset !important; - box-shadow: 0px 0px 0px 2px #8a73ff inset !important; - color: #A291FB !important; -} -.ui.inverted.violet.basic.buttons .button:active, -.ui.inverted.violet.buttons .basic.button:active, -.ui.inverted.violet.basic.button:active { - -webkit-box-shadow: 0px 0px 0px 2px #7860f9 inset !important; - box-shadow: 0px 0px 0px 2px #7860f9 inset !important; - color: #A291FB !important; -} - -/*--- Purple ---*/ - -.ui.purple.buttons .button, -.ui.purple.button { - background-color: #A333C8; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.purple.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.purple.buttons .button:hover, -.ui.purple.button:hover { - background-color: #9627ba; - color: #FFFFFF; - text-shadow: none; -} -.ui.purple.buttons .button:focus, -.ui.purple.button:focus { - background-color: #8f1eb4; - color: #FFFFFF; - text-shadow: none; -} -.ui.purple.buttons .button:active, -.ui.purple.button:active { - background-color: #82299f; - color: #FFFFFF; - text-shadow: none; -} -.ui.purple.buttons .active.button, -.ui.purple.buttons .active.button:active, -.ui.purple.active.button, -.ui.purple.button .active.button:active { - background-color: #9724be; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.purple.buttons .button, -.ui.basic.purple.button { - -webkit-box-shadow: 0px 0px 0px 1px #A333C8 inset !important; - box-shadow: 0px 0px 0px 1px #A333C8 inset !important; - color: #A333C8 !important; -} -.ui.basic.purple.buttons .button:hover, -.ui.basic.purple.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #9627ba inset !important; - box-shadow: 0px 0px 0px 1px #9627ba inset !important; - color: #9627ba !important; -} -.ui.basic.purple.buttons .button:focus, -.ui.basic.purple.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #8f1eb4 inset !important; - box-shadow: 0px 0px 0px 1px #8f1eb4 inset !important; - color: #9627ba !important; -} -.ui.basic.purple.buttons .active.button, -.ui.basic.purple.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #9724be inset !important; - box-shadow: 0px 0px 0px 1px #9724be inset !important; - color: #82299f !important; -} -.ui.basic.purple.buttons .button:active, -.ui.basic.purple.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #82299f inset !important; - box-shadow: 0px 0px 0px 1px #82299f inset !important; - color: #82299f !important; -} -.ui.buttons:not(.vertical) > .basic.purple.button:not(:first-child) { - margin-left: -1px; -} - -/* Inverted */ -.ui.inverted.purple.buttons .button, -.ui.inverted.purple.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px #DC73FF inset !important; - box-shadow: 0px 0px 0px 2px #DC73FF inset !important; - color: #DC73FF; -} -.ui.inverted.purple.buttons .button:hover, -.ui.inverted.purple.button:hover, -.ui.inverted.purple.buttons .button:focus, -.ui.inverted.purple.button:focus, -.ui.inverted.purple.buttons .button.active, -.ui.inverted.purple.button.active, -.ui.inverted.purple.buttons .button:active, -.ui.inverted.purple.button:active { - -webkit-box-shadow: none !important; - box-shadow: none !important; - color: #FFFFFF; -} -.ui.inverted.purple.buttons .button:hover, -.ui.inverted.purple.button:hover { - background-color: #d65aff; -} -.ui.inverted.purple.buttons .button:focus, -.ui.inverted.purple.button:focus { - background-color: #d24aff; -} -.ui.inverted.purple.buttons .active.button, -.ui.inverted.purple.active.button { - background-color: #d65aff; -} -.ui.inverted.purple.buttons .button:active, -.ui.inverted.purple.button:active { - background-color: #cf40ff; -} - -/* Inverted Basic */ -.ui.inverted.purple.basic.buttons .button, -.ui.inverted.purple.buttons .basic.button, -.ui.inverted.purple.basic.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - color: #FFFFFF !important; -} -.ui.inverted.purple.basic.buttons .button:hover, -.ui.inverted.purple.buttons .basic.button:hover, -.ui.inverted.purple.basic.button:hover { - -webkit-box-shadow: 0px 0px 0px 2px #d65aff inset !important; - box-shadow: 0px 0px 0px 2px #d65aff inset !important; - color: #DC73FF !important; -} -.ui.inverted.purple.basic.buttons .button:focus, -.ui.inverted.purple.basic.buttons .button:focus, -.ui.inverted.purple.basic.button:focus { - -webkit-box-shadow: 0px 0px 0px 2px #d24aff inset !important; - box-shadow: 0px 0px 0px 2px #d24aff inset !important; - color: #DC73FF !important; -} -.ui.inverted.purple.basic.buttons .active.button, -.ui.inverted.purple.buttons .basic.active.button, -.ui.inverted.purple.basic.active.button { - -webkit-box-shadow: 0px 0px 0px 2px #d65aff inset !important; - box-shadow: 0px 0px 0px 2px #d65aff inset !important; - color: #DC73FF !important; -} -.ui.inverted.purple.basic.buttons .button:active, -.ui.inverted.purple.buttons .basic.button:active, -.ui.inverted.purple.basic.button:active { - -webkit-box-shadow: 0px 0px 0px 2px #cf40ff inset !important; - box-shadow: 0px 0px 0px 2px #cf40ff inset !important; - color: #DC73FF !important; -} - -/*--- Red ---*/ - -.ui.red.buttons .button, -.ui.red.button { - background-color: #DB2828; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.red.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.red.buttons .button:hover, -.ui.red.button:hover { - background-color: #d01919; - color: #FFFFFF; - text-shadow: none; -} -.ui.red.buttons .button:focus, -.ui.red.button:focus { - background-color: #ca1010; - color: #FFFFFF; - text-shadow: none; -} -.ui.red.buttons .button:active, -.ui.red.button:active { - background-color: #b21e1e; - color: #FFFFFF; - text-shadow: none; -} -.ui.red.buttons .active.button, -.ui.red.buttons .active.button:active, -.ui.red.active.button, -.ui.red.button .active.button:active { - background-color: #d41515; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.red.buttons .button, -.ui.basic.red.button { - -webkit-box-shadow: 0px 0px 0px 1px #DB2828 inset !important; - box-shadow: 0px 0px 0px 1px #DB2828 inset !important; - color: #DB2828 !important; -} -.ui.basic.red.buttons .button:hover, -.ui.basic.red.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #d01919 inset !important; - box-shadow: 0px 0px 0px 1px #d01919 inset !important; - color: #d01919 !important; -} -.ui.basic.red.buttons .button:focus, -.ui.basic.red.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #ca1010 inset !important; - box-shadow: 0px 0px 0px 1px #ca1010 inset !important; - color: #d01919 !important; -} -.ui.basic.red.buttons .active.button, -.ui.basic.red.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #d41515 inset !important; - box-shadow: 0px 0px 0px 1px #d41515 inset !important; - color: #b21e1e !important; -} -.ui.basic.red.buttons .button:active, -.ui.basic.red.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #b21e1e inset !important; - box-shadow: 0px 0px 0px 1px #b21e1e inset !important; - color: #b21e1e !important; -} -.ui.buttons:not(.vertical) > .basic.red.button:not(:first-child) { - margin-left: -1px; -} - -/* Inverted */ -.ui.inverted.red.buttons .button, -.ui.inverted.red.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px #FF695E inset !important; - box-shadow: 0px 0px 0px 2px #FF695E inset !important; - color: #FF695E; -} -.ui.inverted.red.buttons .button:hover, -.ui.inverted.red.button:hover, -.ui.inverted.red.buttons .button:focus, -.ui.inverted.red.button:focus, -.ui.inverted.red.buttons .button.active, -.ui.inverted.red.button.active, -.ui.inverted.red.buttons .button:active, -.ui.inverted.red.button:active { - -webkit-box-shadow: none !important; - box-shadow: none !important; - color: #FFFFFF; -} -.ui.inverted.red.buttons .button:hover, -.ui.inverted.red.button:hover { - background-color: #ff5144; -} -.ui.inverted.red.buttons .button:focus, -.ui.inverted.red.button:focus { - background-color: #ff4335; -} -.ui.inverted.red.buttons .active.button, -.ui.inverted.red.active.button { - background-color: #ff5144; -} -.ui.inverted.red.buttons .button:active, -.ui.inverted.red.button:active { - background-color: #ff392b; -} - -/* Inverted Basic */ -.ui.inverted.red.basic.buttons .button, -.ui.inverted.red.buttons .basic.button, -.ui.inverted.red.basic.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - color: #FFFFFF !important; -} -.ui.inverted.red.basic.buttons .button:hover, -.ui.inverted.red.buttons .basic.button:hover, -.ui.inverted.red.basic.button:hover { - -webkit-box-shadow: 0px 0px 0px 2px #ff5144 inset !important; - box-shadow: 0px 0px 0px 2px #ff5144 inset !important; - color: #FF695E !important; -} -.ui.inverted.red.basic.buttons .button:focus, -.ui.inverted.red.basic.buttons .button:focus, -.ui.inverted.red.basic.button:focus { - -webkit-box-shadow: 0px 0px 0px 2px #ff4335 inset !important; - box-shadow: 0px 0px 0px 2px #ff4335 inset !important; - color: #FF695E !important; -} -.ui.inverted.red.basic.buttons .active.button, -.ui.inverted.red.buttons .basic.active.button, -.ui.inverted.red.basic.active.button { - -webkit-box-shadow: 0px 0px 0px 2px #ff5144 inset !important; - box-shadow: 0px 0px 0px 2px #ff5144 inset !important; - color: #FF695E !important; -} -.ui.inverted.red.basic.buttons .button:active, -.ui.inverted.red.buttons .basic.button:active, -.ui.inverted.red.basic.button:active { - -webkit-box-shadow: 0px 0px 0px 2px #ff392b inset !important; - box-shadow: 0px 0px 0px 2px #ff392b inset !important; - color: #FF695E !important; -} - -/*--- Teal ---*/ - -.ui.teal.buttons .button, -.ui.teal.button { - background-color: #00B5AD; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.teal.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.teal.buttons .button:hover, -.ui.teal.button:hover { - background-color: #009c95; - color: #FFFFFF; - text-shadow: none; -} -.ui.teal.buttons .button:focus, -.ui.teal.button:focus { - background-color: #008c86; - color: #FFFFFF; - text-shadow: none; -} -.ui.teal.buttons .button:active, -.ui.teal.button:active { - background-color: #00827c; - color: #FFFFFF; - text-shadow: none; -} -.ui.teal.buttons .active.button, -.ui.teal.buttons .active.button:active, -.ui.teal.active.button, -.ui.teal.button .active.button:active { - background-color: #009c95; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.teal.buttons .button, -.ui.basic.teal.button { - -webkit-box-shadow: 0px 0px 0px 1px #00B5AD inset !important; - box-shadow: 0px 0px 0px 1px #00B5AD inset !important; - color: #00B5AD !important; -} -.ui.basic.teal.buttons .button:hover, -.ui.basic.teal.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #009c95 inset !important; - box-shadow: 0px 0px 0px 1px #009c95 inset !important; - color: #009c95 !important; -} -.ui.basic.teal.buttons .button:focus, -.ui.basic.teal.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #008c86 inset !important; - box-shadow: 0px 0px 0px 1px #008c86 inset !important; - color: #009c95 !important; -} -.ui.basic.teal.buttons .active.button, -.ui.basic.teal.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #009c95 inset !important; - box-shadow: 0px 0px 0px 1px #009c95 inset !important; - color: #00827c !important; -} -.ui.basic.teal.buttons .button:active, -.ui.basic.teal.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #00827c inset !important; - box-shadow: 0px 0px 0px 1px #00827c inset !important; - color: #00827c !important; -} -.ui.buttons:not(.vertical) > .basic.teal.button:not(:first-child) { - margin-left: -1px; -} - -/* Inverted */ -.ui.inverted.teal.buttons .button, -.ui.inverted.teal.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px #6DFFFF inset !important; - box-shadow: 0px 0px 0px 2px #6DFFFF inset !important; - color: #6DFFFF; -} -.ui.inverted.teal.buttons .button:hover, -.ui.inverted.teal.button:hover, -.ui.inverted.teal.buttons .button:focus, -.ui.inverted.teal.button:focus, -.ui.inverted.teal.buttons .button.active, -.ui.inverted.teal.button.active, -.ui.inverted.teal.buttons .button:active, -.ui.inverted.teal.button:active { - -webkit-box-shadow: none !important; - box-shadow: none !important; - color: rgba(0, 0, 0, 0.6); -} -.ui.inverted.teal.buttons .button:hover, -.ui.inverted.teal.button:hover { - background-color: #54ffff; -} -.ui.inverted.teal.buttons .button:focus, -.ui.inverted.teal.button:focus { - background-color: #44ffff; -} -.ui.inverted.teal.buttons .active.button, -.ui.inverted.teal.active.button { - background-color: #54ffff; -} -.ui.inverted.teal.buttons .button:active, -.ui.inverted.teal.button:active { - background-color: #3affff; -} - -/* Inverted Basic */ -.ui.inverted.teal.basic.buttons .button, -.ui.inverted.teal.buttons .basic.button, -.ui.inverted.teal.basic.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - color: #FFFFFF !important; -} -.ui.inverted.teal.basic.buttons .button:hover, -.ui.inverted.teal.buttons .basic.button:hover, -.ui.inverted.teal.basic.button:hover { - -webkit-box-shadow: 0px 0px 0px 2px #54ffff inset !important; - box-shadow: 0px 0px 0px 2px #54ffff inset !important; - color: #6DFFFF !important; -} -.ui.inverted.teal.basic.buttons .button:focus, -.ui.inverted.teal.basic.buttons .button:focus, -.ui.inverted.teal.basic.button:focus { - -webkit-box-shadow: 0px 0px 0px 2px #44ffff inset !important; - box-shadow: 0px 0px 0px 2px #44ffff inset !important; - color: #6DFFFF !important; -} -.ui.inverted.teal.basic.buttons .active.button, -.ui.inverted.teal.buttons .basic.active.button, -.ui.inverted.teal.basic.active.button { - -webkit-box-shadow: 0px 0px 0px 2px #54ffff inset !important; - box-shadow: 0px 0px 0px 2px #54ffff inset !important; - color: #6DFFFF !important; -} -.ui.inverted.teal.basic.buttons .button:active, -.ui.inverted.teal.buttons .basic.button:active, -.ui.inverted.teal.basic.button:active { - -webkit-box-shadow: 0px 0px 0px 2px #3affff inset !important; - box-shadow: 0px 0px 0px 2px #3affff inset !important; - color: #6DFFFF !important; -} - -/*--- Olive ---*/ - -.ui.olive.buttons .button, -.ui.olive.button { - background-color: #B5CC18; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.olive.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.olive.buttons .button:hover, -.ui.olive.button:hover { - background-color: #a7bd0d; - color: #FFFFFF; - text-shadow: none; -} -.ui.olive.buttons .button:focus, -.ui.olive.button:focus { - background-color: #a0b605; - color: #FFFFFF; - text-shadow: none; -} -.ui.olive.buttons .button:active, -.ui.olive.button:active { - background-color: #8d9e13; - color: #FFFFFF; - text-shadow: none; -} -.ui.olive.buttons .active.button, -.ui.olive.buttons .active.button:active, -.ui.olive.active.button, -.ui.olive.button .active.button:active { - background-color: #aac109; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.olive.buttons .button, -.ui.basic.olive.button { - -webkit-box-shadow: 0px 0px 0px 1px #B5CC18 inset !important; - box-shadow: 0px 0px 0px 1px #B5CC18 inset !important; - color: #B5CC18 !important; -} -.ui.basic.olive.buttons .button:hover, -.ui.basic.olive.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #a7bd0d inset !important; - box-shadow: 0px 0px 0px 1px #a7bd0d inset !important; - color: #a7bd0d !important; -} -.ui.basic.olive.buttons .button:focus, -.ui.basic.olive.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #a0b605 inset !important; - box-shadow: 0px 0px 0px 1px #a0b605 inset !important; - color: #a7bd0d !important; -} -.ui.basic.olive.buttons .active.button, -.ui.basic.olive.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #aac109 inset !important; - box-shadow: 0px 0px 0px 1px #aac109 inset !important; - color: #8d9e13 !important; -} -.ui.basic.olive.buttons .button:active, -.ui.basic.olive.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #8d9e13 inset !important; - box-shadow: 0px 0px 0px 1px #8d9e13 inset !important; - color: #8d9e13 !important; -} -.ui.buttons:not(.vertical) > .basic.olive.button:not(:first-child) { - margin-left: -1px; -} - -/* Inverted */ -.ui.inverted.olive.buttons .button, -.ui.inverted.olive.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px #D9E778 inset !important; - box-shadow: 0px 0px 0px 2px #D9E778 inset !important; - color: #D9E778; -} -.ui.inverted.olive.buttons .button:hover, -.ui.inverted.olive.button:hover, -.ui.inverted.olive.buttons .button:focus, -.ui.inverted.olive.button:focus, -.ui.inverted.olive.buttons .button.active, -.ui.inverted.olive.button.active, -.ui.inverted.olive.buttons .button:active, -.ui.inverted.olive.button:active { - -webkit-box-shadow: none !important; - box-shadow: none !important; - color: rgba(0, 0, 0, 0.6); -} -.ui.inverted.olive.buttons .button:hover, -.ui.inverted.olive.button:hover { - background-color: #d8ea5c; -} -.ui.inverted.olive.buttons .button:focus, -.ui.inverted.olive.button:focus { - background-color: #daef47; -} -.ui.inverted.olive.buttons .active.button, -.ui.inverted.olive.active.button { - background-color: #daed59; -} -.ui.inverted.olive.buttons .button:active, -.ui.inverted.olive.button:active { - background-color: #cddf4d; -} - -/* Inverted Basic */ -.ui.inverted.olive.basic.buttons .button, -.ui.inverted.olive.buttons .basic.button, -.ui.inverted.olive.basic.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - color: #FFFFFF !important; -} -.ui.inverted.olive.basic.buttons .button:hover, -.ui.inverted.olive.buttons .basic.button:hover, -.ui.inverted.olive.basic.button:hover { - -webkit-box-shadow: 0px 0px 0px 2px #d8ea5c inset !important; - box-shadow: 0px 0px 0px 2px #d8ea5c inset !important; - color: #D9E778 !important; -} -.ui.inverted.olive.basic.buttons .button:focus, -.ui.inverted.olive.basic.buttons .button:focus, -.ui.inverted.olive.basic.button:focus { - -webkit-box-shadow: 0px 0px 0px 2px #daef47 inset !important; - box-shadow: 0px 0px 0px 2px #daef47 inset !important; - color: #D9E778 !important; -} -.ui.inverted.olive.basic.buttons .active.button, -.ui.inverted.olive.buttons .basic.active.button, -.ui.inverted.olive.basic.active.button { - -webkit-box-shadow: 0px 0px 0px 2px #daed59 inset !important; - box-shadow: 0px 0px 0px 2px #daed59 inset !important; - color: #D9E778 !important; -} -.ui.inverted.olive.basic.buttons .button:active, -.ui.inverted.olive.buttons .basic.button:active, -.ui.inverted.olive.basic.button:active { - -webkit-box-shadow: 0px 0px 0px 2px #cddf4d inset !important; - box-shadow: 0px 0px 0px 2px #cddf4d inset !important; - color: #D9E778 !important; -} - -/*--- Yellow ---*/ - -.ui.yellow.buttons .button, -.ui.yellow.button { - background-color: #FBBD08; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.yellow.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.yellow.buttons .button:hover, -.ui.yellow.button:hover { - background-color: #eaae00; - color: #FFFFFF; - text-shadow: none; -} -.ui.yellow.buttons .button:focus, -.ui.yellow.button:focus { - background-color: #daa300; - color: #FFFFFF; - text-shadow: none; -} -.ui.yellow.buttons .button:active, -.ui.yellow.button:active { - background-color: #cd9903; - color: #FFFFFF; - text-shadow: none; -} -.ui.yellow.buttons .active.button, -.ui.yellow.buttons .active.button:active, -.ui.yellow.active.button, -.ui.yellow.button .active.button:active { - background-color: #eaae00; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.yellow.buttons .button, -.ui.basic.yellow.button { - -webkit-box-shadow: 0px 0px 0px 1px #FBBD08 inset !important; - box-shadow: 0px 0px 0px 1px #FBBD08 inset !important; - color: #FBBD08 !important; -} -.ui.basic.yellow.buttons .button:hover, -.ui.basic.yellow.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #eaae00 inset !important; - box-shadow: 0px 0px 0px 1px #eaae00 inset !important; - color: #eaae00 !important; -} -.ui.basic.yellow.buttons .button:focus, -.ui.basic.yellow.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #daa300 inset !important; - box-shadow: 0px 0px 0px 1px #daa300 inset !important; - color: #eaae00 !important; -} -.ui.basic.yellow.buttons .active.button, -.ui.basic.yellow.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #eaae00 inset !important; - box-shadow: 0px 0px 0px 1px #eaae00 inset !important; - color: #cd9903 !important; -} -.ui.basic.yellow.buttons .button:active, -.ui.basic.yellow.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #cd9903 inset !important; - box-shadow: 0px 0px 0px 1px #cd9903 inset !important; - color: #cd9903 !important; -} -.ui.buttons:not(.vertical) > .basic.yellow.button:not(:first-child) { - margin-left: -1px; -} - -/* Inverted */ -.ui.inverted.yellow.buttons .button, -.ui.inverted.yellow.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px #FFE21F inset !important; - box-shadow: 0px 0px 0px 2px #FFE21F inset !important; - color: #FFE21F; -} -.ui.inverted.yellow.buttons .button:hover, -.ui.inverted.yellow.button:hover, -.ui.inverted.yellow.buttons .button:focus, -.ui.inverted.yellow.button:focus, -.ui.inverted.yellow.buttons .button.active, -.ui.inverted.yellow.button.active, -.ui.inverted.yellow.buttons .button:active, -.ui.inverted.yellow.button:active { - -webkit-box-shadow: none !important; - box-shadow: none !important; - color: rgba(0, 0, 0, 0.6); -} -.ui.inverted.yellow.buttons .button:hover, -.ui.inverted.yellow.button:hover { - background-color: #ffdf05; -} -.ui.inverted.yellow.buttons .button:focus, -.ui.inverted.yellow.button:focus { - background-color: #f5d500; -} -.ui.inverted.yellow.buttons .active.button, -.ui.inverted.yellow.active.button { - background-color: #ffdf05; -} -.ui.inverted.yellow.buttons .button:active, -.ui.inverted.yellow.button:active { - background-color: #ebcd00; -} - -/* Inverted Basic */ -.ui.inverted.yellow.basic.buttons .button, -.ui.inverted.yellow.buttons .basic.button, -.ui.inverted.yellow.basic.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - color: #FFFFFF !important; -} -.ui.inverted.yellow.basic.buttons .button:hover, -.ui.inverted.yellow.buttons .basic.button:hover, -.ui.inverted.yellow.basic.button:hover { - -webkit-box-shadow: 0px 0px 0px 2px #ffdf05 inset !important; - box-shadow: 0px 0px 0px 2px #ffdf05 inset !important; - color: #FFE21F !important; -} -.ui.inverted.yellow.basic.buttons .button:focus, -.ui.inverted.yellow.basic.buttons .button:focus, -.ui.inverted.yellow.basic.button:focus { - -webkit-box-shadow: 0px 0px 0px 2px #f5d500 inset !important; - box-shadow: 0px 0px 0px 2px #f5d500 inset !important; - color: #FFE21F !important; -} -.ui.inverted.yellow.basic.buttons .active.button, -.ui.inverted.yellow.buttons .basic.active.button, -.ui.inverted.yellow.basic.active.button { - -webkit-box-shadow: 0px 0px 0px 2px #ffdf05 inset !important; - box-shadow: 0px 0px 0px 2px #ffdf05 inset !important; - color: #FFE21F !important; -} -.ui.inverted.yellow.basic.buttons .button:active, -.ui.inverted.yellow.buttons .basic.button:active, -.ui.inverted.yellow.basic.button:active { - -webkit-box-shadow: 0px 0px 0px 2px #ebcd00 inset !important; - box-shadow: 0px 0px 0px 2px #ebcd00 inset !important; - color: #FFE21F !important; -} - -/*------------------- - Primary ---------------------*/ - - -/*--- Standard ---*/ - -.ui.primary.buttons .button, -.ui.primary.button { - background-color: #2185D0; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.primary.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.primary.buttons .button:hover, -.ui.primary.button:hover { - background-color: #1678c2; - color: #FFFFFF; - text-shadow: none; -} -.ui.primary.buttons .button:focus, -.ui.primary.button:focus { - background-color: #0d71bb; - color: #FFFFFF; - text-shadow: none; -} -.ui.primary.buttons .button:active, -.ui.primary.button:active { - background-color: #1a69a4; - color: #FFFFFF; - text-shadow: none; -} -.ui.primary.buttons .active.button, -.ui.primary.buttons .active.button:active, -.ui.primary.active.button, -.ui.primary.button .active.button:active { - background-color: #1279c6; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.primary.buttons .button, -.ui.basic.primary.button { - -webkit-box-shadow: 0px 0px 0px 1px #2185D0 inset !important; - box-shadow: 0px 0px 0px 1px #2185D0 inset !important; - color: #2185D0 !important; -} -.ui.basic.primary.buttons .button:hover, -.ui.basic.primary.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #1678c2 inset !important; - box-shadow: 0px 0px 0px 1px #1678c2 inset !important; - color: #1678c2 !important; -} -.ui.basic.primary.buttons .button:focus, -.ui.basic.primary.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #0d71bb inset !important; - box-shadow: 0px 0px 0px 1px #0d71bb inset !important; - color: #1678c2 !important; -} -.ui.basic.primary.buttons .active.button, -.ui.basic.primary.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #1279c6 inset !important; - box-shadow: 0px 0px 0px 1px #1279c6 inset !important; - color: #1a69a4 !important; -} -.ui.basic.primary.buttons .button:active, -.ui.basic.primary.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #1a69a4 inset !important; - box-shadow: 0px 0px 0px 1px #1a69a4 inset !important; - color: #1a69a4 !important; -} -.ui.buttons:not(.vertical) > .basic.primary.button:not(:first-child) { - margin-left: -1px; -} - -/* Inverted */ -.ui.inverted.primary.buttons .button, -.ui.inverted.primary.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px #54C8FF inset !important; - box-shadow: 0px 0px 0px 2px #54C8FF inset !important; - color: #54C8FF; -} -.ui.inverted.primary.buttons .button:hover, -.ui.inverted.primary.button:hover, -.ui.inverted.primary.buttons .button:focus, -.ui.inverted.primary.button:focus, -.ui.inverted.primary.buttons .button.active, -.ui.inverted.primary.button.active, -.ui.inverted.primary.buttons .button:active, -.ui.inverted.primary.button:active { - -webkit-box-shadow: none !important; - box-shadow: none !important; - color: #FFFFFF; -} -.ui.inverted.primary.buttons .button:hover, -.ui.inverted.primary.button:hover { - background-color: #3ac0ff; -} -.ui.inverted.primary.buttons .button:focus, -.ui.inverted.primary.button:focus { - background-color: #2bbbff; -} -.ui.inverted.primary.buttons .active.button, -.ui.inverted.primary.active.button { - background-color: #3ac0ff; -} -.ui.inverted.primary.buttons .button:active, -.ui.inverted.primary.button:active { - background-color: #21b8ff; -} - -/* Inverted Basic */ -.ui.inverted.primary.basic.buttons .button, -.ui.inverted.primary.buttons .basic.button, -.ui.inverted.primary.basic.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - color: #FFFFFF !important; -} -.ui.inverted.primary.basic.buttons .button:hover, -.ui.inverted.primary.buttons .basic.button:hover, -.ui.inverted.primary.basic.button:hover { - -webkit-box-shadow: 0px 0px 0px 2px #3ac0ff inset !important; - box-shadow: 0px 0px 0px 2px #3ac0ff inset !important; - color: #54C8FF !important; -} -.ui.inverted.primary.basic.buttons .button:focus, -.ui.inverted.primary.basic.buttons .button:focus, -.ui.inverted.primary.basic.button:focus { - -webkit-box-shadow: 0px 0px 0px 2px #2bbbff inset !important; - box-shadow: 0px 0px 0px 2px #2bbbff inset !important; - color: #54C8FF !important; -} -.ui.inverted.primary.basic.buttons .active.button, -.ui.inverted.primary.buttons .basic.active.button, -.ui.inverted.primary.basic.active.button { - -webkit-box-shadow: 0px 0px 0px 2px #3ac0ff inset !important; - box-shadow: 0px 0px 0px 2px #3ac0ff inset !important; - color: #54C8FF !important; -} -.ui.inverted.primary.basic.buttons .button:active, -.ui.inverted.primary.buttons .basic.button:active, -.ui.inverted.primary.basic.button:active { - -webkit-box-shadow: 0px 0px 0px 2px #21b8ff inset !important; - box-shadow: 0px 0px 0px 2px #21b8ff inset !important; - color: #54C8FF !important; -} - -/*------------------- - Secondary ---------------------*/ - - -/* Standard */ -.ui.secondary.buttons .button, -.ui.secondary.button { - background-color: #1B1C1D; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.secondary.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.secondary.buttons .button:hover, -.ui.secondary.button:hover { - background-color: #27292a; - color: #FFFFFF; - text-shadow: none; -} -.ui.secondary.buttons .button:focus, -.ui.secondary.button:focus { - background-color: #2e3032; - color: #FFFFFF; - text-shadow: none; -} -.ui.secondary.buttons .button:active, -.ui.secondary.button:active { - background-color: #343637; - color: #FFFFFF; - text-shadow: none; -} -.ui.secondary.buttons .active.button, -.ui.secondary.buttons .active.button:active, -.ui.secondary.active.button, -.ui.secondary.button .active.button:active { - background-color: #27292a; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.secondary.buttons .button, -.ui.basic.secondary.button { - -webkit-box-shadow: 0px 0px 0px 1px #1B1C1D inset !important; - box-shadow: 0px 0px 0px 1px #1B1C1D inset !important; - color: #1B1C1D !important; -} -.ui.basic.secondary.buttons .button:hover, -.ui.basic.secondary.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #27292a inset !important; - box-shadow: 0px 0px 0px 1px #27292a inset !important; - color: #27292a !important; -} -.ui.basic.secondary.buttons .button:focus, -.ui.basic.secondary.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #2e3032 inset !important; - box-shadow: 0px 0px 0px 1px #2e3032 inset !important; - color: #27292a !important; -} -.ui.basic.secondary.buttons .active.button, -.ui.basic.secondary.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #27292a inset !important; - box-shadow: 0px 0px 0px 1px #27292a inset !important; - color: #343637 !important; -} -.ui.basic.secondary.buttons .button:active, -.ui.basic.secondary.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #343637 inset !important; - box-shadow: 0px 0px 0px 1px #343637 inset !important; - color: #343637 !important; -} -.ui.buttons:not(.vertical) > .basic.primary.button:not(:first-child) { - margin-left: -1px; -} - -/* Inverted */ -.ui.inverted.secondary.buttons .button, -.ui.inverted.secondary.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px #545454 inset !important; - box-shadow: 0px 0px 0px 2px #545454 inset !important; - color: #545454; -} -.ui.inverted.secondary.buttons .button:hover, -.ui.inverted.secondary.button:hover, -.ui.inverted.secondary.buttons .button:focus, -.ui.inverted.secondary.button:focus, -.ui.inverted.secondary.buttons .button.active, -.ui.inverted.secondary.button.active, -.ui.inverted.secondary.buttons .button:active, -.ui.inverted.secondary.button:active { - -webkit-box-shadow: none !important; - box-shadow: none !important; - color: #FFFFFF; -} -.ui.inverted.secondary.buttons .button:hover, -.ui.inverted.secondary.button:hover { - background-color: #616161; -} -.ui.inverted.secondary.buttons .button:focus, -.ui.inverted.secondary.button:focus { - background-color: #686868; -} -.ui.inverted.secondary.buttons .active.button, -.ui.inverted.secondary.active.button { - background-color: #616161; -} -.ui.inverted.secondary.buttons .button:active, -.ui.inverted.secondary.button:active { - background-color: #6e6e6e; -} - -/* Inverted Basic */ -.ui.inverted.secondary.basic.buttons .button, -.ui.inverted.secondary.buttons .basic.button, -.ui.inverted.secondary.basic.button { - background-color: transparent; - -webkit-box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - box-shadow: 0px 0px 0px 2px rgba(255, 255, 255, 0.5) inset !important; - color: #FFFFFF !important; -} -.ui.inverted.secondary.basic.buttons .button:hover, -.ui.inverted.secondary.buttons .basic.button:hover, -.ui.inverted.secondary.basic.button:hover { - -webkit-box-shadow: 0px 0px 0px 2px #616161 inset !important; - box-shadow: 0px 0px 0px 2px #616161 inset !important; - color: #545454 !important; -} -.ui.inverted.secondary.basic.buttons .button:focus, -.ui.inverted.secondary.basic.buttons .button:focus, -.ui.inverted.secondary.basic.button:focus { - -webkit-box-shadow: 0px 0px 0px 2px #686868 inset !important; - box-shadow: 0px 0px 0px 2px #686868 inset !important; - color: #545454 !important; -} -.ui.inverted.secondary.basic.buttons .active.button, -.ui.inverted.secondary.buttons .basic.active.button, -.ui.inverted.secondary.basic.active.button { - -webkit-box-shadow: 0px 0px 0px 2px #616161 inset !important; - box-shadow: 0px 0px 0px 2px #616161 inset !important; - color: #545454 !important; -} -.ui.inverted.secondary.basic.buttons .button:active, -.ui.inverted.secondary.buttons .basic.button:active, -.ui.inverted.secondary.basic.button:active { - -webkit-box-shadow: 0px 0px 0px 2px #6e6e6e inset !important; - box-shadow: 0px 0px 0px 2px #6e6e6e inset !important; - color: #545454 !important; -} - -/*--------------- - Positive -----------------*/ - - -/* Standard */ -.ui.positive.buttons .button, -.ui.positive.button { - background-color: #21BA45; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.positive.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.positive.buttons .button:hover, -.ui.positive.button:hover { - background-color: #16ab39; - color: #FFFFFF; - text-shadow: none; -} -.ui.positive.buttons .button:focus, -.ui.positive.button:focus { - background-color: #0ea432; - color: #FFFFFF; - text-shadow: none; -} -.ui.positive.buttons .button:active, -.ui.positive.button:active { - background-color: #198f35; - color: #FFFFFF; - text-shadow: none; -} -.ui.positive.buttons .active.button, -.ui.positive.buttons .active.button:active, -.ui.positive.active.button, -.ui.positive.button .active.button:active { - background-color: #13ae38; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.positive.buttons .button, -.ui.basic.positive.button { - -webkit-box-shadow: 0px 0px 0px 1px #21BA45 inset !important; - box-shadow: 0px 0px 0px 1px #21BA45 inset !important; - color: #21BA45 !important; -} -.ui.basic.positive.buttons .button:hover, -.ui.basic.positive.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #16ab39 inset !important; - box-shadow: 0px 0px 0px 1px #16ab39 inset !important; - color: #16ab39 !important; -} -.ui.basic.positive.buttons .button:focus, -.ui.basic.positive.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #0ea432 inset !important; - box-shadow: 0px 0px 0px 1px #0ea432 inset !important; - color: #16ab39 !important; -} -.ui.basic.positive.buttons .active.button, -.ui.basic.positive.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #13ae38 inset !important; - box-shadow: 0px 0px 0px 1px #13ae38 inset !important; - color: #198f35 !important; -} -.ui.basic.positive.buttons .button:active, -.ui.basic.positive.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #198f35 inset !important; - box-shadow: 0px 0px 0px 1px #198f35 inset !important; - color: #198f35 !important; -} -.ui.buttons:not(.vertical) > .basic.primary.button:not(:first-child) { - margin-left: -1px; -} - -/*--------------- - Negative -----------------*/ - - -/* Standard */ -.ui.negative.buttons .button, -.ui.negative.button { - background-color: #DB2828; - color: #FFFFFF; - text-shadow: none; - background-image: none; -} -.ui.negative.button { - -webkit-box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.negative.buttons .button:hover, -.ui.negative.button:hover { - background-color: #d01919; - color: #FFFFFF; - text-shadow: none; -} -.ui.negative.buttons .button:focus, -.ui.negative.button:focus { - background-color: #ca1010; - color: #FFFFFF; - text-shadow: none; -} -.ui.negative.buttons .button:active, -.ui.negative.button:active { - background-color: #b21e1e; - color: #FFFFFF; - text-shadow: none; -} -.ui.negative.buttons .active.button, -.ui.negative.buttons .active.button:active, -.ui.negative.active.button, -.ui.negative.button .active.button:active { - background-color: #d41515; - color: #FFFFFF; - text-shadow: none; -} - -/* Basic */ -.ui.basic.negative.buttons .button, -.ui.basic.negative.button { - -webkit-box-shadow: 0px 0px 0px 1px #DB2828 inset !important; - box-shadow: 0px 0px 0px 1px #DB2828 inset !important; - color: #DB2828 !important; -} -.ui.basic.negative.buttons .button:hover, -.ui.basic.negative.button:hover { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #d01919 inset !important; - box-shadow: 0px 0px 0px 1px #d01919 inset !important; - color: #d01919 !important; -} -.ui.basic.negative.buttons .button:focus, -.ui.basic.negative.button:focus { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #ca1010 inset !important; - box-shadow: 0px 0px 0px 1px #ca1010 inset !important; - color: #d01919 !important; -} -.ui.basic.negative.buttons .active.button, -.ui.basic.negative.active.button { - background: transparent !important; - -webkit-box-shadow: 0px 0px 0px 1px #d41515 inset !important; - box-shadow: 0px 0px 0px 1px #d41515 inset !important; - color: #b21e1e !important; -} -.ui.basic.negative.buttons .button:active, -.ui.basic.negative.button:active { - -webkit-box-shadow: 0px 0px 0px 1px #b21e1e inset !important; - box-shadow: 0px 0px 0px 1px #b21e1e inset !important; - color: #b21e1e !important; -} -.ui.buttons:not(.vertical) > .basic.primary.button:not(:first-child) { - margin-left: -1px; -} - - -/******************************* - Groups -*******************************/ - -.ui.buttons { - display: -webkit-inline-box; - display: -ms-inline-flexbox; - display: inline-flex; - -webkit-box-orient: horizontal; - -webkit-box-direction: normal; - -ms-flex-direction: row; - flex-direction: row; - font-size: 0em; - vertical-align: baseline; - margin: 0em 0.25em 0em 0em; -} -.ui.buttons:not(.basic):not(.inverted) { - -webkit-box-shadow: none; - box-shadow: none; -} - -/* Clearfix */ -.ui.buttons:after { - content: "."; - display: block; - height: 0; - clear: both; - visibility: hidden; -} - -/* Standard Group */ -.ui.buttons .button { - -webkit-box-flex: 1; - -ms-flex: 1 0 auto; - flex: 1 0 auto; - margin: 0em; - border-radius: 0em; - margin: 0px 0px 0px 0px; -} -.ui.buttons > .ui.button:not(.basic):not(.inverted), -.ui.buttons:not(.basic):not(.inverted) > .button { - -webkit-box-shadow: 0px 0px 0px 1px transparent inset, 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 0px 0px 1px transparent inset, 0px 0em 0px 0px rgba(34, 36, 38, 0.15) inset; -} -.ui.buttons .button:first-child { - border-left: none; - margin-left: 0em; - border-top-left-radius: 0.28571429rem; - border-bottom-left-radius: 0.28571429rem; -} -.ui.buttons .button:last-child { - border-top-right-radius: 0.28571429rem; - border-bottom-right-radius: 0.28571429rem; -} - -/* Vertical Style */ -.ui.vertical.buttons { - display: -webkit-inline-box; - display: -ms-inline-flexbox; - display: inline-flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; -} -.ui.vertical.buttons .button { - display: block; - float: none; - width: 100%; - margin: 0px 0px 0px 0px; - -webkit-box-shadow: none; - box-shadow: none; - border-radius: 0em; -} -.ui.vertical.buttons .button:first-child { - border-top-left-radius: 0.28571429rem; - border-top-right-radius: 0.28571429rem; -} -.ui.vertical.buttons .button:last-child { - margin-bottom: 0px; - border-bottom-left-radius: 0.28571429rem; - border-bottom-right-radius: 0.28571429rem; -} -.ui.vertical.buttons .button:only-child { - border-radius: 0.28571429rem; -} - - -/******************************* - Theme Overrides -*******************************/ - - - -/******************************* - Site Overrides -*******************************/ - diff --git a/static/semantic/components/button.min.css b/static/semantic/components/button.min.css deleted file mode 100644 index bd326eb91..000000000 --- a/static/semantic/components/button.min.css +++ /dev/null @@ -1,9 +0,0 @@ -/*! - * # Semantic UI 2.4.0 - Button - * http://github.com/semantic-org/semantic-ui/ - * - * - * Released under the MIT license - * http://opensource.org/licenses/MIT - * - */.ui.button{cursor:pointer;display:inline-block;min-height:1em;outline:0;border:none;vertical-align:baseline;background:#e0e1e2 none;color:rgba(0,0,0,.6);font-family:Lato,'Helvetica Neue',Arial,Helvetica,sans-serif;margin:0 .25em 0 0;padding:.78571429em 1.5em .78571429em;text-transform:none;text-shadow:none;font-weight:700;line-height:1em;font-style:normal;text-align:center;text-decoration:none;border-radius:.28571429rem;-webkit-box-shadow:0 0 0 1px transparent inset,0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 1px transparent inset,0 0 0 0 rgba(34,36,38,.15) inset;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:opacity .1s ease,background-color .1s ease,color .1s ease,background .1s ease,-webkit-box-shadow .1s ease;transition:opacity .1s ease,background-color .1s ease,color .1s ease,background .1s ease,-webkit-box-shadow .1s ease;transition:opacity .1s ease,background-color .1s ease,color .1s ease,box-shadow .1s ease,background .1s ease;transition:opacity .1s ease,background-color .1s ease,color .1s ease,box-shadow .1s ease,background .1s ease,-webkit-box-shadow .1s ease;will-change:'';-webkit-tap-highlight-color:transparent}.ui.button:hover{background-color:#cacbcd;background-image:none;-webkit-box-shadow:0 0 0 1px transparent inset,0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 1px transparent inset,0 0 0 0 rgba(34,36,38,.15) inset;color:rgba(0,0,0,.8)}.ui.button:hover .icon{opacity:.85}.ui.button:focus{background-color:#cacbcd;color:rgba(0,0,0,.8);background-image:''!important;-webkit-box-shadow:''!important;box-shadow:''!important}.ui.button:focus .icon{opacity:.85}.ui.active.button:active,.ui.button:active{background-color:#babbbc;background-image:'';color:rgba(0,0,0,.9);-webkit-box-shadow:0 0 0 1px transparent inset,none;box-shadow:0 0 0 1px transparent inset,none}.ui.active.button{background-color:#c0c1c2;background-image:none;-webkit-box-shadow:0 0 0 1px transparent inset;box-shadow:0 0 0 1px transparent inset;color:rgba(0,0,0,.95)}.ui.active.button:hover{background-color:#c0c1c2;background-image:none;color:rgba(0,0,0,.95)}.ui.active.button:active{background-color:#c0c1c2;background-image:none}.ui.loading.loading.loading.loading.loading.loading.button{position:relative;cursor:default;text-shadow:none!important;color:transparent!important;opacity:1;pointer-events:auto;-webkit-transition:all 0s linear,opacity .1s ease;transition:all 0s linear,opacity .1s ease}.ui.loading.button:before{position:absolute;content:'';top:50%;left:50%;margin:-.64285714em 0 0 -.64285714em;width:1.28571429em;height:1.28571429em;border-radius:500rem;border:.2em solid rgba(0,0,0,.15)}.ui.loading.button:after{position:absolute;content:'';top:50%;left:50%;margin:-.64285714em 0 0 -.64285714em;width:1.28571429em;height:1.28571429em;-webkit-animation:button-spin .6s linear;animation:button-spin .6s linear;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;border-radius:500rem;border-color:#fff transparent transparent;border-style:solid;border-width:.2em;-webkit-box-shadow:0 0 0 1px transparent;box-shadow:0 0 0 1px transparent}.ui.labeled.icon.loading.button .icon{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}@-webkit-keyframes button-spin{from{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes button-spin{from{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.ui.basic.loading.button:not(.inverted):before{border-color:rgba(0,0,0,.1)}.ui.basic.loading.button:not(.inverted):after{border-top-color:#767676}.ui.button:disabled,.ui.buttons .disabled.button,.ui.disabled.active.button,.ui.disabled.button,.ui.disabled.button:hover{cursor:default;opacity:.45!important;background-image:none!important;-webkit-box-shadow:none!important;box-shadow:none!important;pointer-events:none!important}.ui.basic.buttons .ui.disabled.button{border-color:rgba(34,36,38,.5)}.ui.animated.button{position:relative;overflow:hidden;padding-right:0!important;vertical-align:middle;z-index:1}.ui.animated.button .content{will-change:transform,opacity}.ui.animated.button .visible.content{position:relative;margin-right:1.5em}.ui.animated.button .hidden.content{position:absolute;width:100%}.ui.animated.button .hidden.content,.ui.animated.button .visible.content{-webkit-transition:right .3s ease 0s;transition:right .3s ease 0s}.ui.animated.button .visible.content{left:auto;right:0}.ui.animated.button .hidden.content{top:50%;left:auto;right:-100%;margin-top:-.5em}.ui.animated.button:focus .visible.content,.ui.animated.button:hover .visible.content{left:auto;right:200%}.ui.animated.button:focus .hidden.content,.ui.animated.button:hover .hidden.content{left:auto;right:0}.ui.vertical.animated.button .hidden.content,.ui.vertical.animated.button .visible.content{-webkit-transition:top .3s ease,-webkit-transform .3s ease;transition:top .3s ease,-webkit-transform .3s ease;transition:top .3s ease,transform .3s ease;transition:top .3s ease,transform .3s ease,-webkit-transform .3s ease}.ui.vertical.animated.button .visible.content{-webkit-transform:translateY(0);transform:translateY(0);right:auto}.ui.vertical.animated.button .hidden.content{top:-50%;left:0;right:auto}.ui.vertical.animated.button:focus .visible.content,.ui.vertical.animated.button:hover .visible.content{-webkit-transform:translateY(200%);transform:translateY(200%);right:auto}.ui.vertical.animated.button:focus .hidden.content,.ui.vertical.animated.button:hover .hidden.content{top:50%;right:auto}.ui.fade.animated.button .hidden.content,.ui.fade.animated.button .visible.content{-webkit-transition:opacity .3s ease,-webkit-transform .3s ease;transition:opacity .3s ease,-webkit-transform .3s ease;transition:opacity .3s ease,transform .3s ease;transition:opacity .3s ease,transform .3s ease,-webkit-transform .3s ease}.ui.fade.animated.button .visible.content{left:auto;right:auto;opacity:1;-webkit-transform:scale(1);transform:scale(1)}.ui.fade.animated.button .hidden.content{opacity:0;left:0;right:auto;-webkit-transform:scale(1.5);transform:scale(1.5)}.ui.fade.animated.button:focus .visible.content,.ui.fade.animated.button:hover .visible.content{left:auto;right:auto;opacity:0;-webkit-transform:scale(.75);transform:scale(.75)}.ui.fade.animated.button:focus .hidden.content,.ui.fade.animated.button:hover .hidden.content{left:0;right:auto;opacity:1;-webkit-transform:scale(1);transform:scale(1)}.ui.inverted.button{-webkit-box-shadow:0 0 0 2px #fff inset!important;box-shadow:0 0 0 2px #fff inset!important;background:transparent none;color:#fff;text-shadow:none!important}.ui.inverted.buttons .button{margin:0 0 0 -2px}.ui.inverted.buttons .button:first-child{margin-left:0}.ui.inverted.vertical.buttons .button{margin:0 0 -2px 0}.ui.inverted.vertical.buttons .button:first-child{margin-top:0}.ui.inverted.button:hover{background:#fff;-webkit-box-shadow:0 0 0 2px #fff inset!important;box-shadow:0 0 0 2px #fff inset!important;color:rgba(0,0,0,.8)}.ui.inverted.button.active,.ui.inverted.button:focus{background:#fff;-webkit-box-shadow:0 0 0 2px #fff inset!important;box-shadow:0 0 0 2px #fff inset!important;color:rgba(0,0,0,.8)}.ui.inverted.button.active:focus{background:#dcddde;-webkit-box-shadow:0 0 0 2px #dcddde inset!important;box-shadow:0 0 0 2px #dcddde inset!important;color:rgba(0,0,0,.8)}.ui.labeled.button:not(.icon){display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;background:0 0!important;padding:0!important;border:none!important;-webkit-box-shadow:none!important;box-shadow:none!important}.ui.labeled.button>.button{margin:0}.ui.labeled.button>.label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0 0 0 -1px!important;padding:'';font-size:1em;border-color:rgba(34,36,38,.15)}.ui.labeled.button>.tag.label:before{width:1.85em;height:1.85em}.ui.labeled.button:not([class*="left labeled"])>.button{border-top-right-radius:0;border-bottom-right-radius:0}.ui.labeled.button:not([class*="left labeled"])>.label{border-top-left-radius:0;border-bottom-left-radius:0}.ui[class*="left labeled"].button>.button{border-top-left-radius:0;border-bottom-left-radius:0}.ui[class*="left labeled"].button>.label{border-top-right-radius:0;border-bottom-right-radius:0}.ui.facebook.button{background-color:#3b5998;color:#fff;text-shadow:none;background-image:none;-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.facebook.button:hover{background-color:#304d8a;color:#fff;text-shadow:none}.ui.facebook.button:active{background-color:#2d4373;color:#fff;text-shadow:none}.ui.twitter.button{background-color:#55acee;color:#fff;text-shadow:none;background-image:none;-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.twitter.button:hover{background-color:#35a2f4;color:#fff;text-shadow:none}.ui.twitter.button:active{background-color:#2795e9;color:#fff;text-shadow:none}.ui.google.plus.button{background-color:#dd4b39;color:#fff;text-shadow:none;background-image:none;-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.google.plus.button:hover{background-color:#e0321c;color:#fff;text-shadow:none}.ui.google.plus.button:active{background-color:#c23321;color:#fff;text-shadow:none}.ui.linkedin.button{background-color:#1f88be;color:#fff;text-shadow:none}.ui.linkedin.button:hover{background-color:#147baf;color:#fff;text-shadow:none}.ui.linkedin.button:active{background-color:#186992;color:#fff;text-shadow:none}.ui.youtube.button{background-color:red;color:#fff;text-shadow:none;background-image:none;-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.youtube.button:hover{background-color:#e60000;color:#fff;text-shadow:none}.ui.youtube.button:active{background-color:#c00;color:#fff;text-shadow:none}.ui.instagram.button{background-color:#49769c;color:#fff;text-shadow:none;background-image:none;-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.instagram.button:hover{background-color:#3d698e;color:#fff;text-shadow:none}.ui.instagram.button:active{background-color:#395c79;color:#fff;text-shadow:none}.ui.pinterest.button{background-color:#bd081c;color:#fff;text-shadow:none;background-image:none;-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.pinterest.button:hover{background-color:#ac0013;color:#fff;text-shadow:none}.ui.pinterest.button:active{background-color:#8c0615;color:#fff;text-shadow:none}.ui.vk.button{background-color:#4d7198;color:#fff;background-image:none;-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.vk.button:hover{background-color:#41648a;color:#fff}.ui.vk.button:active{background-color:#3c5876;color:#fff}.ui.button>.icon:not(.button){height:.85714286em;opacity:.8;margin:0 .42857143em 0 -.21428571em;-webkit-transition:opacity .1s ease;transition:opacity .1s ease;vertical-align:'';color:''}.ui.button:not(.icon)>.icon:not(.button):not(.dropdown){margin:0 .42857143em 0 -.21428571em}.ui.button:not(.icon)>.right.icon:not(.button):not(.dropdown){margin:0 -.21428571em 0 .42857143em}.ui[class*="left floated"].button,.ui[class*="left floated"].buttons{float:left;margin-left:0;margin-right:.25em}.ui[class*="right floated"].button,.ui[class*="right floated"].buttons{float:right;margin-right:0;margin-left:.25em}.ui.compact.button,.ui.compact.buttons .button{padding:.58928571em 1.125em .58928571em}.ui.compact.icon.button,.ui.compact.icon.buttons .button{padding:.58928571em .58928571em .58928571em}.ui.compact.labeled.icon.button,.ui.compact.labeled.icon.buttons .button{padding:.58928571em 3.69642857em .58928571em}.ui.mini.button,.ui.mini.buttons .button,.ui.mini.buttons .or{font-size:.78571429rem}.ui.tiny.button,.ui.tiny.buttons .button,.ui.tiny.buttons .or{font-size:.85714286rem}.ui.small.button,.ui.small.buttons .button,.ui.small.buttons .or{font-size:.92857143rem}.ui.button,.ui.buttons .button,.ui.buttons .or{font-size:1rem}.ui.large.button,.ui.large.buttons .button,.ui.large.buttons .or{font-size:1.14285714rem}.ui.big.button,.ui.big.buttons .button,.ui.big.buttons .or{font-size:1.28571429rem}.ui.huge.button,.ui.huge.buttons .button,.ui.huge.buttons .or{font-size:1.42857143rem}.ui.massive.button,.ui.massive.buttons .button,.ui.massive.buttons .or{font-size:1.71428571rem}.ui.icon.button,.ui.icon.buttons .button{padding:.78571429em .78571429em .78571429em}.ui.icon.button>.icon,.ui.icon.buttons .button>.icon{opacity:.9;margin:0!important;vertical-align:top}.ui.basic.button,.ui.basic.buttons .button{background:transparent none!important;color:rgba(0,0,0,.6)!important;font-weight:400;border-radius:.28571429rem;text-transform:none;text-shadow:none!important;-webkit-box-shadow:0 0 0 1px rgba(34,36,38,.15) inset;box-shadow:0 0 0 1px rgba(34,36,38,.15) inset}.ui.basic.buttons{-webkit-box-shadow:none;box-shadow:none;border:1px solid rgba(34,36,38,.15);border-radius:.28571429rem}.ui.basic.buttons .button{border-radius:0}.ui.basic.button:hover,.ui.basic.buttons .button:hover{background:#fff!important;color:rgba(0,0,0,.8)!important;-webkit-box-shadow:0 0 0 1px rgba(34,36,38,.35) inset,0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 1px rgba(34,36,38,.35) inset,0 0 0 0 rgba(34,36,38,.15) inset}.ui.basic.button:focus,.ui.basic.buttons .button:focus{background:#fff!important;color:rgba(0,0,0,.8)!important;-webkit-box-shadow:0 0 0 1px rgba(34,36,38,.35) inset,0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 1px rgba(34,36,38,.35) inset,0 0 0 0 rgba(34,36,38,.15) inset}.ui.basic.button:active,.ui.basic.buttons .button:active{background:#f8f8f8!important;color:rgba(0,0,0,.9)!important;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.15) inset,0 1px 4px 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 1px rgba(0,0,0,.15) inset,0 1px 4px 0 rgba(34,36,38,.15) inset}.ui.basic.active.button,.ui.basic.buttons .active.button{background:rgba(0,0,0,.05)!important;-webkit-box-shadow:''!important;box-shadow:''!important;color:rgba(0,0,0,.95)!important}.ui.basic.active.button:hover,.ui.basic.buttons .active.button:hover{background-color:rgba(0,0,0,.05)}.ui.basic.buttons .button:hover{-webkit-box-shadow:0 0 0 1px rgba(34,36,38,.35) inset,0 0 0 0 rgba(34,36,38,.15) inset inset;box-shadow:0 0 0 1px rgba(34,36,38,.35) inset,0 0 0 0 rgba(34,36,38,.15) inset inset}.ui.basic.buttons .button:active{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.15) inset,0 1px 4px 0 rgba(34,36,38,.15) inset inset;box-shadow:0 0 0 1px rgba(0,0,0,.15) inset,0 1px 4px 0 rgba(34,36,38,.15) inset inset}.ui.basic.buttons .active.button{-webkit-box-shadow:''!important;box-shadow:''!important}.ui.basic.inverted.button,.ui.basic.inverted.buttons .button{background-color:transparent!important;color:#f9fafb!important;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important}.ui.basic.inverted.button:hover,.ui.basic.inverted.buttons .button:hover{color:#fff!important;-webkit-box-shadow:0 0 0 2px #fff inset!important;box-shadow:0 0 0 2px #fff inset!important}.ui.basic.inverted.button:focus,.ui.basic.inverted.buttons .button:focus{color:#fff!important;-webkit-box-shadow:0 0 0 2px #fff inset!important;box-shadow:0 0 0 2px #fff inset!important}.ui.basic.inverted.button:active,.ui.basic.inverted.buttons .button:active{background-color:rgba(255,255,255,.08)!important;color:#fff!important;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.9) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.9) inset!important}.ui.basic.inverted.active.button,.ui.basic.inverted.buttons .active.button{background-color:rgba(255,255,255,.08);color:#fff;text-shadow:none;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.7) inset;box-shadow:0 0 0 2px rgba(255,255,255,.7) inset}.ui.basic.inverted.active.button:hover,.ui.basic.inverted.buttons .active.button:hover{background-color:rgba(255,255,255,.15);-webkit-box-shadow:0 0 0 2px #fff inset!important;box-shadow:0 0 0 2px #fff inset!important}.ui.basic.buttons .button{border-left:1px solid rgba(34,36,38,.15);-webkit-box-shadow:none;box-shadow:none}.ui.basic.vertical.buttons .button{border-left:none}.ui.basic.vertical.buttons .button{border-left-width:0;border-top:1px solid rgba(34,36,38,.15)}.ui.basic.vertical.buttons .button:first-child{border-top-width:0}.ui.labeled.icon.button,.ui.labeled.icon.buttons .button{position:relative;padding-left:4.07142857em!important;padding-right:1.5em!important}.ui.labeled.icon.button>.icon,.ui.labeled.icon.buttons>.button>.icon{position:absolute;height:100%;line-height:1;border-radius:0;border-top-left-radius:inherit;border-bottom-left-radius:inherit;text-align:center;margin:0;width:2.57142857em;background-color:rgba(0,0,0,.05);color:'';-webkit-box-shadow:-1px 0 0 0 transparent inset;box-shadow:-1px 0 0 0 transparent inset}.ui.labeled.icon.button>.icon,.ui.labeled.icon.buttons>.button>.icon{top:0;left:0}.ui[class*="right labeled"].icon.button{padding-right:4.07142857em!important;padding-left:1.5em!important}.ui[class*="right labeled"].icon.button>.icon{left:auto;right:0;border-radius:0;border-top-right-radius:inherit;border-bottom-right-radius:inherit;-webkit-box-shadow:1px 0 0 0 transparent inset;box-shadow:1px 0 0 0 transparent inset}.ui.labeled.icon.button>.icon:after,.ui.labeled.icon.button>.icon:before,.ui.labeled.icon.buttons>.button>.icon:after,.ui.labeled.icon.buttons>.button>.icon:before{display:block;position:absolute;width:100%;top:50%;text-align:center;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.ui.labeled.icon.buttons .button>.icon{border-radius:0}.ui.labeled.icon.buttons .button:first-child>.icon{border-top-left-radius:.28571429rem;border-bottom-left-radius:.28571429rem}.ui.labeled.icon.buttons .button:last-child>.icon{border-top-right-radius:.28571429rem;border-bottom-right-radius:.28571429rem}.ui.vertical.labeled.icon.buttons .button:first-child>.icon{border-radius:0;border-top-left-radius:.28571429rem}.ui.vertical.labeled.icon.buttons .button:last-child>.icon{border-radius:0;border-bottom-left-radius:.28571429rem}.ui.fluid[class*="left labeled"].icon.button,.ui.fluid[class*="right labeled"].icon.button{padding-left:1.5em!important;padding-right:1.5em!important}.ui.button.toggle.active,.ui.buttons .button.toggle.active,.ui.toggle.buttons .active.button{background-color:#21ba45!important;-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:none;color:#fff!important}.ui.button.toggle.active:hover{background-color:#16ab39!important;text-shadow:none;color:#fff!important}.ui.circular.button{border-radius:10em}.ui.circular.button>.icon{width:1em;vertical-align:baseline}.ui.buttons .or{position:relative;width:.3em;height:2.57142857em;z-index:3}.ui.buttons .or:before{position:absolute;text-align:center;border-radius:500rem;content:'or';top:50%;left:50%;background-color:#fff;text-shadow:none;margin-top:-.89285714em;margin-left:-.89285714em;width:1.78571429em;height:1.78571429em;line-height:1.78571429em;color:rgba(0,0,0,.4);font-style:normal;font-weight:700;-webkit-box-shadow:0 0 0 1px transparent inset;box-shadow:0 0 0 1px transparent inset}.ui.buttons .or[data-text]:before{content:attr(data-text)}.ui.fluid.buttons .or{width:0!important}.ui.fluid.buttons .or:after{display:none}.ui.attached.button{position:relative;display:block;margin:0;border-radius:0;-webkit-box-shadow:0 0 0 1px rgba(34,36,38,.15)!important;box-shadow:0 0 0 1px rgba(34,36,38,.15)!important}.ui.attached.top.button{border-radius:.28571429rem .28571429rem 0 0}.ui.attached.bottom.button{border-radius:0 0 .28571429rem .28571429rem}.ui.left.attached.button{display:inline-block;border-left:none;text-align:right;padding-right:.75em;border-radius:.28571429rem 0 0 .28571429rem}.ui.right.attached.button{display:inline-block;text-align:left;padding-left:.75em;border-radius:0 .28571429rem .28571429rem 0}.ui.attached.buttons{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;border-radius:0;width:auto!important;z-index:2;margin-left:-1px;margin-right:-1px}.ui.attached.buttons .button{margin:0}.ui.attached.buttons .button:first-child{border-radius:0}.ui.attached.buttons .button:last-child{border-radius:0}.ui[class*="top attached"].buttons{margin-bottom:-1px;border-radius:.28571429rem .28571429rem 0 0}.ui[class*="top attached"].buttons .button:first-child{border-radius:.28571429rem 0 0 0}.ui[class*="top attached"].buttons .button:last-child{border-radius:0 .28571429rem 0 0}.ui[class*="bottom attached"].buttons{margin-top:-1px;border-radius:0 0 .28571429rem .28571429rem}.ui[class*="bottom attached"].buttons .button:first-child{border-radius:0 0 0 .28571429rem}.ui[class*="bottom attached"].buttons .button:last-child{border-radius:0 0 .28571429rem 0}.ui[class*="left attached"].buttons{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;margin-right:0;margin-left:-1px;border-radius:0 .28571429rem .28571429rem 0}.ui[class*="left attached"].buttons .button:first-child{margin-left:-1px;border-radius:0 .28571429rem 0 0}.ui[class*="left attached"].buttons .button:last-child{margin-left:-1px;border-radius:0 0 .28571429rem 0}.ui[class*="right attached"].buttons{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;margin-left:0;margin-right:-1px;border-radius:.28571429rem 0 0 .28571429rem}.ui[class*="right attached"].buttons .button:first-child{margin-left:-1px;border-radius:.28571429rem 0 0 0}.ui[class*="right attached"].buttons .button:last-child{margin-left:-1px;border-radius:0 0 0 .28571429rem}.ui.fluid.button,.ui.fluid.buttons{width:100%}.ui.fluid.button{display:block}.ui.two.buttons{width:100%}.ui.two.buttons>.button{width:50%}.ui.three.buttons{width:100%}.ui.three.buttons>.button{width:33.333%}.ui.four.buttons{width:100%}.ui.four.buttons>.button{width:25%}.ui.five.buttons{width:100%}.ui.five.buttons>.button{width:20%}.ui.six.buttons{width:100%}.ui.six.buttons>.button{width:16.666%}.ui.seven.buttons{width:100%}.ui.seven.buttons>.button{width:14.285%}.ui.eight.buttons{width:100%}.ui.eight.buttons>.button{width:12.5%}.ui.nine.buttons{width:100%}.ui.nine.buttons>.button{width:11.11%}.ui.ten.buttons{width:100%}.ui.ten.buttons>.button{width:10%}.ui.eleven.buttons{width:100%}.ui.eleven.buttons>.button{width:9.09%}.ui.twelve.buttons{width:100%}.ui.twelve.buttons>.button{width:8.3333%}.ui.fluid.vertical.buttons,.ui.fluid.vertical.buttons>.button{display:-webkit-box;display:-ms-flexbox;display:flex;width:auto}.ui.two.vertical.buttons>.button{height:50%}.ui.three.vertical.buttons>.button{height:33.333%}.ui.four.vertical.buttons>.button{height:25%}.ui.five.vertical.buttons>.button{height:20%}.ui.six.vertical.buttons>.button{height:16.666%}.ui.seven.vertical.buttons>.button{height:14.285%}.ui.eight.vertical.buttons>.button{height:12.5%}.ui.nine.vertical.buttons>.button{height:11.11%}.ui.ten.vertical.buttons>.button{height:10%}.ui.eleven.vertical.buttons>.button{height:9.09%}.ui.twelve.vertical.buttons>.button{height:8.3333%}.ui.black.button,.ui.black.buttons .button{background-color:#1b1c1d;color:#fff;text-shadow:none;background-image:none}.ui.black.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.black.button:hover,.ui.black.buttons .button:hover{background-color:#27292a;color:#fff;text-shadow:none}.ui.black.button:focus,.ui.black.buttons .button:focus{background-color:#2f3032;color:#fff;text-shadow:none}.ui.black.button:active,.ui.black.buttons .button:active{background-color:#343637;color:#fff;text-shadow:none}.ui.black.active.button,.ui.black.button .active.button:active,.ui.black.buttons .active.button,.ui.black.buttons .active.button:active{background-color:#0f0f10;color:#fff;text-shadow:none}.ui.basic.black.button,.ui.basic.black.buttons .button{-webkit-box-shadow:0 0 0 1px #1b1c1d inset!important;box-shadow:0 0 0 1px #1b1c1d inset!important;color:#1b1c1d!important}.ui.basic.black.button:hover,.ui.basic.black.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #27292a inset!important;box-shadow:0 0 0 1px #27292a inset!important;color:#27292a!important}.ui.basic.black.button:focus,.ui.basic.black.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #2f3032 inset!important;box-shadow:0 0 0 1px #2f3032 inset!important;color:#27292a!important}.ui.basic.black.active.button,.ui.basic.black.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #0f0f10 inset!important;box-shadow:0 0 0 1px #0f0f10 inset!important;color:#343637!important}.ui.basic.black.button:active,.ui.basic.black.buttons .button:active{-webkit-box-shadow:0 0 0 1px #343637 inset!important;box-shadow:0 0 0 1px #343637 inset!important;color:#343637!important}.ui.buttons:not(.vertical)>.basic.black.button:not(:first-child){margin-left:-1px}.ui.inverted.black.button,.ui.inverted.black.buttons .button{background-color:transparent;-webkit-box-shadow:0 0 0 2px #d4d4d5 inset!important;box-shadow:0 0 0 2px #d4d4d5 inset!important;color:#fff}.ui.inverted.black.button.active,.ui.inverted.black.button:active,.ui.inverted.black.button:focus,.ui.inverted.black.button:hover,.ui.inverted.black.buttons .button.active,.ui.inverted.black.buttons .button:active,.ui.inverted.black.buttons .button:focus,.ui.inverted.black.buttons .button:hover{-webkit-box-shadow:none!important;box-shadow:none!important;color:#fff}.ui.inverted.black.button:hover,.ui.inverted.black.buttons .button:hover{background-color:#000}.ui.inverted.black.button:focus,.ui.inverted.black.buttons .button:focus{background-color:#000}.ui.inverted.black.active.button,.ui.inverted.black.buttons .active.button{background-color:#000}.ui.inverted.black.button:active,.ui.inverted.black.buttons .button:active{background-color:#000}.ui.inverted.black.basic.button,.ui.inverted.black.basic.buttons .button,.ui.inverted.black.buttons .basic.button{background-color:transparent;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;color:#fff!important}.ui.inverted.black.basic.button:hover,.ui.inverted.black.basic.buttons .button:hover,.ui.inverted.black.buttons .basic.button:hover{-webkit-box-shadow:0 0 0 2px #000 inset!important;box-shadow:0 0 0 2px #000 inset!important;color:#fff!important}.ui.inverted.black.basic.button:focus,.ui.inverted.black.basic.buttons .button:focus{-webkit-box-shadow:0 0 0 2px #000 inset!important;box-shadow:0 0 0 2px #000 inset!important;color:#545454!important}.ui.inverted.black.basic.active.button,.ui.inverted.black.basic.buttons .active.button,.ui.inverted.black.buttons .basic.active.button{-webkit-box-shadow:0 0 0 2px #000 inset!important;box-shadow:0 0 0 2px #000 inset!important;color:#fff!important}.ui.inverted.black.basic.button:active,.ui.inverted.black.basic.buttons .button:active,.ui.inverted.black.buttons .basic.button:active{-webkit-box-shadow:0 0 0 2px #000 inset!important;box-shadow:0 0 0 2px #000 inset!important;color:#fff!important}.ui.grey.button,.ui.grey.buttons .button{background-color:#767676;color:#fff;text-shadow:none;background-image:none}.ui.grey.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.grey.button:hover,.ui.grey.buttons .button:hover{background-color:#838383;color:#fff;text-shadow:none}.ui.grey.button:focus,.ui.grey.buttons .button:focus{background-color:#8a8a8a;color:#fff;text-shadow:none}.ui.grey.button:active,.ui.grey.buttons .button:active{background-color:#909090;color:#fff;text-shadow:none}.ui.grey.active.button,.ui.grey.button .active.button:active,.ui.grey.buttons .active.button,.ui.grey.buttons .active.button:active{background-color:#696969;color:#fff;text-shadow:none}.ui.basic.grey.button,.ui.basic.grey.buttons .button{-webkit-box-shadow:0 0 0 1px #767676 inset!important;box-shadow:0 0 0 1px #767676 inset!important;color:#767676!important}.ui.basic.grey.button:hover,.ui.basic.grey.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #838383 inset!important;box-shadow:0 0 0 1px #838383 inset!important;color:#838383!important}.ui.basic.grey.button:focus,.ui.basic.grey.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #8a8a8a inset!important;box-shadow:0 0 0 1px #8a8a8a inset!important;color:#838383!important}.ui.basic.grey.active.button,.ui.basic.grey.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #696969 inset!important;box-shadow:0 0 0 1px #696969 inset!important;color:#909090!important}.ui.basic.grey.button:active,.ui.basic.grey.buttons .button:active{-webkit-box-shadow:0 0 0 1px #909090 inset!important;box-shadow:0 0 0 1px #909090 inset!important;color:#909090!important}.ui.buttons:not(.vertical)>.basic.grey.button:not(:first-child){margin-left:-1px}.ui.inverted.grey.button,.ui.inverted.grey.buttons .button{background-color:transparent;-webkit-box-shadow:0 0 0 2px #d4d4d5 inset!important;box-shadow:0 0 0 2px #d4d4d5 inset!important;color:#fff}.ui.inverted.grey.button.active,.ui.inverted.grey.button:active,.ui.inverted.grey.button:focus,.ui.inverted.grey.button:hover,.ui.inverted.grey.buttons .button.active,.ui.inverted.grey.buttons .button:active,.ui.inverted.grey.buttons .button:focus,.ui.inverted.grey.buttons .button:hover{-webkit-box-shadow:none!important;box-shadow:none!important;color:rgba(0,0,0,.6)}.ui.inverted.grey.button:hover,.ui.inverted.grey.buttons .button:hover{background-color:#cfd0d2}.ui.inverted.grey.button:focus,.ui.inverted.grey.buttons .button:focus{background-color:#c7c9cb}.ui.inverted.grey.active.button,.ui.inverted.grey.buttons .active.button{background-color:#cfd0d2}.ui.inverted.grey.button:active,.ui.inverted.grey.buttons .button:active{background-color:#c2c4c5}.ui.inverted.grey.basic.button,.ui.inverted.grey.basic.buttons .button,.ui.inverted.grey.buttons .basic.button{background-color:transparent;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;color:#fff!important}.ui.inverted.grey.basic.button:hover,.ui.inverted.grey.basic.buttons .button:hover,.ui.inverted.grey.buttons .basic.button:hover{-webkit-box-shadow:0 0 0 2px #cfd0d2 inset!important;box-shadow:0 0 0 2px #cfd0d2 inset!important;color:#fff!important}.ui.inverted.grey.basic.button:focus,.ui.inverted.grey.basic.buttons .button:focus{-webkit-box-shadow:0 0 0 2px #c7c9cb inset!important;box-shadow:0 0 0 2px #c7c9cb inset!important;color:#dcddde!important}.ui.inverted.grey.basic.active.button,.ui.inverted.grey.basic.buttons .active.button,.ui.inverted.grey.buttons .basic.active.button{-webkit-box-shadow:0 0 0 2px #cfd0d2 inset!important;box-shadow:0 0 0 2px #cfd0d2 inset!important;color:#fff!important}.ui.inverted.grey.basic.button:active,.ui.inverted.grey.basic.buttons .button:active,.ui.inverted.grey.buttons .basic.button:active{-webkit-box-shadow:0 0 0 2px #c2c4c5 inset!important;box-shadow:0 0 0 2px #c2c4c5 inset!important;color:#fff!important}.ui.brown.button,.ui.brown.buttons .button{background-color:#a5673f;color:#fff;text-shadow:none;background-image:none}.ui.brown.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.brown.button:hover,.ui.brown.buttons .button:hover{background-color:#975b33;color:#fff;text-shadow:none}.ui.brown.button:focus,.ui.brown.buttons .button:focus{background-color:#90532b;color:#fff;text-shadow:none}.ui.brown.button:active,.ui.brown.buttons .button:active{background-color:#805031;color:#fff;text-shadow:none}.ui.brown.active.button,.ui.brown.button .active.button:active,.ui.brown.buttons .active.button,.ui.brown.buttons .active.button:active{background-color:#995a31;color:#fff;text-shadow:none}.ui.basic.brown.button,.ui.basic.brown.buttons .button{-webkit-box-shadow:0 0 0 1px #a5673f inset!important;box-shadow:0 0 0 1px #a5673f inset!important;color:#a5673f!important}.ui.basic.brown.button:hover,.ui.basic.brown.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #975b33 inset!important;box-shadow:0 0 0 1px #975b33 inset!important;color:#975b33!important}.ui.basic.brown.button:focus,.ui.basic.brown.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #90532b inset!important;box-shadow:0 0 0 1px #90532b inset!important;color:#975b33!important}.ui.basic.brown.active.button,.ui.basic.brown.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #995a31 inset!important;box-shadow:0 0 0 1px #995a31 inset!important;color:#805031!important}.ui.basic.brown.button:active,.ui.basic.brown.buttons .button:active{-webkit-box-shadow:0 0 0 1px #805031 inset!important;box-shadow:0 0 0 1px #805031 inset!important;color:#805031!important}.ui.buttons:not(.vertical)>.basic.brown.button:not(:first-child){margin-left:-1px}.ui.inverted.brown.button,.ui.inverted.brown.buttons .button{background-color:transparent;-webkit-box-shadow:0 0 0 2px #d67c1c inset!important;box-shadow:0 0 0 2px #d67c1c inset!important;color:#d67c1c}.ui.inverted.brown.button.active,.ui.inverted.brown.button:active,.ui.inverted.brown.button:focus,.ui.inverted.brown.button:hover,.ui.inverted.brown.buttons .button.active,.ui.inverted.brown.buttons .button:active,.ui.inverted.brown.buttons .button:focus,.ui.inverted.brown.buttons .button:hover{-webkit-box-shadow:none!important;box-shadow:none!important;color:#fff}.ui.inverted.brown.button:hover,.ui.inverted.brown.buttons .button:hover{background-color:#c86f11}.ui.inverted.brown.button:focus,.ui.inverted.brown.buttons .button:focus{background-color:#c16808}.ui.inverted.brown.active.button,.ui.inverted.brown.buttons .active.button{background-color:#cc6f0d}.ui.inverted.brown.button:active,.ui.inverted.brown.buttons .button:active{background-color:#a96216}.ui.inverted.brown.basic.button,.ui.inverted.brown.basic.buttons .button,.ui.inverted.brown.buttons .basic.button{background-color:transparent;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;color:#fff!important}.ui.inverted.brown.basic.button:hover,.ui.inverted.brown.basic.buttons .button:hover,.ui.inverted.brown.buttons .basic.button:hover{-webkit-box-shadow:0 0 0 2px #c86f11 inset!important;box-shadow:0 0 0 2px #c86f11 inset!important;color:#d67c1c!important}.ui.inverted.brown.basic.button:focus,.ui.inverted.brown.basic.buttons .button:focus{-webkit-box-shadow:0 0 0 2px #c16808 inset!important;box-shadow:0 0 0 2px #c16808 inset!important;color:#d67c1c!important}.ui.inverted.brown.basic.active.button,.ui.inverted.brown.basic.buttons .active.button,.ui.inverted.brown.buttons .basic.active.button{-webkit-box-shadow:0 0 0 2px #cc6f0d inset!important;box-shadow:0 0 0 2px #cc6f0d inset!important;color:#d67c1c!important}.ui.inverted.brown.basic.button:active,.ui.inverted.brown.basic.buttons .button:active,.ui.inverted.brown.buttons .basic.button:active{-webkit-box-shadow:0 0 0 2px #a96216 inset!important;box-shadow:0 0 0 2px #a96216 inset!important;color:#d67c1c!important}.ui.blue.button,.ui.blue.buttons .button{background-color:#2185d0;color:#fff;text-shadow:none;background-image:none}.ui.blue.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.blue.button:hover,.ui.blue.buttons .button:hover{background-color:#1678c2;color:#fff;text-shadow:none}.ui.blue.button:focus,.ui.blue.buttons .button:focus{background-color:#0d71bb;color:#fff;text-shadow:none}.ui.blue.button:active,.ui.blue.buttons .button:active{background-color:#1a69a4;color:#fff;text-shadow:none}.ui.blue.active.button,.ui.blue.button .active.button:active,.ui.blue.buttons .active.button,.ui.blue.buttons .active.button:active{background-color:#1279c6;color:#fff;text-shadow:none}.ui.basic.blue.button,.ui.basic.blue.buttons .button{-webkit-box-shadow:0 0 0 1px #2185d0 inset!important;box-shadow:0 0 0 1px #2185d0 inset!important;color:#2185d0!important}.ui.basic.blue.button:hover,.ui.basic.blue.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #1678c2 inset!important;box-shadow:0 0 0 1px #1678c2 inset!important;color:#1678c2!important}.ui.basic.blue.button:focus,.ui.basic.blue.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #0d71bb inset!important;box-shadow:0 0 0 1px #0d71bb inset!important;color:#1678c2!important}.ui.basic.blue.active.button,.ui.basic.blue.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #1279c6 inset!important;box-shadow:0 0 0 1px #1279c6 inset!important;color:#1a69a4!important}.ui.basic.blue.button:active,.ui.basic.blue.buttons .button:active{-webkit-box-shadow:0 0 0 1px #1a69a4 inset!important;box-shadow:0 0 0 1px #1a69a4 inset!important;color:#1a69a4!important}.ui.buttons:not(.vertical)>.basic.blue.button:not(:first-child){margin-left:-1px}.ui.inverted.blue.button,.ui.inverted.blue.buttons .button{background-color:transparent;-webkit-box-shadow:0 0 0 2px #54c8ff inset!important;box-shadow:0 0 0 2px #54c8ff inset!important;color:#54c8ff}.ui.inverted.blue.button.active,.ui.inverted.blue.button:active,.ui.inverted.blue.button:focus,.ui.inverted.blue.button:hover,.ui.inverted.blue.buttons .button.active,.ui.inverted.blue.buttons .button:active,.ui.inverted.blue.buttons .button:focus,.ui.inverted.blue.buttons .button:hover{-webkit-box-shadow:none!important;box-shadow:none!important;color:#fff}.ui.inverted.blue.button:hover,.ui.inverted.blue.buttons .button:hover{background-color:#3ac0ff}.ui.inverted.blue.button:focus,.ui.inverted.blue.buttons .button:focus{background-color:#2bbbff}.ui.inverted.blue.active.button,.ui.inverted.blue.buttons .active.button{background-color:#3ac0ff}.ui.inverted.blue.button:active,.ui.inverted.blue.buttons .button:active{background-color:#21b8ff}.ui.inverted.blue.basic.button,.ui.inverted.blue.basic.buttons .button,.ui.inverted.blue.buttons .basic.button{background-color:transparent;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;color:#fff!important}.ui.inverted.blue.basic.button:hover,.ui.inverted.blue.basic.buttons .button:hover,.ui.inverted.blue.buttons .basic.button:hover{-webkit-box-shadow:0 0 0 2px #3ac0ff inset!important;box-shadow:0 0 0 2px #3ac0ff inset!important;color:#54c8ff!important}.ui.inverted.blue.basic.button:focus,.ui.inverted.blue.basic.buttons .button:focus{-webkit-box-shadow:0 0 0 2px #2bbbff inset!important;box-shadow:0 0 0 2px #2bbbff inset!important;color:#54c8ff!important}.ui.inverted.blue.basic.active.button,.ui.inverted.blue.basic.buttons .active.button,.ui.inverted.blue.buttons .basic.active.button{-webkit-box-shadow:0 0 0 2px #3ac0ff inset!important;box-shadow:0 0 0 2px #3ac0ff inset!important;color:#54c8ff!important}.ui.inverted.blue.basic.button:active,.ui.inverted.blue.basic.buttons .button:active,.ui.inverted.blue.buttons .basic.button:active{-webkit-box-shadow:0 0 0 2px #21b8ff inset!important;box-shadow:0 0 0 2px #21b8ff inset!important;color:#54c8ff!important}.ui.green.button,.ui.green.buttons .button{background-color:#21ba45;color:#fff;text-shadow:none;background-image:none}.ui.green.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.green.button:hover,.ui.green.buttons .button:hover{background-color:#16ab39;color:#fff;text-shadow:none}.ui.green.button:focus,.ui.green.buttons .button:focus{background-color:#0ea432;color:#fff;text-shadow:none}.ui.green.button:active,.ui.green.buttons .button:active{background-color:#198f35;color:#fff;text-shadow:none}.ui.green.active.button,.ui.green.button .active.button:active,.ui.green.buttons .active.button,.ui.green.buttons .active.button:active{background-color:#13ae38;color:#fff;text-shadow:none}.ui.basic.green.button,.ui.basic.green.buttons .button{-webkit-box-shadow:0 0 0 1px #21ba45 inset!important;box-shadow:0 0 0 1px #21ba45 inset!important;color:#21ba45!important}.ui.basic.green.button:hover,.ui.basic.green.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #16ab39 inset!important;box-shadow:0 0 0 1px #16ab39 inset!important;color:#16ab39!important}.ui.basic.green.button:focus,.ui.basic.green.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #0ea432 inset!important;box-shadow:0 0 0 1px #0ea432 inset!important;color:#16ab39!important}.ui.basic.green.active.button,.ui.basic.green.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #13ae38 inset!important;box-shadow:0 0 0 1px #13ae38 inset!important;color:#198f35!important}.ui.basic.green.button:active,.ui.basic.green.buttons .button:active{-webkit-box-shadow:0 0 0 1px #198f35 inset!important;box-shadow:0 0 0 1px #198f35 inset!important;color:#198f35!important}.ui.buttons:not(.vertical)>.basic.green.button:not(:first-child){margin-left:-1px}.ui.inverted.green.button,.ui.inverted.green.buttons .button{background-color:transparent;-webkit-box-shadow:0 0 0 2px #2ecc40 inset!important;box-shadow:0 0 0 2px #2ecc40 inset!important;color:#2ecc40}.ui.inverted.green.button.active,.ui.inverted.green.button:active,.ui.inverted.green.button:focus,.ui.inverted.green.button:hover,.ui.inverted.green.buttons .button.active,.ui.inverted.green.buttons .button:active,.ui.inverted.green.buttons .button:focus,.ui.inverted.green.buttons .button:hover{-webkit-box-shadow:none!important;box-shadow:none!important;color:#fff}.ui.inverted.green.button:hover,.ui.inverted.green.buttons .button:hover{background-color:#22be34}.ui.inverted.green.button:focus,.ui.inverted.green.buttons .button:focus{background-color:#19b82b}.ui.inverted.green.active.button,.ui.inverted.green.buttons .active.button{background-color:#1fc231}.ui.inverted.green.button:active,.ui.inverted.green.buttons .button:active{background-color:#25a233}.ui.inverted.green.basic.button,.ui.inverted.green.basic.buttons .button,.ui.inverted.green.buttons .basic.button{background-color:transparent;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;color:#fff!important}.ui.inverted.green.basic.button:hover,.ui.inverted.green.basic.buttons .button:hover,.ui.inverted.green.buttons .basic.button:hover{-webkit-box-shadow:0 0 0 2px #22be34 inset!important;box-shadow:0 0 0 2px #22be34 inset!important;color:#2ecc40!important}.ui.inverted.green.basic.button:focus,.ui.inverted.green.basic.buttons .button:focus{-webkit-box-shadow:0 0 0 2px #19b82b inset!important;box-shadow:0 0 0 2px #19b82b inset!important;color:#2ecc40!important}.ui.inverted.green.basic.active.button,.ui.inverted.green.basic.buttons .active.button,.ui.inverted.green.buttons .basic.active.button{-webkit-box-shadow:0 0 0 2px #1fc231 inset!important;box-shadow:0 0 0 2px #1fc231 inset!important;color:#2ecc40!important}.ui.inverted.green.basic.button:active,.ui.inverted.green.basic.buttons .button:active,.ui.inverted.green.buttons .basic.button:active{-webkit-box-shadow:0 0 0 2px #25a233 inset!important;box-shadow:0 0 0 2px #25a233 inset!important;color:#2ecc40!important}.ui.orange.button,.ui.orange.buttons .button{background-color:#f2711c;color:#fff;text-shadow:none;background-image:none}.ui.orange.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.orange.button:hover,.ui.orange.buttons .button:hover{background-color:#f26202;color:#fff;text-shadow:none}.ui.orange.button:focus,.ui.orange.buttons .button:focus{background-color:#e55b00;color:#fff;text-shadow:none}.ui.orange.button:active,.ui.orange.buttons .button:active{background-color:#cf590c;color:#fff;text-shadow:none}.ui.orange.active.button,.ui.orange.button .active.button:active,.ui.orange.buttons .active.button,.ui.orange.buttons .active.button:active{background-color:#f56100;color:#fff;text-shadow:none}.ui.basic.orange.button,.ui.basic.orange.buttons .button{-webkit-box-shadow:0 0 0 1px #f2711c inset!important;box-shadow:0 0 0 1px #f2711c inset!important;color:#f2711c!important}.ui.basic.orange.button:hover,.ui.basic.orange.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #f26202 inset!important;box-shadow:0 0 0 1px #f26202 inset!important;color:#f26202!important}.ui.basic.orange.button:focus,.ui.basic.orange.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #e55b00 inset!important;box-shadow:0 0 0 1px #e55b00 inset!important;color:#f26202!important}.ui.basic.orange.active.button,.ui.basic.orange.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #f56100 inset!important;box-shadow:0 0 0 1px #f56100 inset!important;color:#cf590c!important}.ui.basic.orange.button:active,.ui.basic.orange.buttons .button:active{-webkit-box-shadow:0 0 0 1px #cf590c inset!important;box-shadow:0 0 0 1px #cf590c inset!important;color:#cf590c!important}.ui.buttons:not(.vertical)>.basic.orange.button:not(:first-child){margin-left:-1px}.ui.inverted.orange.button,.ui.inverted.orange.buttons .button{background-color:transparent;-webkit-box-shadow:0 0 0 2px #ff851b inset!important;box-shadow:0 0 0 2px #ff851b inset!important;color:#ff851b}.ui.inverted.orange.button.active,.ui.inverted.orange.button:active,.ui.inverted.orange.button:focus,.ui.inverted.orange.button:hover,.ui.inverted.orange.buttons .button.active,.ui.inverted.orange.buttons .button:active,.ui.inverted.orange.buttons .button:focus,.ui.inverted.orange.buttons .button:hover{-webkit-box-shadow:none!important;box-shadow:none!important;color:#fff}.ui.inverted.orange.button:hover,.ui.inverted.orange.buttons .button:hover{background-color:#ff7701}.ui.inverted.orange.button:focus,.ui.inverted.orange.buttons .button:focus{background-color:#f17000}.ui.inverted.orange.active.button,.ui.inverted.orange.buttons .active.button{background-color:#ff7701}.ui.inverted.orange.button:active,.ui.inverted.orange.buttons .button:active{background-color:#e76b00}.ui.inverted.orange.basic.button,.ui.inverted.orange.basic.buttons .button,.ui.inverted.orange.buttons .basic.button{background-color:transparent;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;color:#fff!important}.ui.inverted.orange.basic.button:hover,.ui.inverted.orange.basic.buttons .button:hover,.ui.inverted.orange.buttons .basic.button:hover{-webkit-box-shadow:0 0 0 2px #ff7701 inset!important;box-shadow:0 0 0 2px #ff7701 inset!important;color:#ff851b!important}.ui.inverted.orange.basic.button:focus,.ui.inverted.orange.basic.buttons .button:focus{-webkit-box-shadow:0 0 0 2px #f17000 inset!important;box-shadow:0 0 0 2px #f17000 inset!important;color:#ff851b!important}.ui.inverted.orange.basic.active.button,.ui.inverted.orange.basic.buttons .active.button,.ui.inverted.orange.buttons .basic.active.button{-webkit-box-shadow:0 0 0 2px #ff7701 inset!important;box-shadow:0 0 0 2px #ff7701 inset!important;color:#ff851b!important}.ui.inverted.orange.basic.button:active,.ui.inverted.orange.basic.buttons .button:active,.ui.inverted.orange.buttons .basic.button:active{-webkit-box-shadow:0 0 0 2px #e76b00 inset!important;box-shadow:0 0 0 2px #e76b00 inset!important;color:#ff851b!important}.ui.pink.button,.ui.pink.buttons .button{background-color:#e03997;color:#fff;text-shadow:none;background-image:none}.ui.pink.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.pink.button:hover,.ui.pink.buttons .button:hover{background-color:#e61a8d;color:#fff;text-shadow:none}.ui.pink.button:focus,.ui.pink.buttons .button:focus{background-color:#e10f85;color:#fff;text-shadow:none}.ui.pink.button:active,.ui.pink.buttons .button:active{background-color:#c71f7e;color:#fff;text-shadow:none}.ui.pink.active.button,.ui.pink.button .active.button:active,.ui.pink.buttons .active.button,.ui.pink.buttons .active.button:active{background-color:#ea158d;color:#fff;text-shadow:none}.ui.basic.pink.button,.ui.basic.pink.buttons .button{-webkit-box-shadow:0 0 0 1px #e03997 inset!important;box-shadow:0 0 0 1px #e03997 inset!important;color:#e03997!important}.ui.basic.pink.button:hover,.ui.basic.pink.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #e61a8d inset!important;box-shadow:0 0 0 1px #e61a8d inset!important;color:#e61a8d!important}.ui.basic.pink.button:focus,.ui.basic.pink.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #e10f85 inset!important;box-shadow:0 0 0 1px #e10f85 inset!important;color:#e61a8d!important}.ui.basic.pink.active.button,.ui.basic.pink.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #ea158d inset!important;box-shadow:0 0 0 1px #ea158d inset!important;color:#c71f7e!important}.ui.basic.pink.button:active,.ui.basic.pink.buttons .button:active{-webkit-box-shadow:0 0 0 1px #c71f7e inset!important;box-shadow:0 0 0 1px #c71f7e inset!important;color:#c71f7e!important}.ui.buttons:not(.vertical)>.basic.pink.button:not(:first-child){margin-left:-1px}.ui.inverted.pink.button,.ui.inverted.pink.buttons .button{background-color:transparent;-webkit-box-shadow:0 0 0 2px #ff8edf inset!important;box-shadow:0 0 0 2px #ff8edf inset!important;color:#ff8edf}.ui.inverted.pink.button.active,.ui.inverted.pink.button:active,.ui.inverted.pink.button:focus,.ui.inverted.pink.button:hover,.ui.inverted.pink.buttons .button.active,.ui.inverted.pink.buttons .button:active,.ui.inverted.pink.buttons .button:focus,.ui.inverted.pink.buttons .button:hover{-webkit-box-shadow:none!important;box-shadow:none!important;color:#fff}.ui.inverted.pink.button:hover,.ui.inverted.pink.buttons .button:hover{background-color:#ff74d8}.ui.inverted.pink.button:focus,.ui.inverted.pink.buttons .button:focus{background-color:#ff65d3}.ui.inverted.pink.active.button,.ui.inverted.pink.buttons .active.button{background-color:#ff74d8}.ui.inverted.pink.button:active,.ui.inverted.pink.buttons .button:active{background-color:#ff5bd1}.ui.inverted.pink.basic.button,.ui.inverted.pink.basic.buttons .button,.ui.inverted.pink.buttons .basic.button{background-color:transparent;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;color:#fff!important}.ui.inverted.pink.basic.button:hover,.ui.inverted.pink.basic.buttons .button:hover,.ui.inverted.pink.buttons .basic.button:hover{-webkit-box-shadow:0 0 0 2px #ff74d8 inset!important;box-shadow:0 0 0 2px #ff74d8 inset!important;color:#ff8edf!important}.ui.inverted.pink.basic.button:focus,.ui.inverted.pink.basic.buttons .button:focus{-webkit-box-shadow:0 0 0 2px #ff65d3 inset!important;box-shadow:0 0 0 2px #ff65d3 inset!important;color:#ff8edf!important}.ui.inverted.pink.basic.active.button,.ui.inverted.pink.basic.buttons .active.button,.ui.inverted.pink.buttons .basic.active.button{-webkit-box-shadow:0 0 0 2px #ff74d8 inset!important;box-shadow:0 0 0 2px #ff74d8 inset!important;color:#ff8edf!important}.ui.inverted.pink.basic.button:active,.ui.inverted.pink.basic.buttons .button:active,.ui.inverted.pink.buttons .basic.button:active{-webkit-box-shadow:0 0 0 2px #ff5bd1 inset!important;box-shadow:0 0 0 2px #ff5bd1 inset!important;color:#ff8edf!important}.ui.violet.button,.ui.violet.buttons .button{background-color:#6435c9;color:#fff;text-shadow:none;background-image:none}.ui.violet.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.violet.button:hover,.ui.violet.buttons .button:hover{background-color:#5829bb;color:#fff;text-shadow:none}.ui.violet.button:focus,.ui.violet.buttons .button:focus{background-color:#4f20b5;color:#fff;text-shadow:none}.ui.violet.button:active,.ui.violet.buttons .button:active{background-color:#502aa1;color:#fff;text-shadow:none}.ui.violet.active.button,.ui.violet.button .active.button:active,.ui.violet.buttons .active.button,.ui.violet.buttons .active.button:active{background-color:#5626bf;color:#fff;text-shadow:none}.ui.basic.violet.button,.ui.basic.violet.buttons .button{-webkit-box-shadow:0 0 0 1px #6435c9 inset!important;box-shadow:0 0 0 1px #6435c9 inset!important;color:#6435c9!important}.ui.basic.violet.button:hover,.ui.basic.violet.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #5829bb inset!important;box-shadow:0 0 0 1px #5829bb inset!important;color:#5829bb!important}.ui.basic.violet.button:focus,.ui.basic.violet.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #4f20b5 inset!important;box-shadow:0 0 0 1px #4f20b5 inset!important;color:#5829bb!important}.ui.basic.violet.active.button,.ui.basic.violet.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #5626bf inset!important;box-shadow:0 0 0 1px #5626bf inset!important;color:#502aa1!important}.ui.basic.violet.button:active,.ui.basic.violet.buttons .button:active{-webkit-box-shadow:0 0 0 1px #502aa1 inset!important;box-shadow:0 0 0 1px #502aa1 inset!important;color:#502aa1!important}.ui.buttons:not(.vertical)>.basic.violet.button:not(:first-child){margin-left:-1px}.ui.inverted.violet.button,.ui.inverted.violet.buttons .button{background-color:transparent;-webkit-box-shadow:0 0 0 2px #a291fb inset!important;box-shadow:0 0 0 2px #a291fb inset!important;color:#a291fb}.ui.inverted.violet.button.active,.ui.inverted.violet.button:active,.ui.inverted.violet.button:focus,.ui.inverted.violet.button:hover,.ui.inverted.violet.buttons .button.active,.ui.inverted.violet.buttons .button:active,.ui.inverted.violet.buttons .button:focus,.ui.inverted.violet.buttons .button:hover{-webkit-box-shadow:none!important;box-shadow:none!important;color:#fff}.ui.inverted.violet.button:hover,.ui.inverted.violet.buttons .button:hover{background-color:#8a73ff}.ui.inverted.violet.button:focus,.ui.inverted.violet.buttons .button:focus{background-color:#7d64ff}.ui.inverted.violet.active.button,.ui.inverted.violet.buttons .active.button{background-color:#8a73ff}.ui.inverted.violet.button:active,.ui.inverted.violet.buttons .button:active{background-color:#7860f9}.ui.inverted.violet.basic.button,.ui.inverted.violet.basic.buttons .button,.ui.inverted.violet.buttons .basic.button{background-color:transparent;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;color:#fff!important}.ui.inverted.violet.basic.button:hover,.ui.inverted.violet.basic.buttons .button:hover,.ui.inverted.violet.buttons .basic.button:hover{-webkit-box-shadow:0 0 0 2px #8a73ff inset!important;box-shadow:0 0 0 2px #8a73ff inset!important;color:#a291fb!important}.ui.inverted.violet.basic.button:focus,.ui.inverted.violet.basic.buttons .button:focus{-webkit-box-shadow:0 0 0 2px #7d64ff inset!important;box-shadow:0 0 0 2px #7d64ff inset!important;color:#a291fb!important}.ui.inverted.violet.basic.active.button,.ui.inverted.violet.basic.buttons .active.button,.ui.inverted.violet.buttons .basic.active.button{-webkit-box-shadow:0 0 0 2px #8a73ff inset!important;box-shadow:0 0 0 2px #8a73ff inset!important;color:#a291fb!important}.ui.inverted.violet.basic.button:active,.ui.inverted.violet.basic.buttons .button:active,.ui.inverted.violet.buttons .basic.button:active{-webkit-box-shadow:0 0 0 2px #7860f9 inset!important;box-shadow:0 0 0 2px #7860f9 inset!important;color:#a291fb!important}.ui.purple.button,.ui.purple.buttons .button{background-color:#a333c8;color:#fff;text-shadow:none;background-image:none}.ui.purple.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.purple.button:hover,.ui.purple.buttons .button:hover{background-color:#9627ba;color:#fff;text-shadow:none}.ui.purple.button:focus,.ui.purple.buttons .button:focus{background-color:#8f1eb4;color:#fff;text-shadow:none}.ui.purple.button:active,.ui.purple.buttons .button:active{background-color:#82299f;color:#fff;text-shadow:none}.ui.purple.active.button,.ui.purple.button .active.button:active,.ui.purple.buttons .active.button,.ui.purple.buttons .active.button:active{background-color:#9724be;color:#fff;text-shadow:none}.ui.basic.purple.button,.ui.basic.purple.buttons .button{-webkit-box-shadow:0 0 0 1px #a333c8 inset!important;box-shadow:0 0 0 1px #a333c8 inset!important;color:#a333c8!important}.ui.basic.purple.button:hover,.ui.basic.purple.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #9627ba inset!important;box-shadow:0 0 0 1px #9627ba inset!important;color:#9627ba!important}.ui.basic.purple.button:focus,.ui.basic.purple.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #8f1eb4 inset!important;box-shadow:0 0 0 1px #8f1eb4 inset!important;color:#9627ba!important}.ui.basic.purple.active.button,.ui.basic.purple.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #9724be inset!important;box-shadow:0 0 0 1px #9724be inset!important;color:#82299f!important}.ui.basic.purple.button:active,.ui.basic.purple.buttons .button:active{-webkit-box-shadow:0 0 0 1px #82299f inset!important;box-shadow:0 0 0 1px #82299f inset!important;color:#82299f!important}.ui.buttons:not(.vertical)>.basic.purple.button:not(:first-child){margin-left:-1px}.ui.inverted.purple.button,.ui.inverted.purple.buttons .button{background-color:transparent;-webkit-box-shadow:0 0 0 2px #dc73ff inset!important;box-shadow:0 0 0 2px #dc73ff inset!important;color:#dc73ff}.ui.inverted.purple.button.active,.ui.inverted.purple.button:active,.ui.inverted.purple.button:focus,.ui.inverted.purple.button:hover,.ui.inverted.purple.buttons .button.active,.ui.inverted.purple.buttons .button:active,.ui.inverted.purple.buttons .button:focus,.ui.inverted.purple.buttons .button:hover{-webkit-box-shadow:none!important;box-shadow:none!important;color:#fff}.ui.inverted.purple.button:hover,.ui.inverted.purple.buttons .button:hover{background-color:#d65aff}.ui.inverted.purple.button:focus,.ui.inverted.purple.buttons .button:focus{background-color:#d24aff}.ui.inverted.purple.active.button,.ui.inverted.purple.buttons .active.button{background-color:#d65aff}.ui.inverted.purple.button:active,.ui.inverted.purple.buttons .button:active{background-color:#cf40ff}.ui.inverted.purple.basic.button,.ui.inverted.purple.basic.buttons .button,.ui.inverted.purple.buttons .basic.button{background-color:transparent;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;color:#fff!important}.ui.inverted.purple.basic.button:hover,.ui.inverted.purple.basic.buttons .button:hover,.ui.inverted.purple.buttons .basic.button:hover{-webkit-box-shadow:0 0 0 2px #d65aff inset!important;box-shadow:0 0 0 2px #d65aff inset!important;color:#dc73ff!important}.ui.inverted.purple.basic.button:focus,.ui.inverted.purple.basic.buttons .button:focus{-webkit-box-shadow:0 0 0 2px #d24aff inset!important;box-shadow:0 0 0 2px #d24aff inset!important;color:#dc73ff!important}.ui.inverted.purple.basic.active.button,.ui.inverted.purple.basic.buttons .active.button,.ui.inverted.purple.buttons .basic.active.button{-webkit-box-shadow:0 0 0 2px #d65aff inset!important;box-shadow:0 0 0 2px #d65aff inset!important;color:#dc73ff!important}.ui.inverted.purple.basic.button:active,.ui.inverted.purple.basic.buttons .button:active,.ui.inverted.purple.buttons .basic.button:active{-webkit-box-shadow:0 0 0 2px #cf40ff inset!important;box-shadow:0 0 0 2px #cf40ff inset!important;color:#dc73ff!important}.ui.red.button,.ui.red.buttons .button{background-color:#db2828;color:#fff;text-shadow:none;background-image:none}.ui.red.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.red.button:hover,.ui.red.buttons .button:hover{background-color:#d01919;color:#fff;text-shadow:none}.ui.red.button:focus,.ui.red.buttons .button:focus{background-color:#ca1010;color:#fff;text-shadow:none}.ui.red.button:active,.ui.red.buttons .button:active{background-color:#b21e1e;color:#fff;text-shadow:none}.ui.red.active.button,.ui.red.button .active.button:active,.ui.red.buttons .active.button,.ui.red.buttons .active.button:active{background-color:#d41515;color:#fff;text-shadow:none}.ui.basic.red.button,.ui.basic.red.buttons .button{-webkit-box-shadow:0 0 0 1px #db2828 inset!important;box-shadow:0 0 0 1px #db2828 inset!important;color:#db2828!important}.ui.basic.red.button:hover,.ui.basic.red.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #d01919 inset!important;box-shadow:0 0 0 1px #d01919 inset!important;color:#d01919!important}.ui.basic.red.button:focus,.ui.basic.red.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #ca1010 inset!important;box-shadow:0 0 0 1px #ca1010 inset!important;color:#d01919!important}.ui.basic.red.active.button,.ui.basic.red.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #d41515 inset!important;box-shadow:0 0 0 1px #d41515 inset!important;color:#b21e1e!important}.ui.basic.red.button:active,.ui.basic.red.buttons .button:active{-webkit-box-shadow:0 0 0 1px #b21e1e inset!important;box-shadow:0 0 0 1px #b21e1e inset!important;color:#b21e1e!important}.ui.buttons:not(.vertical)>.basic.red.button:not(:first-child){margin-left:-1px}.ui.inverted.red.button,.ui.inverted.red.buttons .button{background-color:transparent;-webkit-box-shadow:0 0 0 2px #ff695e inset!important;box-shadow:0 0 0 2px #ff695e inset!important;color:#ff695e}.ui.inverted.red.button.active,.ui.inverted.red.button:active,.ui.inverted.red.button:focus,.ui.inverted.red.button:hover,.ui.inverted.red.buttons .button.active,.ui.inverted.red.buttons .button:active,.ui.inverted.red.buttons .button:focus,.ui.inverted.red.buttons .button:hover{-webkit-box-shadow:none!important;box-shadow:none!important;color:#fff}.ui.inverted.red.button:hover,.ui.inverted.red.buttons .button:hover{background-color:#ff5144}.ui.inverted.red.button:focus,.ui.inverted.red.buttons .button:focus{background-color:#ff4335}.ui.inverted.red.active.button,.ui.inverted.red.buttons .active.button{background-color:#ff5144}.ui.inverted.red.button:active,.ui.inverted.red.buttons .button:active{background-color:#ff392b}.ui.inverted.red.basic.button,.ui.inverted.red.basic.buttons .button,.ui.inverted.red.buttons .basic.button{background-color:transparent;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;color:#fff!important}.ui.inverted.red.basic.button:hover,.ui.inverted.red.basic.buttons .button:hover,.ui.inverted.red.buttons .basic.button:hover{-webkit-box-shadow:0 0 0 2px #ff5144 inset!important;box-shadow:0 0 0 2px #ff5144 inset!important;color:#ff695e!important}.ui.inverted.red.basic.button:focus,.ui.inverted.red.basic.buttons .button:focus{-webkit-box-shadow:0 0 0 2px #ff4335 inset!important;box-shadow:0 0 0 2px #ff4335 inset!important;color:#ff695e!important}.ui.inverted.red.basic.active.button,.ui.inverted.red.basic.buttons .active.button,.ui.inverted.red.buttons .basic.active.button{-webkit-box-shadow:0 0 0 2px #ff5144 inset!important;box-shadow:0 0 0 2px #ff5144 inset!important;color:#ff695e!important}.ui.inverted.red.basic.button:active,.ui.inverted.red.basic.buttons .button:active,.ui.inverted.red.buttons .basic.button:active{-webkit-box-shadow:0 0 0 2px #ff392b inset!important;box-shadow:0 0 0 2px #ff392b inset!important;color:#ff695e!important}.ui.teal.button,.ui.teal.buttons .button{background-color:#00b5ad;color:#fff;text-shadow:none;background-image:none}.ui.teal.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.teal.button:hover,.ui.teal.buttons .button:hover{background-color:#009c95;color:#fff;text-shadow:none}.ui.teal.button:focus,.ui.teal.buttons .button:focus{background-color:#008c86;color:#fff;text-shadow:none}.ui.teal.button:active,.ui.teal.buttons .button:active{background-color:#00827c;color:#fff;text-shadow:none}.ui.teal.active.button,.ui.teal.button .active.button:active,.ui.teal.buttons .active.button,.ui.teal.buttons .active.button:active{background-color:#009c95;color:#fff;text-shadow:none}.ui.basic.teal.button,.ui.basic.teal.buttons .button{-webkit-box-shadow:0 0 0 1px #00b5ad inset!important;box-shadow:0 0 0 1px #00b5ad inset!important;color:#00b5ad!important}.ui.basic.teal.button:hover,.ui.basic.teal.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #009c95 inset!important;box-shadow:0 0 0 1px #009c95 inset!important;color:#009c95!important}.ui.basic.teal.button:focus,.ui.basic.teal.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #008c86 inset!important;box-shadow:0 0 0 1px #008c86 inset!important;color:#009c95!important}.ui.basic.teal.active.button,.ui.basic.teal.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #009c95 inset!important;box-shadow:0 0 0 1px #009c95 inset!important;color:#00827c!important}.ui.basic.teal.button:active,.ui.basic.teal.buttons .button:active{-webkit-box-shadow:0 0 0 1px #00827c inset!important;box-shadow:0 0 0 1px #00827c inset!important;color:#00827c!important}.ui.buttons:not(.vertical)>.basic.teal.button:not(:first-child){margin-left:-1px}.ui.inverted.teal.button,.ui.inverted.teal.buttons .button{background-color:transparent;-webkit-box-shadow:0 0 0 2px #6dffff inset!important;box-shadow:0 0 0 2px #6dffff inset!important;color:#6dffff}.ui.inverted.teal.button.active,.ui.inverted.teal.button:active,.ui.inverted.teal.button:focus,.ui.inverted.teal.button:hover,.ui.inverted.teal.buttons .button.active,.ui.inverted.teal.buttons .button:active,.ui.inverted.teal.buttons .button:focus,.ui.inverted.teal.buttons .button:hover{-webkit-box-shadow:none!important;box-shadow:none!important;color:rgba(0,0,0,.6)}.ui.inverted.teal.button:hover,.ui.inverted.teal.buttons .button:hover{background-color:#54ffff}.ui.inverted.teal.button:focus,.ui.inverted.teal.buttons .button:focus{background-color:#4ff}.ui.inverted.teal.active.button,.ui.inverted.teal.buttons .active.button{background-color:#54ffff}.ui.inverted.teal.button:active,.ui.inverted.teal.buttons .button:active{background-color:#3affff}.ui.inverted.teal.basic.button,.ui.inverted.teal.basic.buttons .button,.ui.inverted.teal.buttons .basic.button{background-color:transparent;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;color:#fff!important}.ui.inverted.teal.basic.button:hover,.ui.inverted.teal.basic.buttons .button:hover,.ui.inverted.teal.buttons .basic.button:hover{-webkit-box-shadow:0 0 0 2px #54ffff inset!important;box-shadow:0 0 0 2px #54ffff inset!important;color:#6dffff!important}.ui.inverted.teal.basic.button:focus,.ui.inverted.teal.basic.buttons .button:focus{-webkit-box-shadow:0 0 0 2px #4ff inset!important;box-shadow:0 0 0 2px #4ff inset!important;color:#6dffff!important}.ui.inverted.teal.basic.active.button,.ui.inverted.teal.basic.buttons .active.button,.ui.inverted.teal.buttons .basic.active.button{-webkit-box-shadow:0 0 0 2px #54ffff inset!important;box-shadow:0 0 0 2px #54ffff inset!important;color:#6dffff!important}.ui.inverted.teal.basic.button:active,.ui.inverted.teal.basic.buttons .button:active,.ui.inverted.teal.buttons .basic.button:active{-webkit-box-shadow:0 0 0 2px #3affff inset!important;box-shadow:0 0 0 2px #3affff inset!important;color:#6dffff!important}.ui.olive.button,.ui.olive.buttons .button{background-color:#b5cc18;color:#fff;text-shadow:none;background-image:none}.ui.olive.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.olive.button:hover,.ui.olive.buttons .button:hover{background-color:#a7bd0d;color:#fff;text-shadow:none}.ui.olive.button:focus,.ui.olive.buttons .button:focus{background-color:#a0b605;color:#fff;text-shadow:none}.ui.olive.button:active,.ui.olive.buttons .button:active{background-color:#8d9e13;color:#fff;text-shadow:none}.ui.olive.active.button,.ui.olive.button .active.button:active,.ui.olive.buttons .active.button,.ui.olive.buttons .active.button:active{background-color:#aac109;color:#fff;text-shadow:none}.ui.basic.olive.button,.ui.basic.olive.buttons .button{-webkit-box-shadow:0 0 0 1px #b5cc18 inset!important;box-shadow:0 0 0 1px #b5cc18 inset!important;color:#b5cc18!important}.ui.basic.olive.button:hover,.ui.basic.olive.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #a7bd0d inset!important;box-shadow:0 0 0 1px #a7bd0d inset!important;color:#a7bd0d!important}.ui.basic.olive.button:focus,.ui.basic.olive.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #a0b605 inset!important;box-shadow:0 0 0 1px #a0b605 inset!important;color:#a7bd0d!important}.ui.basic.olive.active.button,.ui.basic.olive.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #aac109 inset!important;box-shadow:0 0 0 1px #aac109 inset!important;color:#8d9e13!important}.ui.basic.olive.button:active,.ui.basic.olive.buttons .button:active{-webkit-box-shadow:0 0 0 1px #8d9e13 inset!important;box-shadow:0 0 0 1px #8d9e13 inset!important;color:#8d9e13!important}.ui.buttons:not(.vertical)>.basic.olive.button:not(:first-child){margin-left:-1px}.ui.inverted.olive.button,.ui.inverted.olive.buttons .button{background-color:transparent;-webkit-box-shadow:0 0 0 2px #d9e778 inset!important;box-shadow:0 0 0 2px #d9e778 inset!important;color:#d9e778}.ui.inverted.olive.button.active,.ui.inverted.olive.button:active,.ui.inverted.olive.button:focus,.ui.inverted.olive.button:hover,.ui.inverted.olive.buttons .button.active,.ui.inverted.olive.buttons .button:active,.ui.inverted.olive.buttons .button:focus,.ui.inverted.olive.buttons .button:hover{-webkit-box-shadow:none!important;box-shadow:none!important;color:rgba(0,0,0,.6)}.ui.inverted.olive.button:hover,.ui.inverted.olive.buttons .button:hover{background-color:#d8ea5c}.ui.inverted.olive.button:focus,.ui.inverted.olive.buttons .button:focus{background-color:#daef47}.ui.inverted.olive.active.button,.ui.inverted.olive.buttons .active.button{background-color:#daed59}.ui.inverted.olive.button:active,.ui.inverted.olive.buttons .button:active{background-color:#cddf4d}.ui.inverted.olive.basic.button,.ui.inverted.olive.basic.buttons .button,.ui.inverted.olive.buttons .basic.button{background-color:transparent;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;color:#fff!important}.ui.inverted.olive.basic.button:hover,.ui.inverted.olive.basic.buttons .button:hover,.ui.inverted.olive.buttons .basic.button:hover{-webkit-box-shadow:0 0 0 2px #d8ea5c inset!important;box-shadow:0 0 0 2px #d8ea5c inset!important;color:#d9e778!important}.ui.inverted.olive.basic.button:focus,.ui.inverted.olive.basic.buttons .button:focus{-webkit-box-shadow:0 0 0 2px #daef47 inset!important;box-shadow:0 0 0 2px #daef47 inset!important;color:#d9e778!important}.ui.inverted.olive.basic.active.button,.ui.inverted.olive.basic.buttons .active.button,.ui.inverted.olive.buttons .basic.active.button{-webkit-box-shadow:0 0 0 2px #daed59 inset!important;box-shadow:0 0 0 2px #daed59 inset!important;color:#d9e778!important}.ui.inverted.olive.basic.button:active,.ui.inverted.olive.basic.buttons .button:active,.ui.inverted.olive.buttons .basic.button:active{-webkit-box-shadow:0 0 0 2px #cddf4d inset!important;box-shadow:0 0 0 2px #cddf4d inset!important;color:#d9e778!important}.ui.yellow.button,.ui.yellow.buttons .button{background-color:#fbbd08;color:#fff;text-shadow:none;background-image:none}.ui.yellow.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.yellow.button:hover,.ui.yellow.buttons .button:hover{background-color:#eaae00;color:#fff;text-shadow:none}.ui.yellow.button:focus,.ui.yellow.buttons .button:focus{background-color:#daa300;color:#fff;text-shadow:none}.ui.yellow.button:active,.ui.yellow.buttons .button:active{background-color:#cd9903;color:#fff;text-shadow:none}.ui.yellow.active.button,.ui.yellow.button .active.button:active,.ui.yellow.buttons .active.button,.ui.yellow.buttons .active.button:active{background-color:#eaae00;color:#fff;text-shadow:none}.ui.basic.yellow.button,.ui.basic.yellow.buttons .button{-webkit-box-shadow:0 0 0 1px #fbbd08 inset!important;box-shadow:0 0 0 1px #fbbd08 inset!important;color:#fbbd08!important}.ui.basic.yellow.button:hover,.ui.basic.yellow.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #eaae00 inset!important;box-shadow:0 0 0 1px #eaae00 inset!important;color:#eaae00!important}.ui.basic.yellow.button:focus,.ui.basic.yellow.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #daa300 inset!important;box-shadow:0 0 0 1px #daa300 inset!important;color:#eaae00!important}.ui.basic.yellow.active.button,.ui.basic.yellow.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #eaae00 inset!important;box-shadow:0 0 0 1px #eaae00 inset!important;color:#cd9903!important}.ui.basic.yellow.button:active,.ui.basic.yellow.buttons .button:active{-webkit-box-shadow:0 0 0 1px #cd9903 inset!important;box-shadow:0 0 0 1px #cd9903 inset!important;color:#cd9903!important}.ui.buttons:not(.vertical)>.basic.yellow.button:not(:first-child){margin-left:-1px}.ui.inverted.yellow.button,.ui.inverted.yellow.buttons .button{background-color:transparent;-webkit-box-shadow:0 0 0 2px #ffe21f inset!important;box-shadow:0 0 0 2px #ffe21f inset!important;color:#ffe21f}.ui.inverted.yellow.button.active,.ui.inverted.yellow.button:active,.ui.inverted.yellow.button:focus,.ui.inverted.yellow.button:hover,.ui.inverted.yellow.buttons .button.active,.ui.inverted.yellow.buttons .button:active,.ui.inverted.yellow.buttons .button:focus,.ui.inverted.yellow.buttons .button:hover{-webkit-box-shadow:none!important;box-shadow:none!important;color:rgba(0,0,0,.6)}.ui.inverted.yellow.button:hover,.ui.inverted.yellow.buttons .button:hover{background-color:#ffdf05}.ui.inverted.yellow.button:focus,.ui.inverted.yellow.buttons .button:focus{background-color:#f5d500}.ui.inverted.yellow.active.button,.ui.inverted.yellow.buttons .active.button{background-color:#ffdf05}.ui.inverted.yellow.button:active,.ui.inverted.yellow.buttons .button:active{background-color:#ebcd00}.ui.inverted.yellow.basic.button,.ui.inverted.yellow.basic.buttons .button,.ui.inverted.yellow.buttons .basic.button{background-color:transparent;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;color:#fff!important}.ui.inverted.yellow.basic.button:hover,.ui.inverted.yellow.basic.buttons .button:hover,.ui.inverted.yellow.buttons .basic.button:hover{-webkit-box-shadow:0 0 0 2px #ffdf05 inset!important;box-shadow:0 0 0 2px #ffdf05 inset!important;color:#ffe21f!important}.ui.inverted.yellow.basic.button:focus,.ui.inverted.yellow.basic.buttons .button:focus{-webkit-box-shadow:0 0 0 2px #f5d500 inset!important;box-shadow:0 0 0 2px #f5d500 inset!important;color:#ffe21f!important}.ui.inverted.yellow.basic.active.button,.ui.inverted.yellow.basic.buttons .active.button,.ui.inverted.yellow.buttons .basic.active.button{-webkit-box-shadow:0 0 0 2px #ffdf05 inset!important;box-shadow:0 0 0 2px #ffdf05 inset!important;color:#ffe21f!important}.ui.inverted.yellow.basic.button:active,.ui.inverted.yellow.basic.buttons .button:active,.ui.inverted.yellow.buttons .basic.button:active{-webkit-box-shadow:0 0 0 2px #ebcd00 inset!important;box-shadow:0 0 0 2px #ebcd00 inset!important;color:#ffe21f!important}.ui.primary.button,.ui.primary.buttons .button{background-color:#2185d0;color:#fff;text-shadow:none;background-image:none}.ui.primary.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.primary.button:hover,.ui.primary.buttons .button:hover{background-color:#1678c2;color:#fff;text-shadow:none}.ui.primary.button:focus,.ui.primary.buttons .button:focus{background-color:#0d71bb;color:#fff;text-shadow:none}.ui.primary.button:active,.ui.primary.buttons .button:active{background-color:#1a69a4;color:#fff;text-shadow:none}.ui.primary.active.button,.ui.primary.button .active.button:active,.ui.primary.buttons .active.button,.ui.primary.buttons .active.button:active{background-color:#1279c6;color:#fff;text-shadow:none}.ui.basic.primary.button,.ui.basic.primary.buttons .button{-webkit-box-shadow:0 0 0 1px #2185d0 inset!important;box-shadow:0 0 0 1px #2185d0 inset!important;color:#2185d0!important}.ui.basic.primary.button:hover,.ui.basic.primary.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #1678c2 inset!important;box-shadow:0 0 0 1px #1678c2 inset!important;color:#1678c2!important}.ui.basic.primary.button:focus,.ui.basic.primary.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #0d71bb inset!important;box-shadow:0 0 0 1px #0d71bb inset!important;color:#1678c2!important}.ui.basic.primary.active.button,.ui.basic.primary.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #1279c6 inset!important;box-shadow:0 0 0 1px #1279c6 inset!important;color:#1a69a4!important}.ui.basic.primary.button:active,.ui.basic.primary.buttons .button:active{-webkit-box-shadow:0 0 0 1px #1a69a4 inset!important;box-shadow:0 0 0 1px #1a69a4 inset!important;color:#1a69a4!important}.ui.buttons:not(.vertical)>.basic.primary.button:not(:first-child){margin-left:-1px}.ui.inverted.primary.button,.ui.inverted.primary.buttons .button{background-color:transparent;-webkit-box-shadow:0 0 0 2px #54c8ff inset!important;box-shadow:0 0 0 2px #54c8ff inset!important;color:#54c8ff}.ui.inverted.primary.button.active,.ui.inverted.primary.button:active,.ui.inverted.primary.button:focus,.ui.inverted.primary.button:hover,.ui.inverted.primary.buttons .button.active,.ui.inverted.primary.buttons .button:active,.ui.inverted.primary.buttons .button:focus,.ui.inverted.primary.buttons .button:hover{-webkit-box-shadow:none!important;box-shadow:none!important;color:#fff}.ui.inverted.primary.button:hover,.ui.inverted.primary.buttons .button:hover{background-color:#3ac0ff}.ui.inverted.primary.button:focus,.ui.inverted.primary.buttons .button:focus{background-color:#2bbbff}.ui.inverted.primary.active.button,.ui.inverted.primary.buttons .active.button{background-color:#3ac0ff}.ui.inverted.primary.button:active,.ui.inverted.primary.buttons .button:active{background-color:#21b8ff}.ui.inverted.primary.basic.button,.ui.inverted.primary.basic.buttons .button,.ui.inverted.primary.buttons .basic.button{background-color:transparent;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;color:#fff!important}.ui.inverted.primary.basic.button:hover,.ui.inverted.primary.basic.buttons .button:hover,.ui.inverted.primary.buttons .basic.button:hover{-webkit-box-shadow:0 0 0 2px #3ac0ff inset!important;box-shadow:0 0 0 2px #3ac0ff inset!important;color:#54c8ff!important}.ui.inverted.primary.basic.button:focus,.ui.inverted.primary.basic.buttons .button:focus{-webkit-box-shadow:0 0 0 2px #2bbbff inset!important;box-shadow:0 0 0 2px #2bbbff inset!important;color:#54c8ff!important}.ui.inverted.primary.basic.active.button,.ui.inverted.primary.basic.buttons .active.button,.ui.inverted.primary.buttons .basic.active.button{-webkit-box-shadow:0 0 0 2px #3ac0ff inset!important;box-shadow:0 0 0 2px #3ac0ff inset!important;color:#54c8ff!important}.ui.inverted.primary.basic.button:active,.ui.inverted.primary.basic.buttons .button:active,.ui.inverted.primary.buttons .basic.button:active{-webkit-box-shadow:0 0 0 2px #21b8ff inset!important;box-shadow:0 0 0 2px #21b8ff inset!important;color:#54c8ff!important}.ui.secondary.button,.ui.secondary.buttons .button{background-color:#1b1c1d;color:#fff;text-shadow:none;background-image:none}.ui.secondary.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.secondary.button:hover,.ui.secondary.buttons .button:hover{background-color:#27292a;color:#fff;text-shadow:none}.ui.secondary.button:focus,.ui.secondary.buttons .button:focus{background-color:#2e3032;color:#fff;text-shadow:none}.ui.secondary.button:active,.ui.secondary.buttons .button:active{background-color:#343637;color:#fff;text-shadow:none}.ui.secondary.active.button,.ui.secondary.button .active.button:active,.ui.secondary.buttons .active.button,.ui.secondary.buttons .active.button:active{background-color:#27292a;color:#fff;text-shadow:none}.ui.basic.secondary.button,.ui.basic.secondary.buttons .button{-webkit-box-shadow:0 0 0 1px #1b1c1d inset!important;box-shadow:0 0 0 1px #1b1c1d inset!important;color:#1b1c1d!important}.ui.basic.secondary.button:hover,.ui.basic.secondary.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #27292a inset!important;box-shadow:0 0 0 1px #27292a inset!important;color:#27292a!important}.ui.basic.secondary.button:focus,.ui.basic.secondary.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #2e3032 inset!important;box-shadow:0 0 0 1px #2e3032 inset!important;color:#27292a!important}.ui.basic.secondary.active.button,.ui.basic.secondary.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #27292a inset!important;box-shadow:0 0 0 1px #27292a inset!important;color:#343637!important}.ui.basic.secondary.button:active,.ui.basic.secondary.buttons .button:active{-webkit-box-shadow:0 0 0 1px #343637 inset!important;box-shadow:0 0 0 1px #343637 inset!important;color:#343637!important}.ui.buttons:not(.vertical)>.basic.primary.button:not(:first-child){margin-left:-1px}.ui.inverted.secondary.button,.ui.inverted.secondary.buttons .button{background-color:transparent;-webkit-box-shadow:0 0 0 2px #545454 inset!important;box-shadow:0 0 0 2px #545454 inset!important;color:#545454}.ui.inverted.secondary.button.active,.ui.inverted.secondary.button:active,.ui.inverted.secondary.button:focus,.ui.inverted.secondary.button:hover,.ui.inverted.secondary.buttons .button.active,.ui.inverted.secondary.buttons .button:active,.ui.inverted.secondary.buttons .button:focus,.ui.inverted.secondary.buttons .button:hover{-webkit-box-shadow:none!important;box-shadow:none!important;color:#fff}.ui.inverted.secondary.button:hover,.ui.inverted.secondary.buttons .button:hover{background-color:#616161}.ui.inverted.secondary.button:focus,.ui.inverted.secondary.buttons .button:focus{background-color:#686868}.ui.inverted.secondary.active.button,.ui.inverted.secondary.buttons .active.button{background-color:#616161}.ui.inverted.secondary.button:active,.ui.inverted.secondary.buttons .button:active{background-color:#6e6e6e}.ui.inverted.secondary.basic.button,.ui.inverted.secondary.basic.buttons .button,.ui.inverted.secondary.buttons .basic.button{background-color:transparent;-webkit-box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;box-shadow:0 0 0 2px rgba(255,255,255,.5) inset!important;color:#fff!important}.ui.inverted.secondary.basic.button:hover,.ui.inverted.secondary.basic.buttons .button:hover,.ui.inverted.secondary.buttons .basic.button:hover{-webkit-box-shadow:0 0 0 2px #616161 inset!important;box-shadow:0 0 0 2px #616161 inset!important;color:#545454!important}.ui.inverted.secondary.basic.button:focus,.ui.inverted.secondary.basic.buttons .button:focus{-webkit-box-shadow:0 0 0 2px #686868 inset!important;box-shadow:0 0 0 2px #686868 inset!important;color:#545454!important}.ui.inverted.secondary.basic.active.button,.ui.inverted.secondary.basic.buttons .active.button,.ui.inverted.secondary.buttons .basic.active.button{-webkit-box-shadow:0 0 0 2px #616161 inset!important;box-shadow:0 0 0 2px #616161 inset!important;color:#545454!important}.ui.inverted.secondary.basic.button:active,.ui.inverted.secondary.basic.buttons .button:active,.ui.inverted.secondary.buttons .basic.button:active{-webkit-box-shadow:0 0 0 2px #6e6e6e inset!important;box-shadow:0 0 0 2px #6e6e6e inset!important;color:#545454!important}.ui.positive.button,.ui.positive.buttons .button{background-color:#21ba45;color:#fff;text-shadow:none;background-image:none}.ui.positive.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.positive.button:hover,.ui.positive.buttons .button:hover{background-color:#16ab39;color:#fff;text-shadow:none}.ui.positive.button:focus,.ui.positive.buttons .button:focus{background-color:#0ea432;color:#fff;text-shadow:none}.ui.positive.button:active,.ui.positive.buttons .button:active{background-color:#198f35;color:#fff;text-shadow:none}.ui.positive.active.button,.ui.positive.button .active.button:active,.ui.positive.buttons .active.button,.ui.positive.buttons .active.button:active{background-color:#13ae38;color:#fff;text-shadow:none}.ui.basic.positive.button,.ui.basic.positive.buttons .button{-webkit-box-shadow:0 0 0 1px #21ba45 inset!important;box-shadow:0 0 0 1px #21ba45 inset!important;color:#21ba45!important}.ui.basic.positive.button:hover,.ui.basic.positive.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #16ab39 inset!important;box-shadow:0 0 0 1px #16ab39 inset!important;color:#16ab39!important}.ui.basic.positive.button:focus,.ui.basic.positive.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #0ea432 inset!important;box-shadow:0 0 0 1px #0ea432 inset!important;color:#16ab39!important}.ui.basic.positive.active.button,.ui.basic.positive.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #13ae38 inset!important;box-shadow:0 0 0 1px #13ae38 inset!important;color:#198f35!important}.ui.basic.positive.button:active,.ui.basic.positive.buttons .button:active{-webkit-box-shadow:0 0 0 1px #198f35 inset!important;box-shadow:0 0 0 1px #198f35 inset!important;color:#198f35!important}.ui.buttons:not(.vertical)>.basic.primary.button:not(:first-child){margin-left:-1px}.ui.negative.button,.ui.negative.buttons .button{background-color:#db2828;color:#fff;text-shadow:none;background-image:none}.ui.negative.button{-webkit-box-shadow:0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 0 rgba(34,36,38,.15) inset}.ui.negative.button:hover,.ui.negative.buttons .button:hover{background-color:#d01919;color:#fff;text-shadow:none}.ui.negative.button:focus,.ui.negative.buttons .button:focus{background-color:#ca1010;color:#fff;text-shadow:none}.ui.negative.button:active,.ui.negative.buttons .button:active{background-color:#b21e1e;color:#fff;text-shadow:none}.ui.negative.active.button,.ui.negative.button .active.button:active,.ui.negative.buttons .active.button,.ui.negative.buttons .active.button:active{background-color:#d41515;color:#fff;text-shadow:none}.ui.basic.negative.button,.ui.basic.negative.buttons .button{-webkit-box-shadow:0 0 0 1px #db2828 inset!important;box-shadow:0 0 0 1px #db2828 inset!important;color:#db2828!important}.ui.basic.negative.button:hover,.ui.basic.negative.buttons .button:hover{background:0 0!important;-webkit-box-shadow:0 0 0 1px #d01919 inset!important;box-shadow:0 0 0 1px #d01919 inset!important;color:#d01919!important}.ui.basic.negative.button:focus,.ui.basic.negative.buttons .button:focus{background:0 0!important;-webkit-box-shadow:0 0 0 1px #ca1010 inset!important;box-shadow:0 0 0 1px #ca1010 inset!important;color:#d01919!important}.ui.basic.negative.active.button,.ui.basic.negative.buttons .active.button{background:0 0!important;-webkit-box-shadow:0 0 0 1px #d41515 inset!important;box-shadow:0 0 0 1px #d41515 inset!important;color:#b21e1e!important}.ui.basic.negative.button:active,.ui.basic.negative.buttons .button:active{-webkit-box-shadow:0 0 0 1px #b21e1e inset!important;box-shadow:0 0 0 1px #b21e1e inset!important;color:#b21e1e!important}.ui.buttons:not(.vertical)>.basic.primary.button:not(:first-child){margin-left:-1px}.ui.buttons{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;font-size:0;vertical-align:baseline;margin:0 .25em 0 0}.ui.buttons:not(.basic):not(.inverted){-webkit-box-shadow:none;box-shadow:none}.ui.buttons:after{content:".";display:block;height:0;clear:both;visibility:hidden}.ui.buttons .button{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;margin:0;border-radius:0;margin:0}.ui.buttons:not(.basic):not(.inverted)>.button,.ui.buttons>.ui.button:not(.basic):not(.inverted){-webkit-box-shadow:0 0 0 1px transparent inset,0 0 0 0 rgba(34,36,38,.15) inset;box-shadow:0 0 0 1px transparent inset,0 0 0 0 rgba(34,36,38,.15) inset}.ui.buttons .button:first-child{border-left:none;margin-left:0;border-top-left-radius:.28571429rem;border-bottom-left-radius:.28571429rem}.ui.buttons .button:last-child{border-top-right-radius:.28571429rem;border-bottom-right-radius:.28571429rem}.ui.vertical.buttons{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.ui.vertical.buttons .button{display:block;float:none;width:100%;margin:0;-webkit-box-shadow:none;box-shadow:none;border-radius:0}.ui.vertical.buttons .button:first-child{border-top-left-radius:.28571429rem;border-top-right-radius:.28571429rem}.ui.vertical.buttons .button:last-child{margin-bottom:0;border-bottom-left-radius:.28571429rem;border-bottom-right-radius:.28571429rem}.ui.vertical.buttons .button:only-child{border-radius:.28571429rem} \ No newline at end of file diff --git a/static/semantic/components/card.css b/static/semantic/components/card.css deleted file mode 100644 index 20d70a29d..000000000 --- a/static/semantic/components/card.css +++ /dev/null @@ -1,997 +0,0 @@ -/*! - * # Semantic UI 2.4.0 - Item - * http://github.com/semantic-org/semantic-ui/ - * - * - * Released under the MIT license - * http://opensource.org/licenses/MIT - * - */ - - -/******************************* - Standard -*******************************/ - - -/*-------------- - Card ----------------*/ - -.ui.cards > .card, -.ui.card { - max-width: 100%; - position: relative; - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; - width: 290px; - min-height: 0px; - background: #FFFFFF; - padding: 0em; - border: none; - border-radius: 0.28571429rem; - -webkit-box-shadow: 0px 1px 3px 0px #D4D4D5, 0px 0px 0px 1px #D4D4D5; - box-shadow: 0px 1px 3px 0px #D4D4D5, 0px 0px 0px 1px #D4D4D5; - -webkit-transition: -webkit-box-shadow 0.1s ease, -webkit-transform 0.1s ease; - transition: -webkit-box-shadow 0.1s ease, -webkit-transform 0.1s ease; - transition: box-shadow 0.1s ease, transform 0.1s ease; - transition: box-shadow 0.1s ease, transform 0.1s ease, -webkit-box-shadow 0.1s ease, -webkit-transform 0.1s ease; - z-index: ''; -} -.ui.card { - margin: 1em 0em; -} -.ui.cards > .card a, -.ui.card a { - cursor: pointer; -} -.ui.card:first-child { - margin-top: 0em; -} -.ui.card:last-child { - margin-bottom: 0em; -} - -/*-------------- - Cards ----------------*/ - -.ui.cards { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - margin: -0.875em -0.5em; - -ms-flex-wrap: wrap; - flex-wrap: wrap; -} -.ui.cards > .card { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - margin: 0.875em 0.5em; - float: none; -} - -/* Clearing */ -.ui.cards:after, -.ui.card:after { - display: block; - content: ' '; - height: 0px; - clear: both; - overflow: hidden; - visibility: hidden; -} - -/* Consecutive Card Groups Preserve Row Spacing */ -.ui.cards ~ .ui.cards { - margin-top: 0.875em; -} - -/*-------------- - Rounded Edges ----------------*/ - -.ui.cards > .card > :first-child, -.ui.card > :first-child { - border-radius: 0.28571429rem 0.28571429rem 0em 0em !important; - border-top: none !important; -} -.ui.cards > .card > :last-child, -.ui.card > :last-child { - border-radius: 0em 0em 0.28571429rem 0.28571429rem !important; -} -.ui.cards > .card > :only-child, -.ui.card > :only-child { - border-radius: 0.28571429rem !important; -} - -/*-------------- - Images ----------------*/ - -.ui.cards > .card > .image, -.ui.card > .image { - position: relative; - display: block; - -webkit-box-flex: 0; - -ms-flex: 0 0 auto; - flex: 0 0 auto; - padding: 0em; - background: rgba(0, 0, 0, 0.05); -} -.ui.cards > .card > .image > img, -.ui.card > .image > img { - display: block; - width: 100%; - height: auto; - border-radius: inherit; -} -.ui.cards > .card > .image:not(.ui) > img, -.ui.card > .image:not(.ui) > img { - border: none; -} - -/*-------------- - Content ----------------*/ - -.ui.cards > .card > .content, -.ui.card > .content { - -webkit-box-flex: 1; - -ms-flex-positive: 1; - flex-grow: 1; - border: none; - border-top: 1px solid rgba(34, 36, 38, 0.1); - background: none; - margin: 0em; - padding: 1em 1em; - -webkit-box-shadow: none; - box-shadow: none; - font-size: 1em; - border-radius: 0em; -} -.ui.cards > .card > .content:after, -.ui.card > .content:after { - display: block; - content: ' '; - height: 0px; - clear: both; - overflow: hidden; - visibility: hidden; -} -.ui.cards > .card > .content > .header, -.ui.card > .content > .header { - display: block; - margin: ''; - font-family: 'Lato', 'Helvetica Neue', Arial, Helvetica, sans-serif; - color: rgba(0, 0, 0, 0.85); -} - -/* Default Header Size */ -.ui.cards > .card > .content > .header:not(.ui), -.ui.card > .content > .header:not(.ui) { - font-weight: bold; - font-size: 1.28571429em; - margin-top: -0.21425em; - line-height: 1.28571429em; -} -.ui.cards > .card > .content > .meta + .description, -.ui.cards > .card > .content > .header + .description, -.ui.card > .content > .meta + .description, -.ui.card > .content > .header + .description { - margin-top: 0.5em; -} - -/*---------------- - Floated Content ------------------*/ - -.ui.cards > .card [class*="left floated"], -.ui.card [class*="left floated"] { - float: left; -} -.ui.cards > .card [class*="right floated"], -.ui.card [class*="right floated"] { - float: right; -} - -/*-------------- - Aligned ----------------*/ - -.ui.cards > .card [class*="left aligned"], -.ui.card [class*="left aligned"] { - text-align: left; -} -.ui.cards > .card [class*="center aligned"], -.ui.card [class*="center aligned"] { - text-align: center; -} -.ui.cards > .card [class*="right aligned"], -.ui.card [class*="right aligned"] { - text-align: right; -} - -/*-------------- - Content Image ----------------*/ - -.ui.cards > .card .content img, -.ui.card .content img { - display: inline-block; - vertical-align: middle; - width: ''; -} -.ui.cards > .card img.avatar, -.ui.cards > .card .avatar img, -.ui.card img.avatar, -.ui.card .avatar img { - width: 2em; - height: 2em; - border-radius: 500rem; -} - -/*-------------- - Description ----------------*/ - -.ui.cards > .card > .content > .description, -.ui.card > .content > .description { - clear: both; - color: rgba(0, 0, 0, 0.68); -} - -/*-------------- - Paragraph ----------------*/ - -.ui.cards > .card > .content p, -.ui.card > .content p { - margin: 0em 0em 0.5em; -} -.ui.cards > .card > .content p:last-child, -.ui.card > .content p:last-child { - margin-bottom: 0em; -} - -/*-------------- - Meta ----------------*/ - -.ui.cards > .card .meta, -.ui.card .meta { - font-size: 1em; - color: rgba(0, 0, 0, 0.4); -} -.ui.cards > .card .meta *, -.ui.card .meta * { - margin-right: 0.3em; -} -.ui.cards > .card .meta :last-child, -.ui.card .meta :last-child { - margin-right: 0em; -} -.ui.cards > .card .meta [class*="right floated"], -.ui.card .meta [class*="right floated"] { - margin-right: 0em; - margin-left: 0.3em; -} - -/*-------------- - Links ----------------*/ - - -/* Generic */ -.ui.cards > .card > .content a:not(.ui), -.ui.card > .content a:not(.ui) { - color: ''; - -webkit-transition: color 0.1s ease; - transition: color 0.1s ease; -} -.ui.cards > .card > .content a:not(.ui):hover, -.ui.card > .content a:not(.ui):hover { - color: ''; -} - -/* Header */ -.ui.cards > .card > .content > a.header, -.ui.card > .content > a.header { - color: rgba(0, 0, 0, 0.85); -} -.ui.cards > .card > .content > a.header:hover, -.ui.card > .content > a.header:hover { - color: #1e70bf; -} - -/* Meta */ -.ui.cards > .card .meta > a:not(.ui), -.ui.card .meta > a:not(.ui) { - color: rgba(0, 0, 0, 0.4); -} -.ui.cards > .card .meta > a:not(.ui):hover, -.ui.card .meta > a:not(.ui):hover { - color: rgba(0, 0, 0, 0.87); -} - -/*-------------- - Buttons ----------------*/ - -.ui.cards > .card > .buttons, -.ui.card > .buttons, -.ui.cards > .card > .button, -.ui.card > .button { - margin: 0px -1px; - width: calc(100% + 2px ); -} - -/*-------------- - Dimmer ----------------*/ - -.ui.cards > .card .dimmer, -.ui.card .dimmer { - background-color: ''; - z-index: 10; -} - -/*-------------- - Labels ----------------*/ - - -/*-----Star----- */ - - -/* Icon */ -.ui.cards > .card > .content .star.icon, -.ui.card > .content .star.icon { - cursor: pointer; - opacity: 0.75; - -webkit-transition: color 0.1s ease; - transition: color 0.1s ease; -} -.ui.cards > .card > .content .star.icon:hover, -.ui.card > .content .star.icon:hover { - opacity: 1; - color: #FFB70A; -} -.ui.cards > .card > .content .active.star.icon, -.ui.card > .content .active.star.icon { - color: #FFE623; -} - -/*-----Like----- */ - - -/* Icon */ -.ui.cards > .card > .content .like.icon, -.ui.card > .content .like.icon { - cursor: pointer; - opacity: 0.75; - -webkit-transition: color 0.1s ease; - transition: color 0.1s ease; -} -.ui.cards > .card > .content .like.icon:hover, -.ui.card > .content .like.icon:hover { - opacity: 1; - color: #FF2733; -} -.ui.cards > .card > .content .active.like.icon, -.ui.card > .content .active.like.icon { - color: #FF2733; -} - -/*---------------- - Extra Content ------------------*/ - -.ui.cards > .card > .extra, -.ui.card > .extra { - max-width: 100%; - min-height: 0em !important; - -webkit-box-flex: 0; - -ms-flex-positive: 0; - flex-grow: 0; - border-top: 1px solid rgba(0, 0, 0, 0.05) !important; - position: static; - background: none; - width: auto; - margin: 0em 0em; - padding: 0.75em 1em; - top: 0em; - left: 0em; - color: rgba(0, 0, 0, 0.4); - -webkit-box-shadow: none; - box-shadow: none; - -webkit-transition: color 0.1s ease; - transition: color 0.1s ease; -} -.ui.cards > .card > .extra a:not(.ui), -.ui.card > .extra a:not(.ui) { - color: rgba(0, 0, 0, 0.4); -} -.ui.cards > .card > .extra a:not(.ui):hover, -.ui.card > .extra a:not(.ui):hover { - color: #1e70bf; -} - - -/******************************* - Variations -*******************************/ - - -/*------------------- - Raised ---------------------*/ - -.ui.raised.cards > .card, -.ui.raised.card { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 4px 0px rgba(34, 36, 38, 0.12), 0px 2px 10px 0px rgba(34, 36, 38, 0.15); - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 4px 0px rgba(34, 36, 38, 0.12), 0px 2px 10px 0px rgba(34, 36, 38, 0.15); -} -.ui.raised.cards a.card:hover, -.ui.link.cards .raised.card:hover, -a.ui.raised.card:hover, -.ui.link.raised.card:hover { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 4px 0px rgba(34, 36, 38, 0.15), 0px 2px 10px 0px rgba(34, 36, 38, 0.25); - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 4px 0px rgba(34, 36, 38, 0.15), 0px 2px 10px 0px rgba(34, 36, 38, 0.25); -} -.ui.raised.cards > .card, -.ui.raised.card { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 4px 0px rgba(34, 36, 38, 0.12), 0px 2px 10px 0px rgba(34, 36, 38, 0.15); - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 4px 0px rgba(34, 36, 38, 0.12), 0px 2px 10px 0px rgba(34, 36, 38, 0.15); -} - -/*------------------- - Centered ---------------------*/ - -.ui.centered.cards { - -webkit-box-pack: center; - -ms-flex-pack: center; - justify-content: center; -} -.ui.centered.card { - margin-left: auto; - margin-right: auto; -} - -/*------------------- - Fluid ---------------------*/ - -.ui.fluid.card { - width: 100%; - max-width: 9999px; -} - -/*------------------- - Link ---------------------*/ - -.ui.cards a.card, -.ui.link.cards .card, -a.ui.card, -.ui.link.card { - -webkit-transform: none; - transform: none; -} -.ui.cards a.card:hover, -.ui.link.cards .card:hover, -a.ui.card:hover, -.ui.link.card:hover { - cursor: pointer; - z-index: 5; - background: #FFFFFF; - border: none; - -webkit-box-shadow: 0px 1px 3px 0px #BCBDBD, 0px 0px 0px 1px #D4D4D5; - box-shadow: 0px 1px 3px 0px #BCBDBD, 0px 0px 0px 1px #D4D4D5; - -webkit-transform: translateY(-3px); - transform: translateY(-3px); -} - -/*------------------- - Colors ---------------------*/ - - -/* Red */ -.ui.red.cards > .card, -.ui.cards > .red.card, -.ui.red.card { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #DB2828, 0px 1px 3px 0px #D4D4D5; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #DB2828, 0px 1px 3px 0px #D4D4D5; -} -.ui.red.cards > .card:hover, -.ui.cards > .red.card:hover, -.ui.red.card:hover { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #d01919, 0px 1px 3px 0px #BCBDBD; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #d01919, 0px 1px 3px 0px #BCBDBD; -} - -/* Orange */ -.ui.orange.cards > .card, -.ui.cards > .orange.card, -.ui.orange.card { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #F2711C, 0px 1px 3px 0px #D4D4D5; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #F2711C, 0px 1px 3px 0px #D4D4D5; -} -.ui.orange.cards > .card:hover, -.ui.cards > .orange.card:hover, -.ui.orange.card:hover { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #f26202, 0px 1px 3px 0px #BCBDBD; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #f26202, 0px 1px 3px 0px #BCBDBD; -} - -/* Yellow */ -.ui.yellow.cards > .card, -.ui.cards > .yellow.card, -.ui.yellow.card { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #FBBD08, 0px 1px 3px 0px #D4D4D5; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #FBBD08, 0px 1px 3px 0px #D4D4D5; -} -.ui.yellow.cards > .card:hover, -.ui.cards > .yellow.card:hover, -.ui.yellow.card:hover { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #eaae00, 0px 1px 3px 0px #BCBDBD; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #eaae00, 0px 1px 3px 0px #BCBDBD; -} - -/* Olive */ -.ui.olive.cards > .card, -.ui.cards > .olive.card, -.ui.olive.card { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #B5CC18, 0px 1px 3px 0px #D4D4D5; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #B5CC18, 0px 1px 3px 0px #D4D4D5; -} -.ui.olive.cards > .card:hover, -.ui.cards > .olive.card:hover, -.ui.olive.card:hover { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #a7bd0d, 0px 1px 3px 0px #BCBDBD; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #a7bd0d, 0px 1px 3px 0px #BCBDBD; -} - -/* Green */ -.ui.green.cards > .card, -.ui.cards > .green.card, -.ui.green.card { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #21BA45, 0px 1px 3px 0px #D4D4D5; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #21BA45, 0px 1px 3px 0px #D4D4D5; -} -.ui.green.cards > .card:hover, -.ui.cards > .green.card:hover, -.ui.green.card:hover { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #16ab39, 0px 1px 3px 0px #BCBDBD; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #16ab39, 0px 1px 3px 0px #BCBDBD; -} - -/* Teal */ -.ui.teal.cards > .card, -.ui.cards > .teal.card, -.ui.teal.card { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #00B5AD, 0px 1px 3px 0px #D4D4D5; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #00B5AD, 0px 1px 3px 0px #D4D4D5; -} -.ui.teal.cards > .card:hover, -.ui.cards > .teal.card:hover, -.ui.teal.card:hover { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #009c95, 0px 1px 3px 0px #BCBDBD; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #009c95, 0px 1px 3px 0px #BCBDBD; -} - -/* Blue */ -.ui.blue.cards > .card, -.ui.cards > .blue.card, -.ui.blue.card { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #2185D0, 0px 1px 3px 0px #D4D4D5; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #2185D0, 0px 1px 3px 0px #D4D4D5; -} -.ui.blue.cards > .card:hover, -.ui.cards > .blue.card:hover, -.ui.blue.card:hover { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #1678c2, 0px 1px 3px 0px #BCBDBD; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #1678c2, 0px 1px 3px 0px #BCBDBD; -} - -/* Violet */ -.ui.violet.cards > .card, -.ui.cards > .violet.card, -.ui.violet.card { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #6435C9, 0px 1px 3px 0px #D4D4D5; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #6435C9, 0px 1px 3px 0px #D4D4D5; -} -.ui.violet.cards > .card:hover, -.ui.cards > .violet.card:hover, -.ui.violet.card:hover { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #5829bb, 0px 1px 3px 0px #BCBDBD; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #5829bb, 0px 1px 3px 0px #BCBDBD; -} - -/* Purple */ -.ui.purple.cards > .card, -.ui.cards > .purple.card, -.ui.purple.card { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #A333C8, 0px 1px 3px 0px #D4D4D5; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #A333C8, 0px 1px 3px 0px #D4D4D5; -} -.ui.purple.cards > .card:hover, -.ui.cards > .purple.card:hover, -.ui.purple.card:hover { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #9627ba, 0px 1px 3px 0px #BCBDBD; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #9627ba, 0px 1px 3px 0px #BCBDBD; -} - -/* Pink */ -.ui.pink.cards > .card, -.ui.cards > .pink.card, -.ui.pink.card { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #E03997, 0px 1px 3px 0px #D4D4D5; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #E03997, 0px 1px 3px 0px #D4D4D5; -} -.ui.pink.cards > .card:hover, -.ui.cards > .pink.card:hover, -.ui.pink.card:hover { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #e61a8d, 0px 1px 3px 0px #BCBDBD; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #e61a8d, 0px 1px 3px 0px #BCBDBD; -} - -/* Brown */ -.ui.brown.cards > .card, -.ui.cards > .brown.card, -.ui.brown.card { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #A5673F, 0px 1px 3px 0px #D4D4D5; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #A5673F, 0px 1px 3px 0px #D4D4D5; -} -.ui.brown.cards > .card:hover, -.ui.cards > .brown.card:hover, -.ui.brown.card:hover { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #975b33, 0px 1px 3px 0px #BCBDBD; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #975b33, 0px 1px 3px 0px #BCBDBD; -} - -/* Grey */ -.ui.grey.cards > .card, -.ui.cards > .grey.card, -.ui.grey.card { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #767676, 0px 1px 3px 0px #D4D4D5; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #767676, 0px 1px 3px 0px #D4D4D5; -} -.ui.grey.cards > .card:hover, -.ui.cards > .grey.card:hover, -.ui.grey.card:hover { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #838383, 0px 1px 3px 0px #BCBDBD; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #838383, 0px 1px 3px 0px #BCBDBD; -} - -/* Black */ -.ui.black.cards > .card, -.ui.cards > .black.card, -.ui.black.card { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #1B1C1D, 0px 1px 3px 0px #D4D4D5; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #1B1C1D, 0px 1px 3px 0px #D4D4D5; -} -.ui.black.cards > .card:hover, -.ui.cards > .black.card:hover, -.ui.black.card:hover { - -webkit-box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #27292a, 0px 1px 3px 0px #BCBDBD; - box-shadow: 0px 0px 0px 1px #D4D4D5, 0px 2px 0px 0px #27292a, 0px 1px 3px 0px #BCBDBD; -} - -/*-------------- - Card Count ----------------*/ - -.ui.one.cards { - margin-left: 0em; - margin-right: 0em; -} -.ui.one.cards > .card { - width: 100%; -} -.ui.two.cards { - margin-left: -1em; - margin-right: -1em; -} -.ui.two.cards > .card { - width: calc( 50% - 2em ); - margin-left: 1em; - margin-right: 1em; -} -.ui.three.cards { - margin-left: -1em; - margin-right: -1em; -} -.ui.three.cards > .card { - width: calc( 33.33333333% - 2em ); - margin-left: 1em; - margin-right: 1em; -} -.ui.four.cards { - margin-left: -0.75em; - margin-right: -0.75em; -} -.ui.four.cards > .card { - width: calc( 25% - 1.5em ); - margin-left: 0.75em; - margin-right: 0.75em; -} -.ui.five.cards { - margin-left: -0.75em; - margin-right: -0.75em; -} -.ui.five.cards > .card { - width: calc( 20% - 1.5em ); - margin-left: 0.75em; - margin-right: 0.75em; -} -.ui.six.cards { - margin-left: -0.75em; - margin-right: -0.75em; -} -.ui.six.cards > .card { - width: calc( 16.66666667% - 1.5em ); - margin-left: 0.75em; - margin-right: 0.75em; -} -.ui.seven.cards { - margin-left: -0.5em; - margin-right: -0.5em; -} -.ui.seven.cards > .card { - width: calc( 14.28571429% - 1em ); - margin-left: 0.5em; - margin-right: 0.5em; -} -.ui.eight.cards { - margin-left: -0.5em; - margin-right: -0.5em; -} -.ui.eight.cards > .card { - width: calc( 12.5% - 1em ); - margin-left: 0.5em; - margin-right: 0.5em; - font-size: 11px; -} -.ui.nine.cards { - margin-left: -0.5em; - margin-right: -0.5em; -} -.ui.nine.cards > .card { - width: calc( 11.11111111% - 1em ); - margin-left: 0.5em; - margin-right: 0.5em; - font-size: 10px; -} -.ui.ten.cards { - margin-left: -0.5em; - margin-right: -0.5em; -} -.ui.ten.cards > .card { - width: calc( 10% - 1em ); - margin-left: 0.5em; - margin-right: 0.5em; -} - -/*------------------- - Doubling ---------------------*/ - - -/* Mobile Only */ -@media only screen and (max-width: 767px) { - .ui.two.doubling.cards { - margin-left: 0em; - margin-right: 0em; - } - .ui.two.doubling.cards > .card { - width: 100%; - margin-left: 0em; - margin-right: 0em; - } - .ui.three.doubling.cards { - margin-left: -1em; - margin-right: -1em; - } - .ui.three.doubling.cards > .card { - width: calc( 50% - 2em ); - margin-left: 1em; - margin-right: 1em; - } - .ui.four.doubling.cards { - margin-left: -1em; - margin-right: -1em; - } - .ui.four.doubling.cards > .card { - width: calc( 50% - 2em ); - margin-left: 1em; - margin-right: 1em; - } - .ui.five.doubling.cards { - margin-left: -1em; - margin-right: -1em; - } - .ui.five.doubling.cards > .card { - width: calc( 50% - 2em ); - margin-left: 1em; - margin-right: 1em; - } - .ui.six.doubling.cards { - margin-left: -1em; - margin-right: -1em; - } - .ui.six.doubling.cards > .card { - width: calc( 50% - 2em ); - margin-left: 1em; - margin-right: 1em; - } - .ui.seven.doubling.cards { - margin-left: -1em; - margin-right: -1em; - } - .ui.seven.doubling.cards > .card { - width: calc( 33.33333333% - 2em ); - margin-left: 1em; - margin-right: 1em; - } - .ui.eight.doubling.cards { - margin-left: -1em; - margin-right: -1em; - } - .ui.eight.doubling.cards > .card { - width: calc( 33.33333333% - 2em ); - margin-left: 1em; - margin-right: 1em; - } - .ui.nine.doubling.cards { - margin-left: -1em; - margin-right: -1em; - } - .ui.nine.doubling.cards > .card { - width: calc( 33.33333333% - 2em ); - margin-left: 1em; - margin-right: 1em; - } - .ui.ten.doubling.cards { - margin-left: -1em; - margin-right: -1em; - } - .ui.ten.doubling.cards > .card { - width: calc( 33.33333333% - 2em ); - margin-left: 1em; - margin-right: 1em; - } -} - -/* Tablet Only */ -@media only screen and (min-width: 768px) and (max-width: 991px) { - .ui.two.doubling.cards { - margin-left: 0em; - margin-right: 0em; - } - .ui.two.doubling.cards > .card { - width: 100%; - margin-left: 0em; - margin-right: 0em; - } - .ui.three.doubling.cards { - margin-left: -1em; - margin-right: -1em; - } - .ui.three.doubling.cards > .card { - width: calc( 50% - 2em ); - margin-left: 1em; - margin-right: 1em; - } - .ui.four.doubling.cards { - margin-left: -1em; - margin-right: -1em; - } - .ui.four.doubling.cards > .card { - width: calc( 50% - 2em ); - margin-left: 1em; - margin-right: 1em; - } - .ui.five.doubling.cards { - margin-left: -1em; - margin-right: -1em; - } - .ui.five.doubling.cards > .card { - width: calc( 33.33333333% - 2em ); - margin-left: 1em; - margin-right: 1em; - } - .ui.six.doubling.cards { - margin-left: -1em; - margin-right: -1em; - } - .ui.six.doubling.cards > .card { - width: calc( 33.33333333% - 2em ); - margin-left: 1em; - margin-right: 1em; - } - .ui.eight.doubling.cards { - margin-left: -1em; - margin-right: -1em; - } - .ui.eight.doubling.cards > .card { - width: calc( 33.33333333% - 2em ); - margin-left: 1em; - margin-right: 1em; - } - .ui.eight.doubling.cards { - margin-left: -0.75em; - margin-right: -0.75em; - } - .ui.eight.doubling.cards > .card { - width: calc( 25% - 1.5em ); - margin-left: 0.75em; - margin-right: 0.75em; - } - .ui.nine.doubling.cards { - margin-left: -0.75em; - margin-right: -0.75em; - } - .ui.nine.doubling.cards > .card { - width: calc( 25% - 1.5em ); - margin-left: 0.75em; - margin-right: 0.75em; - } - .ui.ten.doubling.cards { - margin-left: -0.75em; - margin-right: -0.75em; - } - .ui.ten.doubling.cards > .card { - width: calc( 20% - 1.5em ); - margin-left: 0.75em; - margin-right: 0.75em; - } -} - -/*------------------- - Stackable ---------------------*/ - -@media only screen and (max-width: 767px) { - .ui.stackable.cards { - display: block !important; - } - .ui.stackable.cards .card:first-child { - margin-top: 0em !important; - } - .ui.stackable.cards > .card { - display: block !important; - height: auto !important; - margin: 1em 1em; - padding: 0 !important; - width: calc( 100% - 2em ) !important; - } -} - -/*-------------- - Size ----------------*/ - -.ui.cards > .card { - font-size: 1em; -} - - -/******************************* - Theme Overrides -*******************************/ - - - -/******************************* - User Variable Overrides -*******************************/ - diff --git a/static/semantic/components/card.min.css b/static/semantic/components/card.min.css deleted file mode 100644 index fa708c617..000000000 --- a/static/semantic/components/card.min.css +++ /dev/null @@ -1,9 +0,0 @@ -/*! - * # Semantic UI 2.4.0 - Item - * http://github.com/semantic-org/semantic-ui/ - * - * - * Released under the MIT license - * http://opensource.org/licenses/MIT - * - */.ui.card,.ui.cards>.card{max-width:100%;position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:290px;min-height:0;background:#fff;padding:0;border:none;border-radius:.28571429rem;-webkit-box-shadow:0 1px 3px 0 #d4d4d5,0 0 0 1px #d4d4d5;box-shadow:0 1px 3px 0 #d4d4d5,0 0 0 1px #d4d4d5;-webkit-transition:-webkit-box-shadow .1s ease,-webkit-transform .1s ease;transition:-webkit-box-shadow .1s ease,-webkit-transform .1s ease;transition:box-shadow .1s ease,transform .1s ease;transition:box-shadow .1s ease,transform .1s ease,-webkit-box-shadow .1s ease,-webkit-transform .1s ease;z-index:''}.ui.card{margin:1em 0}.ui.card a,.ui.cards>.card a{cursor:pointer}.ui.card:first-child{margin-top:0}.ui.card:last-child{margin-bottom:0}.ui.cards{display:-webkit-box;display:-ms-flexbox;display:flex;margin:-.875em -.5em;-ms-flex-wrap:wrap;flex-wrap:wrap}.ui.cards>.card{display:-webkit-box;display:-ms-flexbox;display:flex;margin:.875em .5em;float:none}.ui.card:after,.ui.cards:after{display:block;content:' ';height:0;clear:both;overflow:hidden;visibility:hidden}.ui.cards~.ui.cards{margin-top:.875em}.ui.card>:first-child,.ui.cards>.card>:first-child{border-radius:.28571429rem .28571429rem 0 0!important;border-top:none!important}.ui.card>:last-child,.ui.cards>.card>:last-child{border-radius:0 0 .28571429rem .28571429rem!important}.ui.card>:only-child,.ui.cards>.card>:only-child{border-radius:.28571429rem!important}.ui.card>.image,.ui.cards>.card>.image{position:relative;display:block;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;padding:0;background:rgba(0,0,0,.05)}.ui.card>.image>img,.ui.cards>.card>.image>img{display:block;width:100%;height:auto;border-radius:inherit}.ui.card>.image:not(.ui)>img,.ui.cards>.card>.image:not(.ui)>img{border:none}.ui.card>.content,.ui.cards>.card>.content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;border:none;border-top:1px solid rgba(34,36,38,.1);background:0 0;margin:0;padding:1em 1em;-webkit-box-shadow:none;box-shadow:none;font-size:1em;border-radius:0}.ui.card>.content:after,.ui.cards>.card>.content:after{display:block;content:' ';height:0;clear:both;overflow:hidden;visibility:hidden}.ui.card>.content>.header,.ui.cards>.card>.content>.header{display:block;margin:'';font-family:Lato,'Helvetica Neue',Arial,Helvetica,sans-serif;color:rgba(0,0,0,.85)}.ui.card>.content>.header:not(.ui),.ui.cards>.card>.content>.header:not(.ui){font-weight:700;font-size:1.28571429em;margin-top:-.21425em;line-height:1.28571429em}.ui.card>.content>.header+.description,.ui.card>.content>.meta+.description,.ui.cards>.card>.content>.header+.description,.ui.cards>.card>.content>.meta+.description{margin-top:.5em}.ui.card [class*="left floated"],.ui.cards>.card [class*="left floated"]{float:left}.ui.card [class*="right floated"],.ui.cards>.card [class*="right floated"]{float:right}.ui.card [class*="left aligned"],.ui.cards>.card [class*="left aligned"]{text-align:left}.ui.card [class*="center aligned"],.ui.cards>.card [class*="center aligned"]{text-align:center}.ui.card [class*="right aligned"],.ui.cards>.card [class*="right aligned"]{text-align:right}.ui.card .content img,.ui.cards>.card .content img{display:inline-block;vertical-align:middle;width:''}.ui.card .avatar img,.ui.card img.avatar,.ui.cards>.card .avatar img,.ui.cards>.card img.avatar{width:2em;height:2em;border-radius:500rem}.ui.card>.content>.description,.ui.cards>.card>.content>.description{clear:both;color:rgba(0,0,0,.68)}.ui.card>.content p,.ui.cards>.card>.content p{margin:0 0 .5em}.ui.card>.content p:last-child,.ui.cards>.card>.content p:last-child{margin-bottom:0}.ui.card .meta,.ui.cards>.card .meta{font-size:1em;color:rgba(0,0,0,.4)}.ui.card .meta *,.ui.cards>.card .meta *{margin-right:.3em}.ui.card .meta :last-child,.ui.cards>.card .meta :last-child{margin-right:0}.ui.card .meta [class*="right floated"],.ui.cards>.card .meta [class*="right floated"]{margin-right:0;margin-left:.3em}.ui.card>.content a:not(.ui),.ui.cards>.card>.content a:not(.ui){color:'';-webkit-transition:color .1s ease;transition:color .1s ease}.ui.card>.content a:not(.ui):hover,.ui.cards>.card>.content a:not(.ui):hover{color:''}.ui.card>.content>a.header,.ui.cards>.card>.content>a.header{color:rgba(0,0,0,.85)}.ui.card>.content>a.header:hover,.ui.cards>.card>.content>a.header:hover{color:#1e70bf}.ui.card .meta>a:not(.ui),.ui.cards>.card .meta>a:not(.ui){color:rgba(0,0,0,.4)}.ui.card .meta>a:not(.ui):hover,.ui.cards>.card .meta>a:not(.ui):hover{color:rgba(0,0,0,.87)}.ui.card>.button,.ui.card>.buttons,.ui.cards>.card>.button,.ui.cards>.card>.buttons{margin:0 -1px;width:calc(100% + 2px)}.ui.card .dimmer,.ui.cards>.card .dimmer{background-color:'';z-index:10}.ui.card>.content .star.icon,.ui.cards>.card>.content .star.icon{cursor:pointer;opacity:.75;-webkit-transition:color .1s ease;transition:color .1s ease}.ui.card>.content .star.icon:hover,.ui.cards>.card>.content .star.icon:hover{opacity:1;color:#ffb70a}.ui.card>.content .active.star.icon,.ui.cards>.card>.content .active.star.icon{color:#ffe623}.ui.card>.content .like.icon,.ui.cards>.card>.content .like.icon{cursor:pointer;opacity:.75;-webkit-transition:color .1s ease;transition:color .1s ease}.ui.card>.content .like.icon:hover,.ui.cards>.card>.content .like.icon:hover{opacity:1;color:#ff2733}.ui.card>.content .active.like.icon,.ui.cards>.card>.content .active.like.icon{color:#ff2733}.ui.card>.extra,.ui.cards>.card>.extra{max-width:100%;min-height:0!important;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;border-top:1px solid rgba(0,0,0,.05)!important;position:static;background:0 0;width:auto;margin:0 0;padding:.75em 1em;top:0;left:0;color:rgba(0,0,0,.4);-webkit-box-shadow:none;box-shadow:none;-webkit-transition:color .1s ease;transition:color .1s ease}.ui.card>.extra a:not(.ui),.ui.cards>.card>.extra a:not(.ui){color:rgba(0,0,0,.4)}.ui.card>.extra a:not(.ui):hover,.ui.cards>.card>.extra a:not(.ui):hover{color:#1e70bf}.ui.raised.card,.ui.raised.cards>.card{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15);box-shadow:0 0 0 1px #d4d4d5,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.link.cards .raised.card:hover,.ui.link.raised.card:hover,.ui.raised.cards a.card:hover,a.ui.raised.card:hover{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 4px 0 rgba(34,36,38,.15),0 2px 10px 0 rgba(34,36,38,.25);box-shadow:0 0 0 1px #d4d4d5,0 2px 4px 0 rgba(34,36,38,.15),0 2px 10px 0 rgba(34,36,38,.25)}.ui.raised.card,.ui.raised.cards>.card{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15);box-shadow:0 0 0 1px #d4d4d5,0 2px 4px 0 rgba(34,36,38,.12),0 2px 10px 0 rgba(34,36,38,.15)}.ui.centered.cards{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.ui.centered.card{margin-left:auto;margin-right:auto}.ui.fluid.card{width:100%;max-width:9999px}.ui.cards a.card,.ui.link.card,.ui.link.cards .card,a.ui.card{-webkit-transform:none;transform:none}.ui.cards a.card:hover,.ui.link.card:hover,.ui.link.cards .card:hover,a.ui.card:hover{cursor:pointer;z-index:5;background:#fff;border:none;-webkit-box-shadow:0 1px 3px 0 #bcbdbd,0 0 0 1px #d4d4d5;box-shadow:0 1px 3px 0 #bcbdbd,0 0 0 1px #d4d4d5;-webkit-transform:translateY(-3px);transform:translateY(-3px)}.ui.cards>.red.card,.ui.red.card,.ui.red.cards>.card{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #db2828,0 1px 3px 0 #d4d4d5;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #db2828,0 1px 3px 0 #d4d4d5}.ui.cards>.red.card:hover,.ui.red.card:hover,.ui.red.cards>.card:hover{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #d01919,0 1px 3px 0 #bcbdbd;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #d01919,0 1px 3px 0 #bcbdbd}.ui.cards>.orange.card,.ui.orange.card,.ui.orange.cards>.card{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #f2711c,0 1px 3px 0 #d4d4d5;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #f2711c,0 1px 3px 0 #d4d4d5}.ui.cards>.orange.card:hover,.ui.orange.card:hover,.ui.orange.cards>.card:hover{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #f26202,0 1px 3px 0 #bcbdbd;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #f26202,0 1px 3px 0 #bcbdbd}.ui.cards>.yellow.card,.ui.yellow.card,.ui.yellow.cards>.card{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #fbbd08,0 1px 3px 0 #d4d4d5;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #fbbd08,0 1px 3px 0 #d4d4d5}.ui.cards>.yellow.card:hover,.ui.yellow.card:hover,.ui.yellow.cards>.card:hover{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #eaae00,0 1px 3px 0 #bcbdbd;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #eaae00,0 1px 3px 0 #bcbdbd}.ui.cards>.olive.card,.ui.olive.card,.ui.olive.cards>.card{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #b5cc18,0 1px 3px 0 #d4d4d5;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #b5cc18,0 1px 3px 0 #d4d4d5}.ui.cards>.olive.card:hover,.ui.olive.card:hover,.ui.olive.cards>.card:hover{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #a7bd0d,0 1px 3px 0 #bcbdbd;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #a7bd0d,0 1px 3px 0 #bcbdbd}.ui.cards>.green.card,.ui.green.card,.ui.green.cards>.card{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #21ba45,0 1px 3px 0 #d4d4d5;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #21ba45,0 1px 3px 0 #d4d4d5}.ui.cards>.green.card:hover,.ui.green.card:hover,.ui.green.cards>.card:hover{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #16ab39,0 1px 3px 0 #bcbdbd;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #16ab39,0 1px 3px 0 #bcbdbd}.ui.cards>.teal.card,.ui.teal.card,.ui.teal.cards>.card{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #00b5ad,0 1px 3px 0 #d4d4d5;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #00b5ad,0 1px 3px 0 #d4d4d5}.ui.cards>.teal.card:hover,.ui.teal.card:hover,.ui.teal.cards>.card:hover{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #009c95,0 1px 3px 0 #bcbdbd;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #009c95,0 1px 3px 0 #bcbdbd}.ui.blue.card,.ui.blue.cards>.card,.ui.cards>.blue.card{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #2185d0,0 1px 3px 0 #d4d4d5;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #2185d0,0 1px 3px 0 #d4d4d5}.ui.blue.card:hover,.ui.blue.cards>.card:hover,.ui.cards>.blue.card:hover{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #1678c2,0 1px 3px 0 #bcbdbd;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #1678c2,0 1px 3px 0 #bcbdbd}.ui.cards>.violet.card,.ui.violet.card,.ui.violet.cards>.card{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #6435c9,0 1px 3px 0 #d4d4d5;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #6435c9,0 1px 3px 0 #d4d4d5}.ui.cards>.violet.card:hover,.ui.violet.card:hover,.ui.violet.cards>.card:hover{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #5829bb,0 1px 3px 0 #bcbdbd;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #5829bb,0 1px 3px 0 #bcbdbd}.ui.cards>.purple.card,.ui.purple.card,.ui.purple.cards>.card{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #a333c8,0 1px 3px 0 #d4d4d5;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #a333c8,0 1px 3px 0 #d4d4d5}.ui.cards>.purple.card:hover,.ui.purple.card:hover,.ui.purple.cards>.card:hover{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #9627ba,0 1px 3px 0 #bcbdbd;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #9627ba,0 1px 3px 0 #bcbdbd}.ui.cards>.pink.card,.ui.pink.card,.ui.pink.cards>.card{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #e03997,0 1px 3px 0 #d4d4d5;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #e03997,0 1px 3px 0 #d4d4d5}.ui.cards>.pink.card:hover,.ui.pink.card:hover,.ui.pink.cards>.card:hover{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #e61a8d,0 1px 3px 0 #bcbdbd;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #e61a8d,0 1px 3px 0 #bcbdbd}.ui.brown.card,.ui.brown.cards>.card,.ui.cards>.brown.card{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #a5673f,0 1px 3px 0 #d4d4d5;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #a5673f,0 1px 3px 0 #d4d4d5}.ui.brown.card:hover,.ui.brown.cards>.card:hover,.ui.cards>.brown.card:hover{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #975b33,0 1px 3px 0 #bcbdbd;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #975b33,0 1px 3px 0 #bcbdbd}.ui.cards>.grey.card,.ui.grey.card,.ui.grey.cards>.card{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #767676,0 1px 3px 0 #d4d4d5;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #767676,0 1px 3px 0 #d4d4d5}.ui.cards>.grey.card:hover,.ui.grey.card:hover,.ui.grey.cards>.card:hover{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #838383,0 1px 3px 0 #bcbdbd;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #838383,0 1px 3px 0 #bcbdbd}.ui.black.card,.ui.black.cards>.card,.ui.cards>.black.card{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #1b1c1d,0 1px 3px 0 #d4d4d5;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #1b1c1d,0 1px 3px 0 #d4d4d5}.ui.black.card:hover,.ui.black.cards>.card:hover,.ui.cards>.black.card:hover{-webkit-box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #27292a,0 1px 3px 0 #bcbdbd;box-shadow:0 0 0 1px #d4d4d5,0 2px 0 0 #27292a,0 1px 3px 0 #bcbdbd}.ui.one.cards{margin-left:0;margin-right:0}.ui.one.cards>.card{width:100%}.ui.two.cards{margin-left:-1em;margin-right:-1em}.ui.two.cards>.card{width:calc(50% - 2em);margin-left:1em;margin-right:1em}.ui.three.cards{margin-left:-1em;margin-right:-1em}.ui.three.cards>.card{width:calc(33.33333333% - 2em);margin-left:1em;margin-right:1em}.ui.four.cards{margin-left:-.75em;margin-right:-.75em}.ui.four.cards>.card{width:calc(25% - 1.5em);margin-left:.75em;margin-right:.75em}.ui.five.cards{margin-left:-.75em;margin-right:-.75em}.ui.five.cards>.card{width:calc(20% - 1.5em);margin-left:.75em;margin-right:.75em}.ui.six.cards{margin-left:-.75em;margin-right:-.75em}.ui.six.cards>.card{width:calc(16.66666667% - 1.5em);margin-left:.75em;margin-right:.75em}.ui.seven.cards{margin-left:-.5em;margin-right:-.5em}.ui.seven.cards>.card{width:calc(14.28571429% - 1em);margin-left:.5em;margin-right:.5em}.ui.eight.cards{margin-left:-.5em;margin-right:-.5em}.ui.eight.cards>.card{width:calc(12.5% - 1em);margin-left:.5em;margin-right:.5em;font-size:11px}.ui.nine.cards{margin-left:-.5em;margin-right:-.5em}.ui.nine.cards>.card{width:calc(11.11111111% - 1em);margin-left:.5em;margin-right:.5em;font-size:10px}.ui.ten.cards{margin-left:-.5em;margin-right:-.5em}.ui.ten.cards>.card{width:calc(10% - 1em);margin-left:.5em;margin-right:.5em}@media only screen and (max-width:767px){.ui.two.doubling.cards{margin-left:0;margin-right:0}.ui.two.doubling.cards>.card{width:100%;margin-left:0;margin-right:0}.ui.three.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.three.doubling.cards>.card{width:calc(50% - 2em);margin-left:1em;margin-right:1em}.ui.four.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.four.doubling.cards>.card{width:calc(50% - 2em);margin-left:1em;margin-right:1em}.ui.five.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.five.doubling.cards>.card{width:calc(50% - 2em);margin-left:1em;margin-right:1em}.ui.six.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.six.doubling.cards>.card{width:calc(50% - 2em);margin-left:1em;margin-right:1em}.ui.seven.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.seven.doubling.cards>.card{width:calc(33.33333333% - 2em);margin-left:1em;margin-right:1em}.ui.eight.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.eight.doubling.cards>.card{width:calc(33.33333333% - 2em);margin-left:1em;margin-right:1em}.ui.nine.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.nine.doubling.cards>.card{width:calc(33.33333333% - 2em);margin-left:1em;margin-right:1em}.ui.ten.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.ten.doubling.cards>.card{width:calc(33.33333333% - 2em);margin-left:1em;margin-right:1em}}@media only screen and (min-width:768px) and (max-width:991px){.ui.two.doubling.cards{margin-left:0;margin-right:0}.ui.two.doubling.cards>.card{width:100%;margin-left:0;margin-right:0}.ui.three.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.three.doubling.cards>.card{width:calc(50% - 2em);margin-left:1em;margin-right:1em}.ui.four.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.four.doubling.cards>.card{width:calc(50% - 2em);margin-left:1em;margin-right:1em}.ui.five.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.five.doubling.cards>.card{width:calc(33.33333333% - 2em);margin-left:1em;margin-right:1em}.ui.six.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.six.doubling.cards>.card{width:calc(33.33333333% - 2em);margin-left:1em;margin-right:1em}.ui.eight.doubling.cards{margin-left:-1em;margin-right:-1em}.ui.eight.doubling.cards>.card{width:calc(33.33333333% - 2em);margin-left:1em;margin-right:1em}.ui.eight.doubling.cards{margin-left:-.75em;margin-right:-.75em}.ui.eight.doubling.cards>.card{width:calc(25% - 1.5em);margin-left:.75em;margin-right:.75em}.ui.nine.doubling.cards{margin-left:-.75em;margin-right:-.75em}.ui.nine.doubling.cards>.card{width:calc(25% - 1.5em);margin-left:.75em;margin-right:.75em}.ui.ten.doubling.cards{margin-left:-.75em;margin-right:-.75em}.ui.ten.doubling.cards>.card{width:calc(20% - 1.5em);margin-left:.75em;margin-right:.75em}}@media only screen and (max-width:767px){.ui.stackable.cards{display:block!important}.ui.stackable.cards .card:first-child{margin-top:0!important}.ui.stackable.cards>.card{display:block!important;height:auto!important;margin:1em 1em;padding:0!important;width:calc(100% - 2em)!important}}.ui.cards>.card{font-size:1em} \ No newline at end of file diff --git a/static/semantic/components/checkbox.css b/static/semantic/components/checkbox.css deleted file mode 100644 index 7059c0b46..000000000 --- a/static/semantic/components/checkbox.css +++ /dev/null @@ -1,632 +0,0 @@ -/*! - * # Semantic UI 2.4.0 - Checkbox - * http://github.com/semantic-org/semantic-ui/ - * - * - * Released under the MIT license - * http://opensource.org/licenses/MIT - * - */ - - -/******************************* - Checkbox -*******************************/ - - -/*-------------- - Content ----------------*/ - -.ui.checkbox { - position: relative; - display: inline-block; - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - outline: none; - vertical-align: baseline; - font-style: normal; - min-height: 17px; - font-size: 1rem; - line-height: 17px; - min-width: 17px; -} - -/* HTML Checkbox */ -.ui.checkbox input[type="checkbox"], -.ui.checkbox input[type="radio"] { - cursor: pointer; - position: absolute; - top: 0px; - left: 0px; - opacity: 0 !important; - outline: none; - z-index: 3; - width: 17px; - height: 17px; -} - -/*-------------- - Box ----------------*/ - -.ui.checkbox .box, -.ui.checkbox label { - cursor: auto; - position: relative; - display: block; - padding-left: 1.85714em; - outline: none; - font-size: 1em; -} -.ui.checkbox .box:before, -.ui.checkbox label:before { - position: absolute; - top: 0px; - left: 0px; - width: 17px; - height: 17px; - content: ''; - background: #FFFFFF; - border-radius: 0.21428571rem; - -webkit-transition: border 0.1s ease, opacity 0.1s ease, -webkit-transform 0.1s ease, -webkit-box-shadow 0.1s ease; - transition: border 0.1s ease, opacity 0.1s ease, -webkit-transform 0.1s ease, -webkit-box-shadow 0.1s ease; - transition: border 0.1s ease, opacity 0.1s ease, transform 0.1s ease, box-shadow 0.1s ease; - transition: border 0.1s ease, opacity 0.1s ease, transform 0.1s ease, box-shadow 0.1s ease, -webkit-transform 0.1s ease, -webkit-box-shadow 0.1s ease; - border: 1px solid #D4D4D5; -} - -/*-------------- - Checkmark ----------------*/ - -.ui.checkbox .box:after, -.ui.checkbox label:after { - position: absolute; - font-size: 14px; - top: 0px; - left: 0px; - width: 17px; - height: 17px; - text-align: center; - opacity: 0; - color: rgba(0, 0, 0, 0.87); - -webkit-transition: border 0.1s ease, opacity 0.1s ease, -webkit-transform 0.1s ease, -webkit-box-shadow 0.1s ease; - transition: border 0.1s ease, opacity 0.1s ease, -webkit-transform 0.1s ease, -webkit-box-shadow 0.1s ease; - transition: border 0.1s ease, opacity 0.1s ease, transform 0.1s ease, box-shadow 0.1s ease; - transition: border 0.1s ease, opacity 0.1s ease, transform 0.1s ease, box-shadow 0.1s ease, -webkit-transform 0.1s ease, -webkit-box-shadow 0.1s ease; -} - -/*-------------- - Label ----------------*/ - - -/* Inside */ -.ui.checkbox label, -.ui.checkbox + label { - color: rgba(0, 0, 0, 0.87); - -webkit-transition: color 0.1s ease; - transition: color 0.1s ease; -} - -/* Outside */ -.ui.checkbox + label { - vertical-align: middle; -} - - -/******************************* - States -*******************************/ - - -/*-------------- - Hover ----------------*/ - -.ui.checkbox .box:hover::before, -.ui.checkbox label:hover::before { - background: #FFFFFF; - border-color: rgba(34, 36, 38, 0.35); -} -.ui.checkbox label:hover, -.ui.checkbox + label:hover { - color: rgba(0, 0, 0, 0.8); -} - -/*-------------- - Down ----------------*/ - -.ui.checkbox .box:active::before, -.ui.checkbox label:active::before { - background: #F9FAFB; - border-color: rgba(34, 36, 38, 0.35); -} -.ui.checkbox .box:active::after, -.ui.checkbox label:active::after { - color: rgba(0, 0, 0, 0.95); -} -.ui.checkbox input:active ~ label { - color: rgba(0, 0, 0, 0.95); -} - -/*-------------- - Focus ----------------*/ - -.ui.checkbox input:focus ~ .box:before, -.ui.checkbox input:focus ~ label:before { - background: #FFFFFF; - border-color: #96C8DA; -} -.ui.checkbox input:focus ~ .box:after, -.ui.checkbox input:focus ~ label:after { - color: rgba(0, 0, 0, 0.95); -} -.ui.checkbox input:focus ~ label { - color: rgba(0, 0, 0, 0.95); -} - -/*-------------- - Active ----------------*/ - -.ui.checkbox input:checked ~ .box:before, -.ui.checkbox input:checked ~ label:before { - background: #FFFFFF; - border-color: rgba(34, 36, 38, 0.35); -} -.ui.checkbox input:checked ~ .box:after, -.ui.checkbox input:checked ~ label:after { - opacity: 1; - color: rgba(0, 0, 0, 0.95); -} - -/*-------------- - Indeterminate ----------------*/ - -.ui.checkbox input:not([type=radio]):indeterminate ~ .box:before, -.ui.checkbox input:not([type=radio]):indeterminate ~ label:before { - background: #FFFFFF; - border-color: rgba(34, 36, 38, 0.35); -} -.ui.checkbox input:not([type=radio]):indeterminate ~ .box:after, -.ui.checkbox input:not([type=radio]):indeterminate ~ label:after { - opacity: 1; - color: rgba(0, 0, 0, 0.95); -} - -/*-------------- - Active Focus ----------------*/ - -.ui.checkbox input:not([type=radio]):indeterminate:focus ~ .box:before, -.ui.checkbox input:not([type=radio]):indeterminate:focus ~ label:before, -.ui.checkbox input:checked:focus ~ .box:before, -.ui.checkbox input:checked:focus ~ label:before { - background: #FFFFFF; - border-color: #96C8DA; -} -.ui.checkbox input:not([type=radio]):indeterminate:focus ~ .box:after, -.ui.checkbox input:not([type=radio]):indeterminate:focus ~ label:after, -.ui.checkbox input:checked:focus ~ .box:after, -.ui.checkbox input:checked:focus ~ label:after { - color: rgba(0, 0, 0, 0.95); -} - -/*-------------- - Read-Only ----------------*/ - -.ui.read-only.checkbox, -.ui.read-only.checkbox label { - cursor: default; -} - -/*-------------- - Disabled ----------------*/ - -.ui.disabled.checkbox .box:after, -.ui.disabled.checkbox label, -.ui.checkbox input[disabled] ~ .box:after, -.ui.checkbox input[disabled] ~ label { - cursor: default !important; - opacity: 0.5; - color: #000000; -} - -/*-------------- - Hidden ----------------*/ - - -/* Initialized checkbox moves input below element - to prevent manually triggering */ -.ui.checkbox input.hidden { - z-index: -1; -} - -/* Selectable Label */ -.ui.checkbox input.hidden + label { - cursor: pointer; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - - -/******************************* - Types -*******************************/ - - -/*-------------- - Radio ----------------*/ - -.ui.radio.checkbox { - min-height: 15px; -} -.ui.radio.checkbox .box, -.ui.radio.checkbox label { - padding-left: 1.85714em; -} - -/* Box */ -.ui.radio.checkbox .box:before, -.ui.radio.checkbox label:before { - content: ''; - -webkit-transform: none; - transform: none; - width: 15px; - height: 15px; - border-radius: 500rem; - top: 1px; - left: 0px; -} - -/* Bullet */ -.ui.radio.checkbox .box:after, -.ui.radio.checkbox label:after { - border: none; - content: '' !important; - width: 15px; - height: 15px; - line-height: 15px; -} - -/* Radio Checkbox */ -.ui.radio.checkbox .box:after, -.ui.radio.checkbox label:after { - top: 1px; - left: 0px; - width: 15px; - height: 15px; - border-radius: 500rem; - -webkit-transform: scale(0.46666667); - transform: scale(0.46666667); - background-color: rgba(0, 0, 0, 0.87); -} - -/* Focus */ -.ui.radio.checkbox input:focus ~ .box:before, -.ui.radio.checkbox input:focus ~ label:before { - background-color: #FFFFFF; -} -.ui.radio.checkbox input:focus ~ .box:after, -.ui.radio.checkbox input:focus ~ label:after { - background-color: rgba(0, 0, 0, 0.95); -} - -/* Indeterminate */ -.ui.radio.checkbox input:indeterminate ~ .box:after, -.ui.radio.checkbox input:indeterminate ~ label:after { - opacity: 0; -} - -/* Active */ -.ui.radio.checkbox input:checked ~ .box:before, -.ui.radio.checkbox input:checked ~ label:before { - background-color: #FFFFFF; -} -.ui.radio.checkbox input:checked ~ .box:after, -.ui.radio.checkbox input:checked ~ label:after { - background-color: rgba(0, 0, 0, 0.95); -} - -/* Active Focus */ -.ui.radio.checkbox input:focus:checked ~ .box:before, -.ui.radio.checkbox input:focus:checked ~ label:before { - background-color: #FFFFFF; -} -.ui.radio.checkbox input:focus:checked ~ .box:after, -.ui.radio.checkbox input:focus:checked ~ label:after { - background-color: rgba(0, 0, 0, 0.95); -} - -/*-------------- - Slider ----------------*/ - -.ui.slider.checkbox { - min-height: 1.25rem; -} - -/* Input */ -.ui.slider.checkbox input { - width: 3.5rem; - height: 1.25rem; -} - -/* Label */ -.ui.slider.checkbox .box, -.ui.slider.checkbox label { - padding-left: 4.5rem; - line-height: 1rem; - color: rgba(0, 0, 0, 0.4); -} - -/* Line */ -.ui.slider.checkbox .box:before, -.ui.slider.checkbox label:before { - display: block; - position: absolute; - content: ''; - border: none !important; - left: 0em; - z-index: 1; - top: 0.4rem; - background-color: rgba(0, 0, 0, 0.05); - width: 3.5rem; - height: 0.21428571rem; - -webkit-transform: none; - transform: none; - border-radius: 500rem; - -webkit-transition: background 0.3s ease; - transition: background 0.3s ease; -} - -/* Handle */ -.ui.slider.checkbox .box:after, -.ui.slider.checkbox label:after { - background: #FFFFFF -webkit-gradient(linear, left top, left bottom, from(transparent), to(rgba(0, 0, 0, 0.05))); - background: #FFFFFF -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05)); - background: #FFFFFF linear-gradient(transparent, rgba(0, 0, 0, 0.05)); - position: absolute; - content: '' !important; - opacity: 1; - z-index: 2; - border: none; - -webkit-box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset; - width: 1.5rem; - height: 1.5rem; - top: -0.25rem; - left: 0em; - -webkit-transform: none; - transform: none; - border-radius: 500rem; - -webkit-transition: left 0.3s ease; - transition: left 0.3s ease; -} - -/* Focus */ -.ui.slider.checkbox input:focus ~ .box:before, -.ui.slider.checkbox input:focus ~ label:before { - background-color: rgba(0, 0, 0, 0.15); - border: none; -} - -/* Hover */ -.ui.slider.checkbox .box:hover, -.ui.slider.checkbox label:hover { - color: rgba(0, 0, 0, 0.8); -} -.ui.slider.checkbox .box:hover::before, -.ui.slider.checkbox label:hover::before { - background: rgba(0, 0, 0, 0.15); -} - -/* Active */ -.ui.slider.checkbox input:checked ~ .box, -.ui.slider.checkbox input:checked ~ label { - color: rgba(0, 0, 0, 0.95) !important; -} -.ui.slider.checkbox input:checked ~ .box:before, -.ui.slider.checkbox input:checked ~ label:before { - background-color: #545454 !important; -} -.ui.slider.checkbox input:checked ~ .box:after, -.ui.slider.checkbox input:checked ~ label:after { - left: 2rem; -} - -/* Active Focus */ -.ui.slider.checkbox input:focus:checked ~ .box, -.ui.slider.checkbox input:focus:checked ~ label { - color: rgba(0, 0, 0, 0.95) !important; -} -.ui.slider.checkbox input:focus:checked ~ .box:before, -.ui.slider.checkbox input:focus:checked ~ label:before { - background-color: #000000 !important; -} - -/*-------------- - Toggle ----------------*/ - -.ui.toggle.checkbox { - min-height: 1.5rem; -} - -/* Input */ -.ui.toggle.checkbox input { - width: 3.5rem; - height: 1.5rem; -} - -/* Label */ -.ui.toggle.checkbox .box, -.ui.toggle.checkbox label { - min-height: 1.5rem; - padding-left: 4.5rem; - color: rgba(0, 0, 0, 0.87); -} -.ui.toggle.checkbox label { - padding-top: 0.15em; -} - -/* Switch */ -.ui.toggle.checkbox .box:before, -.ui.toggle.checkbox label:before { - display: block; - position: absolute; - content: ''; - z-index: 1; - -webkit-transform: none; - transform: none; - border: none; - top: 0rem; - background: rgba(0, 0, 0, 0.05); - -webkit-box-shadow: none; - box-shadow: none; - width: 3.5rem; - height: 1.5rem; - border-radius: 500rem; -} - -/* Handle */ -.ui.toggle.checkbox .box:after, -.ui.toggle.checkbox label:after { - background: #FFFFFF -webkit-gradient(linear, left top, left bottom, from(transparent), to(rgba(0, 0, 0, 0.05))); - background: #FFFFFF -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.05)); - background: #FFFFFF linear-gradient(transparent, rgba(0, 0, 0, 0.05)); - position: absolute; - content: '' !important; - opacity: 1; - z-index: 2; - border: none; - -webkit-box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset; - width: 1.5rem; - height: 1.5rem; - top: 0rem; - left: 0em; - border-radius: 500rem; - -webkit-transition: background 0.3s ease, left 0.3s ease; - transition: background 0.3s ease, left 0.3s ease; -} -.ui.toggle.checkbox input ~ .box:after, -.ui.toggle.checkbox input ~ label:after { - left: -0.05rem; - -webkit-box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset; -} - -/* Focus */ -.ui.toggle.checkbox input:focus ~ .box:before, -.ui.toggle.checkbox input:focus ~ label:before { - background-color: rgba(0, 0, 0, 0.15); - border: none; -} - -/* Hover */ -.ui.toggle.checkbox .box:hover::before, -.ui.toggle.checkbox label:hover::before { - background-color: rgba(0, 0, 0, 0.15); - border: none; -} - -/* Active */ -.ui.toggle.checkbox input:checked ~ .box, -.ui.toggle.checkbox input:checked ~ label { - color: rgba(0, 0, 0, 0.95) !important; -} -.ui.toggle.checkbox input:checked ~ .box:before, -.ui.toggle.checkbox input:checked ~ label:before { - background-color: #2185D0 !important; -} -.ui.toggle.checkbox input:checked ~ .box:after, -.ui.toggle.checkbox input:checked ~ label:after { - left: 2.15rem; - -webkit-box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset; - box-shadow: 0px 1px 2px 0 rgba(34, 36, 38, 0.15), 0px 0px 0px 1px rgba(34, 36, 38, 0.15) inset; -} - -/* Active Focus */ -.ui.toggle.checkbox input:focus:checked ~ .box, -.ui.toggle.checkbox input:focus:checked ~ label { - color: rgba(0, 0, 0, 0.95) !important; -} -.ui.toggle.checkbox input:focus:checked ~ .box:before, -.ui.toggle.checkbox input:focus:checked ~ label:before { - background-color: #0d71bb !important; -} - - -/******************************* - Variations -*******************************/ - - -/*-------------- - Fitted ----------------*/ - -.ui.fitted.checkbox .box, -.ui.fitted.checkbox label { - padding-left: 0em !important; -} -.ui.fitted.toggle.checkbox, -.ui.fitted.toggle.checkbox { - width: 3.5rem; -} -.ui.fitted.slider.checkbox, -.ui.fitted.slider.checkbox { - width: 3.5rem; -} - - -/******************************* - Theme Overrides -*******************************/ - -@font-face { - font-family: 'Checkbox'; - src: url(data:application/x-font-ttf;charset=utf-8;base64,AAEAAAALAIAAAwAwT1MvMg8SBD8AAAC8AAAAYGNtYXAYVtCJAAABHAAAAFRnYXNwAAAAEAAAAXAAAAAIZ2x5Zn4huwUAAAF4AAABYGhlYWQGPe1ZAAAC2AAAADZoaGVhB30DyAAAAxAAAAAkaG10eBBKAEUAAAM0AAAAHGxvY2EAmgESAAADUAAAABBtYXhwAAkALwAAA2AAAAAgbmFtZSC8IugAAAOAAAABknBvc3QAAwAAAAAFFAAAACAAAwMTAZAABQAAApkCzAAAAI8CmQLMAAAB6wAzAQkAAAAAAAAAAAAAAAAAAAABEAAAAAAAAAAAAAAAAAAAAABAAADoAgPA/8AAQAPAAEAAAAABAAAAAAAAAAAAAAAgAAAAAAADAAAAAwAAABwAAQADAAAAHAADAAEAAAAcAAQAOAAAAAoACAACAAIAAQAg6AL//f//AAAAAAAg6AD//f//AAH/4xgEAAMAAQAAAAAAAAAAAAAAAQAB//8ADwABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAQAAAAAAAAAAAAIAADc5AQAAAAABAEUAUQO7AvgAGgAAARQHAQYjIicBJjU0PwE2MzIfAQE2MzIfARYVA7sQ/hQQFhcQ/uMQEE4QFxcQqAF2EBcXEE4QAnMWEP4UEBABHRAXFhBOEBCoAXcQEE4QFwAAAAABAAABbgMlAkkAFAAAARUUBwYjISInJj0BNDc2MyEyFxYVAyUQEBf9SRcQEBAQFwK3FxAQAhJtFxAQEBAXbRcQEBAQFwAAAAABAAAASQMlA24ALAAAARUUBwYrARUUBwYrASInJj0BIyInJj0BNDc2OwE1NDc2OwEyFxYdATMyFxYVAyUQEBfuEBAXbhYQEO4XEBAQEBfuEBAWbhcQEO4XEBACEm0XEBDuFxAQEBAX7hAQF20XEBDuFxAQEBAX7hAQFwAAAQAAAAIAAHRSzT9fDzz1AAsEAAAAAADRsdR3AAAAANGx1HcAAAAAA7sDbgAAAAgAAgAAAAAAAAABAAADwP/AAAAEAAAAAAADuwABAAAAAAAAAAAAAAAAAAAABwQAAAAAAAAAAAAAAAIAAAAEAABFAyUAAAMlAAAAAAAAAAoAFAAeAE4AcgCwAAEAAAAHAC0AAQAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAOAK4AAQAAAAAAAQAIAAAAAQAAAAAAAgAHAGkAAQAAAAAAAwAIADkAAQAAAAAABAAIAH4AAQAAAAAABQALABgAAQAAAAAABgAIAFEAAQAAAAAACgAaAJYAAwABBAkAAQAQAAgAAwABBAkAAgAOAHAAAwABBAkAAwAQAEEAAwABBAkABAAQAIYAAwABBAkABQAWACMAAwABBAkABgAQAFkAAwABBAkACgA0ALBDaGVja2JveABDAGgAZQBjAGsAYgBvAHhWZXJzaW9uIDIuMABWAGUAcgBzAGkAbwBuACAAMgAuADBDaGVja2JveABDAGgAZQBjAGsAYgBvAHhDaGVja2JveABDAGgAZQBjAGsAYgBvAHhSZWd1bGFyAFIAZQBnAHUAbABhAHJDaGVja2JveABDAGgAZQBjAGsAYgBvAHhGb250IGdlbmVyYXRlZCBieSBJY29Nb29uLgBGAG8AbgB0ACAAZwBlAG4AZQByAGEAdABlAGQAIABiAHkAIABJAGMAbwBNAG8AbwBuAC4AAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA) format('truetype'); -} - -/* Checkmark */ -.ui.checkbox label:after, -.ui.checkbox .box:after { - font-family: 'Checkbox'; -} - -/* Checked */ -.ui.checkbox input:checked ~ .box:after, -.ui.checkbox input:checked ~ label:after { - content: '\e800'; -} - -/* Indeterminate */ -.ui.checkbox input:indeterminate ~ .box:after, -.ui.checkbox input:indeterminate ~ label:after { - font-size: 12px; - content: '\e801'; -} -/* UTF Reference -.check:before { content: '\e800'; } -.dash:before { content: '\e801'; } -.plus:before { content: '\e802'; } -*/ - - -/******************************* - Site Overrides -*******************************/ - diff --git a/static/semantic/components/checkbox.js b/static/semantic/components/checkbox.js deleted file mode 100644 index dded09fd0..000000000 --- a/static/semantic/components/checkbox.js +++ /dev/null @@ -1,831 +0,0 @@ -/*! - * # Semantic UI 2.4.0 - Checkbox - * http://github.com/semantic-org/semantic-ui/ - * - * - * Released under the MIT license - * http://opensource.org/licenses/MIT - * - */ - -;(function ($, window, document, undefined) { - -'use strict'; - -window = (typeof window != 'undefined' && window.Math == Math) - ? window - : (typeof self != 'undefined' && self.Math == Math) - ? self - : Function('return this')() -; - -$.fn.checkbox = function(parameters) { - var - $allModules = $(this), - moduleSelector = $allModules.selector || '', - - time = new Date().getTime(), - performance = [], - - query = arguments[0], - methodInvoked = (typeof query == 'string'), - queryArguments = [].slice.call(arguments, 1), - returnedValue - ; - - $allModules - .each(function() { - var - settings = $.extend(true, {}, $.fn.checkbox.settings, parameters), - - className = settings.className, - namespace = settings.namespace, - selector = settings.selector, - error = settings.error, - - eventNamespace = '.' + namespace, - moduleNamespace = 'module-' + namespace, - - $module = $(this), - $label = $(this).children(selector.label), - $input = $(this).children(selector.input), - input = $input[0], - - initialLoad = false, - shortcutPressed = false, - instance = $module.data(moduleNamespace), - - observer, - element = this, - module - ; - - module = { - - initialize: function() { - module.verbose('Initializing checkbox', settings); - - module.create.label(); - module.bind.events(); - - module.set.tabbable(); - module.hide.input(); - - module.observeChanges(); - module.instantiate(); - module.setup(); - }, - - instantiate: function() { - module.verbose('Storing instance of module', module); - instance = module; - $module - .data(moduleNamespace, module) - ; - }, - - destroy: function() { - module.verbose('Destroying module'); - module.unbind.events(); - module.show.input(); - $module.removeData(moduleNamespace); - }, - - fix: { - reference: function() { - if( $module.is(selector.input) ) { - module.debug('Behavior called on adjusting invoked element'); - $module = $module.closest(selector.checkbox); - module.refresh(); - } - } - }, - - setup: function() { - module.set.initialLoad(); - if( module.is.indeterminate() ) { - module.debug('Initial value is indeterminate'); - module.indeterminate(); - } - else if( module.is.checked() ) { - module.debug('Initial value is checked'); - module.check(); - } - else { - module.debug('Initial value is unchecked'); - module.uncheck(); - } - module.remove.initialLoad(); - }, - - refresh: function() { - $label = $module.children(selector.label); - $input = $module.children(selector.input); - input = $input[0]; - }, - - hide: { - input: function() { - module.verbose('Modifying z-index to be unselectable'); - $input.addClass(className.hidden); - } - }, - show: { - input: function() { - module.verbose('Modifying z-index to be selectable'); - $input.removeClass(className.hidden); - } - }, - - observeChanges: function() { - if('MutationObserver' in window) { - observer = new MutationObserver(function(mutations) { - module.debug('DOM tree modified, updating selector cache'); - module.refresh(); - }); - observer.observe(element, { - childList : true, - subtree : true - }); - module.debug('Setting up mutation observer', observer); - } - }, - - attachEvents: function(selector, event) { - var - $element = $(selector) - ; - event = $.isFunction(module[event]) - ? module[event] - : module.toggle - ; - if($element.length > 0) { - module.debug('Attaching checkbox events to element', selector, event); - $element - .on('click' + eventNamespace, event) - ; - } - else { - module.error(error.notFound); - } - }, - - event: { - click: function(event) { - var - $target = $(event.target) - ; - if( $target.is(selector.input) ) { - module.verbose('Using default check action on initialized checkbox'); - return; - } - if( $target.is(selector.link) ) { - module.debug('Clicking link inside checkbox, skipping toggle'); - return; - } - module.toggle(); - $input.focus(); - event.preventDefault(); - }, - keydown: function(event) { - var - key = event.which, - keyCode = { - enter : 13, - space : 32, - escape : 27 - } - ; - if(key == keyCode.escape) { - module.verbose('Escape key pressed blurring field'); - $input.blur(); - shortcutPressed = true; - } - else if(!event.ctrlKey && ( key == keyCode.space || key == keyCode.enter) ) { - module.verbose('Enter/space key pressed, toggling checkbox'); - module.toggle(); - shortcutPressed = true; - } - else { - shortcutPressed = false; - } - }, - keyup: function(event) { - if(shortcutPressed) { - event.preventDefault(); - } - } - }, - - check: function() { - if( !module.should.allowCheck() ) { - return; - } - module.debug('Checking checkbox', $input); - module.set.checked(); - if( !module.should.ignoreCallbacks() ) { - settings.onChecked.call(input); - settings.onChange.call(input); - } - }, - - uncheck: function() { - if( !module.should.allowUncheck() ) { - return; - } - module.debug('Unchecking checkbox'); - module.set.unchecked(); - if( !module.should.ignoreCallbacks() ) { - settings.onUnchecked.call(input); - settings.onChange.call(input); - } - }, - - indeterminate: function() { - if( module.should.allowIndeterminate() ) { - module.debug('Checkbox is already indeterminate'); - return; - } - module.debug('Making checkbox indeterminate'); - module.set.indeterminate(); - if( !module.should.ignoreCallbacks() ) { - settings.onIndeterminate.call(input); - settings.onChange.call(input); - } - }, - - determinate: function() { - if( module.should.allowDeterminate() ) { - module.debug('Checkbox is already determinate'); - return; - } - module.debug('Making checkbox determinate'); - module.set.determinate(); - if( !module.should.ignoreCallbacks() ) { - settings.onDeterminate.call(input); - settings.onChange.call(input); - } - }, - - enable: function() { - if( module.is.enabled() ) { - module.debug('Checkbox is already enabled'); - return; - } - module.debug('Enabling checkbox'); - module.set.enabled(); - settings.onEnable.call(input); - // preserve legacy callbacks - settings.onEnabled.call(input); - }, - - disable: function() { - if( module.is.disabled() ) { - module.debug('Checkbox is already disabled'); - return; - } - module.debug('Disabling checkbox'); - module.set.disabled(); - settings.onDisable.call(input); - // preserve legacy callbacks - settings.onDisabled.call(input); - }, - - get: { - radios: function() { - var - name = module.get.name() - ; - return $('input[name="' + name + '"]').closest(selector.checkbox); - }, - otherRadios: function() { - return module.get.radios().not($module); - }, - name: function() { - return $input.attr('name'); - } - }, - - is: { - initialLoad: function() { - return initialLoad; - }, - radio: function() { - return ($input.hasClass(className.radio) || $input.attr('type') == 'radio'); - }, - indeterminate: function() { - return $input.prop('indeterminate') !== undefined && $input.prop('indeterminate'); - }, - checked: function() { - return $input.prop('checked') !== undefined && $input.prop('checked'); - }, - disabled: function() { - return $input.prop('disabled') !== undefined && $input.prop('disabled'); - }, - enabled: function() { - return !module.is.disabled(); - }, - determinate: function() { - return !module.is.indeterminate(); - }, - unchecked: function() { - return !module.is.checked(); - } - }, - - should: { - allowCheck: function() { - if(module.is.determinate() && module.is.checked() && !module.should.forceCallbacks() ) { - module.debug('Should not allow check, checkbox is already checked'); - return false; - } - if(settings.beforeChecked.apply(input) === false) { - module.debug('Should not allow check, beforeChecked cancelled'); - return false; - } - return true; - }, - allowUncheck: function() { - if(module.is.determinate() && module.is.unchecked() && !module.should.forceCallbacks() ) { - module.debug('Should not allow uncheck, checkbox is already unchecked'); - return false; - } - if(settings.beforeUnchecked.apply(input) === false) { - module.debug('Should not allow uncheck, beforeUnchecked cancelled'); - return false; - } - return true; - }, - allowIndeterminate: function() { - if(module.is.indeterminate() && !module.should.forceCallbacks() ) { - module.debug('Should not allow indeterminate, checkbox is already indeterminate'); - return false; - } - if(settings.beforeIndeterminate.apply(input) === false) { - module.debug('Should not allow indeterminate, beforeIndeterminate cancelled'); - return false; - } - return true; - }, - allowDeterminate: function() { - if(module.is.determinate() && !module.should.forceCallbacks() ) { - module.debug('Should not allow determinate, checkbox is already determinate'); - return false; - } - if(settings.beforeDeterminate.apply(input) === false) { - module.debug('Should not allow determinate, beforeDeterminate cancelled'); - return false; - } - return true; - }, - forceCallbacks: function() { - return (module.is.initialLoad() && settings.fireOnInit); - }, - ignoreCallbacks: function() { - return (initialLoad && !settings.fireOnInit); - } - }, - - can: { - change: function() { - return !( $module.hasClass(className.disabled) || $module.hasClass(className.readOnly) || $input.prop('disabled') || $input.prop('readonly') ); - }, - uncheck: function() { - return (typeof settings.uncheckable === 'boolean') - ? settings.uncheckable - : !module.is.radio() - ; - } - }, - - set: { - initialLoad: function() { - initialLoad = true; - }, - checked: function() { - module.verbose('Setting class to checked'); - $module - .removeClass(className.indeterminate) - .addClass(className.checked) - ; - if( module.is.radio() ) { - module.uncheckOthers(); - } - if(!module.is.indeterminate() && module.is.checked()) { - module.debug('Input is already checked, skipping input property change'); - return; - } - module.verbose('Setting state to checked', input); - $input - .prop('indeterminate', false) - .prop('checked', true) - ; - module.trigger.change(); - }, - unchecked: function() { - module.verbose('Removing checked class'); - $module - .removeClass(className.indeterminate) - .removeClass(className.checked) - ; - if(!module.is.indeterminate() && module.is.unchecked() ) { - module.debug('Input is already unchecked'); - return; - } - module.debug('Setting state to unchecked'); - $input - .prop('indeterminate', false) - .prop('checked', false) - ; - module.trigger.change(); - }, - indeterminate: function() { - module.verbose('Setting class to indeterminate'); - $module - .addClass(className.indeterminate) - ; - if( module.is.indeterminate() ) { - module.debug('Input is already indeterminate, skipping input property change'); - return; - } - module.debug('Setting state to indeterminate'); - $input - .prop('indeterminate', true) - ; - module.trigger.change(); - }, - determinate: function() { - module.verbose('Removing indeterminate class'); - $module - .removeClass(className.indeterminate) - ; - if( module.is.determinate() ) { - module.debug('Input is already determinate, skipping input property change'); - return; - } - module.debug('Setting state to determinate'); - $input - .prop('indeterminate', false) - ; - }, - disabled: function() { - module.verbose('Setting class to disabled'); - $module - .addClass(className.disabled) - ; - if( module.is.disabled() ) { - module.debug('Input is already disabled, skipping input property change'); - return; - } - module.debug('Setting state to disabled'); - $input - .prop('disabled', 'disabled') - ; - module.trigger.change(); - }, - enabled: function() { - module.verbose('Removing disabled class'); - $module.removeClass(className.disabled); - if( module.is.enabled() ) { - module.debug('Input is already enabled, skipping input property change'); - return; - } - module.debug('Setting state to enabled'); - $input - .prop('disabled', false) - ; - module.trigger.change(); - }, - tabbable: function() { - module.verbose('Adding tabindex to checkbox'); - if( $input.attr('tabindex') === undefined) { - $input.attr('tabindex', 0); - } - } - }, - - remove: { - initialLoad: function() { - initialLoad = false; - } - }, - - trigger: { - change: function() { - var - events = document.createEvent('HTMLEvents'), - inputElement = $input[0] - ; - if(inputElement) { - module.verbose('Triggering native change event'); - events.initEvent('change', true, false); - inputElement.dispatchEvent(events); - } - } - }, - - - create: { - label: function() { - if($input.prevAll(selector.label).length > 0) { - $input.prev(selector.label).detach().insertAfter($input); - module.debug('Moving existing label', $label); - } - else if( !module.has.label() ) { - $label = $('