Initial commit

This commit is contained in:
Fergal Moran
2013-08-29 12:08:44 +01:00
parent 081928ab37
commit 294a55889c
396 changed files with 148488 additions and 0 deletions

2
.gitignore vendored
View File

@@ -2,3 +2,5 @@
*.pot *.pot
*.pyc *.pyc
local_settings.py local_settings.py
.idea
media/*

10
manage.py Executable file
View File

@@ -0,0 +1,10 @@
#!/usr/bin/env python
import os
import sys
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "rbp.settings")
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)

0
promotions/__init__.py Executable file
View File

28
promotions/forms.py Executable file
View File

@@ -0,0 +1,28 @@
from django.forms import ModelForm, DateInput, CheckboxInput
from django.forms.widgets import TextInput
from promotions.models import Promotion
class PromotionWizardDetailsPage(ModelForm):
error_css_class = 'error'
class Meta:
model = Promotion
fields = ['id', 'description', 'start_date', 'end_date', 'active']
widgets = {
'description': TextInput(attrs={'class': 'span8'}),
'start_date': DateInput(attrs={'class': 'date-picker'}),
'end_date': DateInput(attrs={'class': 'date-picker'}),
'active': CheckboxInput(attrs={'class': 'ace ace-switch ace-switch-5'}),
}
class PromotionWizardLayoutPage(ModelForm):
class Meta:
model = Promotion
fields = ['id', 'description', 'body_text']
widgets = {
'description': TextInput(attrs={'class': 'span8'}),
'body_text': TextInput(attrs={'class': 'span8'}),
}

33
promotions/mixins.py Executable file
View File

@@ -0,0 +1,33 @@
import json
from django.http import HttpResponse
class AjaxableResponseMixin(object):
"""
Mixin to add AJAX support to a form.
Must be used with an object-based FormView (e.g. CreateView)
"""
def render_to_json_response(self, context, **response_kwargs):
data = json.dumps(context)
response_kwargs['content_type'] = 'application/json'
return HttpResponse(data, **response_kwargs)
def form_invalid(self, form):
response = super(AjaxableResponseMixin, self).form_invalid(form)
if self.request.is_ajax():
return self.render_to_json_response(form.errors, status=400)
else:
return response
def form_valid(self, form):
# We make sure to call the parent's form_valid() method because
# it might do some processing (in the case of CreateView, it will
# call form.save() for example).
response = super(AjaxableResponseMixin, self).form_valid(form)
if self.request.is_ajax():
data = {
'pk': self.object.pk,
}
return self.render_to_json_response(data)
else:
return response

26
promotions/models.py Executable file
View File

@@ -0,0 +1,26 @@
from django.contrib.auth.models import User
from django.core.urlresolvers import reverse
from rbp.settings import MEDIA_ROOT
from django.db import models
class Promotion(models.Model):
user = models.ForeignKey(User)
description = models.CharField(max_length=250)
body_text = models.TextField(blank=True, null=True)
date_created = models.DateField(auto_now=True)
start_date = models.DateField()
end_date = models.DateField()
active = models.BooleanField()
def get_absolute_url(self):
return reverse('promo_update', kwargs={'pk': self.pk})
class PromotionAudioItem(models.Model):
description = models.CharField(max_length=250)
file_field = models.FileField(upload_to=MEDIA_ROOT)
date_created = models.DateField(auto_now=True)

16
promotions/tests.py Executable file
View File

@@ -0,0 +1,16 @@
"""
This file demonstrates writing tests using the unittest module. These will pass
when you run "manage.py test".
Replace this with more appropriate tests for your application.
"""
from django.test import TestCase
class SimpleTest(TestCase):
def test_basic_addition(self):
"""
Tests that 1 + 1 always equals 2.
"""
self.assertEqual(1 + 1, 2)

17
promotions/urls.py Executable file
View File

@@ -0,0 +1,17 @@
from django.conf.urls import patterns, url
from django.contrib.auth.decorators import login_required
from promotions import views
from promotions.forms import PromotionWizardDetailsPage, PromotionWizardLayoutPage
from promotions.views import IndexView, PromotionList, PromotionWizard, FORMS
urlpatterns = patterns(
'',
url(r'^$', IndexView.as_view(), name='home'),
url(r'promotions/$', login_required(PromotionList.as_view()), name='promotion-list'),
url(r'promotions/add/$', login_required(PromotionWizard.as_view(FORMS)), name='promotion-add'),
url(r'promotions/edit/(?P<promotion_id>[-\d]+)$', login_required(PromotionWizard.as_view(FORMS)), name='promotion-edit'),
url( r'^audio/upload/', views.upload, name = 'audio_upload' ),
url( r'^audio/delete/(?P<pk>\d+)$', views.upload_delete, name = 'audio_delete' ),
)

112
promotions/views.py Executable file
View File

@@ -0,0 +1,112 @@
# Create your views here.
import os
from django.contrib.auth.decorators import login_required
from django.contrib.formtools.wizard.views import SessionWizardView
from django.core.urlresolvers import reverse
from django.http import HttpResponseRedirect
from django.views.decorators.http import require_POST
from django.views.generic import TemplateView, ListView
from jfu.http import upload_receive, UploadResponse, JFUResponse
from rbp import settings
from promotions.forms import PromotionWizardDetailsPage, PromotionWizardLayoutPage
from promotions.models import PromotionAudioItem, Promotion
FORMS = [
("details", PromotionWizardDetailsPage),
("layout", PromotionWizardLayoutPage),
]
TEMPLATES = {"details": "promotions/_wizard_details.html",
"layout": "promotions/_wizard_layout.html",
"cc": "checkout/creditcard.html",
"confirmation": "checkout/confirmation.html"}
class IndexView(TemplateView):
template_name = 'index.html'
def get(self, request, *args, **kwargs):
context = {
'content': 'Hello Sailor'
}
return self.render_to_response(context)
class PromotionWizard(SessionWizardView):
def get_template_names(self):
return [TEMPLATES[self.steps.current]]
def get_form_initial(self, step):
if 'promotion_id' in self.kwargs and step == 'details':
promotion_id = self.kwargs['promotion_id']
promotion = Promotion.objects.get(id=promotion_id)
from django.forms.models import model_to_dict
project_dict = model_to_dict(promotion)
return project_dict
else:
return self.initial_dict.get(step, {})
def done(self, form_list, **kwargs):
instance = Promotion()
instance.user = self.request.user
for form in form_list:
for field, value in form.cleaned_data.iteritems():
setattr(instance, field, value)
instance.save()
return HttpResponseRedirect(reverse('promotion-list'))
class PromotionList(ListView):
model = Promotion
template_name = 'promotions/list.html'
def get_queryset(self):
return Promotion.objects.filter(user=self.request.user)
@require_POST
@login_required
def upload(request):
# The assumption here is that jQuery File Upload
# has been configured to send files one at a time.
# If multiple files can be uploaded simulatenously,
# 'file' may be a list of files.
file = upload_receive(request)
instance = PromotionAudioItem(file_field=file)
instance.save()
basename = os.path.basename(instance.file_field.file.name)
file_dict = {
'name': basename,
'size': instance.file_field.file.size,
# The assumption is that file_field is a FileField that saves to
# the 'media' directory.
'url': settings.MEDIA_URL + basename,
'thumbnail_url': settings.MEDIA_URL + basename,
'delete_url': reverse('audio_delete', kwargs={'pk': instance.pk}),
'delete_type': 'POST',
}
return UploadResponse(request, file_dict)
@require_POST
@login_required
def upload_delete(request, pk):
# An example implementation.
success = True
try:
instance = PromotionAudioItem.objects.get(pk=pk)
os.unlink(instance.file_field.file.name)
instance.delete()
except PromotionAudioItem.DoesNotExist:
success = False
return JFUResponse(request, success)

40
promotions/widgets.py Executable file
View File

@@ -0,0 +1,40 @@
from django.forms import Widget, TextInput, DateInput
from django.forms.util import flatatt
from django.forms.widgets import CheckboxInput
from django.utils.encoding import force_text
from django.utils.html import format_html
from django.utils.safestring import mark_safe
class AceInputBox(TextInput):
def label_tag(self, contents=None, attrs=None):
pass
def render(self, name, value, attrs=None):
result = super(AceInputBox, self).render(name, value, attrs)
return result
class AceDateBox(DateInput):
def render(self, name, value, attrs=None):
result = super(AceDateBox, self).render(name, value, attrs)
return mark_safe(
"""
<div class="row-fluid input-append">
%s
<span class="add-on">
<i class="icon-calendar"></i>
</span>
</div>
""" % result)
class AceCheckBox(CheckboxInput):
def render(self, name, value, attrs=None):
result = super(AceCheckBox, self).render(name, value, attrs)
return """
%s
<span class="lbl"></span>
""" % result

0
rbp/__init__.py Executable file
View File

170
rbp/settings.py Executable file
View File

@@ -0,0 +1,170 @@
import os, sys
DEBUG = True
TEMPLATE_DEBUG = DEBUG
ABSOLUTE_PROJECT_ROOT = os.path.abspath(os.path.join(os.path.dirname(__file__), '../'))
ABSOLUTE_TEMPLATES_PATH = os.path.abspath(os.path.join(ABSOLUTE_PROJECT_ROOT, 'templates/'))
if not ABSOLUTE_PROJECT_ROOT in sys.path:
sys.path.insert(0, ABSOLUTE_PROJECT_ROOT)
ADMINS = (
('Fergal Moran', 'fergal.moran@gmail.com'),
)
INTERNAL_IPS = ('127.0.0.1',)
MANAGERS = ADMINS
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
'NAME': 'robotopro.db', # Or path to database file if using sqlite3.
'USER': '', # Not used with sqlite3.
'PASSWORD': '', # Not used with sqlite3.
'HOST': '', # Set to empty string for localhost. Not used with sqlite3.
'PORT': '', # Set to empty string for default. Not used with sqlite3.
}
}
TIME_ZONE = 'Europe/Dublin'
LANGUAGE_CODE = 'en-us'
SITE_ID = 1
USE_I18N = True
USE_L10N = True
USE_TZ = True
STATIC_ROOT = os.path.abspath(os.path.join(ABSOLUTE_PROJECT_ROOT, 'as/'))
MEDIA_ROOT = os.path.abspath(os.path.join(ABSOLUTE_PROJECT_ROOT, 'static/media/'))
STATIC_URL = '/static/'
MEDIA_URL = '/media/'
# Additional locations of static files
STATICFILES_DIRS = (
os.path.abspath(os.path.join(ABSOLUTE_PROJECT_ROOT, 'static/')),
)
# List of finder classes that know how to find static files in
# various locations.
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
'django.contrib.staticfiles.finders.DefaultStorageFinder',
)
# Make this unique, and don't share it with anybody.
SECRET_KEY = 'n(bd1f1c%e8=_xad02x5qtfn%wgwpi492e$8_erx+d)!tpeoim'
# List of callables that know how to import templates from various sources.
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
# 'django.template.loaders.eggs.Loader',
)
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
#'debug_toolbar.middleware.DebugToolbarMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
)
ROOT_URLCONF = 'rbp.urls'
# Python dotted path to the WSGI application used by Django's runserver.
WSGI_APPLICATION = 'rbp.wsgi.application'
TEMPLATE_CONTEXT_PROCESSORS = (
"django.core.context_processors.request",
"django.core.context_processors.static",
"django.contrib.auth.context_processors.auth",
"allauth.account.context_processors.account",
"allauth.socialaccount.context_processors.socialaccount",
)
TEMPLATE_DIRS = (
# Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
ABSOLUTE_TEMPLATES_PATH,
os.path.join(ABSOLUTE_TEMPLATES_PATH, 'allauth'),
)
AUTHENTICATION_BACKENDS = (
"django.contrib.auth.backends.ModelBackend",
"allauth.account.auth_backends.AuthenticationBackend",
)
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
# Uncomment the next line to enable the admin:
'django.contrib.admin',
# Uncomment the next line to enable admin documentation:
'django.contrib.admindocs',
'django_extensions',
#'debug_toolbar',
'south',
'crispy_forms',
'jfu',
'allauth',
'allauth.account',
'allauth.socialaccount',
'allauth.socialaccount.providers.dropbox',
'allauth.socialaccount.providers.facebook',
'allauth.socialaccount.providers.google',
'allauth.socialaccount.providers.soundcloud',
'allauth.socialaccount.providers.twitter',
'promotions',
)
# A sample logging configuration. The only tangible logging
# performed by this configuration is to send an email to
# the site admins on every HTTP 500 error when DEBUG=False.
# See http://docs.djangoproject.com/en/dev/topics/logging for
# more details on how to customize your logging configuration.
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'filters': {
'require_debug_false': {
'()': 'django.utils.log.RequireDebugFalse'
}
},
'handlers': {
'mail_admins': {
'level': 'ERROR',
'filters': ['require_debug_false'],
'class': 'django.utils.log.AdminEmailHandler'
}
},
'loggers': {
'django.request': {
'handlers': ['mail_admins'],
'level': 'ERROR',
'propagate': True,
},
}
}
if DEBUG:
import mimetypes
mimetypes.add_type("image/png", ".png", True)
mimetypes.add_type("font/woff", ".woff", True)
DEBUG_TOOLBAR_CONFIG = {
'INTERCEPT_REDIRECTS': False,
}
LOGIN_REDIRECT_URL="/"

14
rbp/urls.py Executable file
View File

@@ -0,0 +1,14 @@
from django.conf.urls import patterns, include, url
from django.conf.urls.static import static
from django.contrib import admin
from django.views.generic import TemplateView
from rbp import settings
admin.autodiscover()
urlpatterns = patterns('',
url(r'^accounts/', include('allauth.urls')),
url(r'^accounts/profile/$', TemplateView.as_view(template_name='profile.html')),
url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
url(r'^admin/', include(admin.site.urls)),
url(r'^', include('promotions.urls')),
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

28
rbp/wsgi.py Executable file
View File

@@ -0,0 +1,28 @@
"""
WSGI config for rbp project.
This module contains the WSGI application used by Django's development server
and any production WSGI deployments. It should expose a module-level variable
named ``application``. Django's ``runserver`` and ``runfcgi`` commands discover
this application via the ``WSGI_APPLICATION`` setting.
Usually you will have the standard Django WSGI application here, but it also
might make sense to replace the whole Django WSGI application with a custom one
that later delegates to the Django one. For example, you could introduce WSGI
middleware here, or combine a Django application with an application of another
framework.
"""
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "rbp.settings")
# This application object is used by any WSGI server configured to use this
# file. This includes Django's development server, if the WSGI_APPLICATION
# setting points here.
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
# Apply WSGI middleware here.
# from helloworld.wsgi import HelloWorldApplication
# application = HelloWorldApplication(application)

7
requirements.txt Executable file
View File

@@ -0,0 +1,7 @@
django
git+https://github.com/pennersr/django-allauth.git#egg=django-allauth
django-extensions
django-debug-toolbar
werkzeug
django-jfu
south

BIN
robotopro.db Executable file

Binary file not shown.

13
static/css/ace-fonts.css Executable file
View File

@@ -0,0 +1,13 @@
/* included only when we don't want to use fonts from google server */
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 300;
src: local('Open Sans Light'), local('OpenSans-Light'), url(../font/DXI1ORHCpsQm3Vp6mXoaTXhCUOGz7vYGh680lGh-uXM.woff) format('woff');
}
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 400;
src: local('Open Sans'), local('OpenSans'), url(../font/cJZKeOuBrn4kERxqtaUH3T8E0i7KZn-EPnyo3HZu7kw.woff) format('woff');
}

1
static/css/ace-ie.min.css vendored Executable file

File diff suppressed because one or more lines are too long

1
static/css/ace-responsive.min.css vendored Executable file

File diff suppressed because one or more lines are too long

1
static/css/ace-skins.min.css vendored Executable file

File diff suppressed because one or more lines are too long

1
static/css/ace.min.css vendored Executable file

File diff suppressed because one or more lines are too long

656
static/css/bootstrap-editable.css vendored Executable file
View File

@@ -0,0 +1,656 @@
/*! X-editable - v1.4.6
* In-place editing with Twitter Bootstrap, jQuery UI or pure jQuery
* http://github.com/vitalets/x-editable
* Copyright (c) 2013 Vitaliy Potapov; Licensed MIT */
.editableform {
margin-bottom: 0; /* overwrites bootstrap margin */
}
.editableform .control-group {
margin-bottom: 0; /* overwrites bootstrap margin */
white-space: nowrap; /* prevent wrapping buttons on new line */
line-height: 20px; /* overwriting bootstrap line-height. See #133 */
}
.editable-buttons {
display: inline-block; /* should be inline to take effect of parent's white-space: nowrap */
vertical-align: top;
margin-left: 7px;
/* inline-block emulation for IE7*/
zoom: 1;
*display: inline;
}
.editable-buttons.editable-buttons-bottom {
display: block;
margin-top: 7px;
margin-left: 0;
}
.editable-input {
vertical-align: top;
display: inline-block; /* should be inline to take effect of parent's white-space: nowrap */
width: auto; /* bootstrap-responsive has width: 100% that breakes layout */
white-space: normal; /* reset white-space decalred in parent*/
/* display-inline emulation for IE7*/
zoom: 1;
*display: inline;
}
.editable-buttons .editable-cancel {
margin-left: 7px;
}
/*for jquery-ui buttons need set height to look more pretty*/
.editable-buttons button.ui-button-icon-only {
height: 24px;
width: 30px;
}
.editableform-loading {
background: url('../img/loading.gif') center center no-repeat;
height: 25px;
width: auto;
min-width: 25px;
}
.editable-inline .editableform-loading {
background-position: left 5px;
}
.editable-error-block {
max-width: 300px;
margin: 5px 0 0 0;
width: auto;
white-space: normal;
}
/*add padding for jquery ui*/
.editable-error-block.ui-state-error {
padding: 3px;
}
.editable-error {
color: red;
}
/* ---- For specific types ---- */
.editableform .editable-date {
padding: 0;
margin: 0;
float: left;
}
/* move datepicker icon to center of add-on button. See https://github.com/vitalets/x-editable/issues/183 */
.editable-inline .add-on .icon-th {
margin-top: 3px;
margin-left: 1px;
}
/* checklist vertical alignment */
.editable-checklist label input[type="checkbox"],
.editable-checklist label span {
vertical-align: middle;
margin: 0;
}
.editable-checklist label {
white-space: nowrap;
}
/* set exact width of textarea to fit buttons toolbar */
.editable-wysihtml5 {
width: 566px;
height: 250px;
}
/* clear button shown as link in date inputs */
.editable-clear {
clear: both;
font-size: 0.9em;
text-decoration: none;
text-align: right;
}
/* IOS-style clear button for text inputs */
.editable-clear-x {
background: url('../img/clear.png') center center no-repeat;
display: block;
width: 13px;
height: 13px;
position: absolute;
opacity: 0.6;
z-index: 100;
top: 50%;
right: 6px;
margin-top: -6px;
}
.editable-clear-x:hover {
opacity: 1;
}
.editable-pre-wrapped {
white-space: pre-wrap;
}
.editable-container.editable-popup {
max-width: none !important; /* without this rule poshytip/tooltip does not stretch */
}
.editable-container.popover {
width: auto; /* without this rule popover does not stretch */
}
.editable-container.editable-inline {
display: inline-block;
vertical-align: middle;
width: auto;
/* inline-block emulation for IE7*/
zoom: 1;
*display: inline;
}
.editable-container.ui-widget {
font-size: inherit; /* jqueryui widget font 1.1em too big, overwrite it */
z-index: 9990; /* should be less than select2 dropdown z-index to close dropdown first when click */
}
.editable-click,
a.editable-click,
a.editable-click:hover {
text-decoration: none;
border-bottom: dashed 1px #0088cc;
}
.editable-click.editable-disabled,
a.editable-click.editable-disabled,
a.editable-click.editable-disabled:hover {
color: #585858;
cursor: default;
border-bottom: none;
}
.editable-empty, .editable-empty:hover, .editable-empty:focus{
font-style: italic;
color: #DD1144;
/* border-bottom: none; */
text-decoration: none;
}
.editable-unsaved {
font-weight: bold;
}
.editable-unsaved:after {
/* content: '*'*/
}
.editable-bg-transition {
-webkit-transition: background-color 1400ms ease-out;
-moz-transition: background-color 1400ms ease-out;
-o-transition: background-color 1400ms ease-out;
-ms-transition: background-color 1400ms ease-out;
transition: background-color 1400ms ease-out;
}
/*see https://github.com/vitalets/x-editable/issues/139 */
.form-horizontal .editable
{
padding-top: 5px;
display:inline-block;
}
/*!
* Datepicker for Bootstrap
*
* Copyright 2012 Stefan Petre
* Improvements by Andrew Rowls
* Licensed under the Apache License v2.0
* http://www.apache.org/licenses/LICENSE-2.0
*
*/
.datepicker {
padding: 4px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
direction: ltr;
/*.dow {
border-top: 1px solid #ddd !important;
}*/
}
.datepicker-inline {
width: 220px;
}
.datepicker.datepicker-rtl {
direction: rtl;
}
.datepicker.datepicker-rtl table tr td span {
float: right;
}
.datepicker-dropdown {
top: 0;
left: 0;
}
.datepicker-dropdown:before {
content: '';
display: inline-block;
border-left: 7px solid transparent;
border-right: 7px solid transparent;
border-bottom: 7px solid #ccc;
border-bottom-color: rgba(0, 0, 0, 0.2);
position: absolute;
top: -7px;
left: 6px;
}
.datepicker-dropdown:after {
content: '';
display: inline-block;
border-left: 6px solid transparent;
border-right: 6px solid transparent;
border-bottom: 6px solid #ffffff;
position: absolute;
top: -6px;
left: 7px;
}
.datepicker > div {
display: none;
}
.datepicker.days div.datepicker-days {
display: block;
}
.datepicker.months div.datepicker-months {
display: block;
}
.datepicker.years div.datepicker-years {
display: block;
}
.datepicker table {
margin: 0;
}
.datepicker td,
.datepicker th {
text-align: center;
width: 20px;
height: 20px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
border: none;
}
.table-striped .datepicker table tr td,
.table-striped .datepicker table tr th {
background-color: transparent;
}
.datepicker table tr td.day:hover {
background: #eeeeee;
cursor: pointer;
}
.datepicker table tr td.old,
.datepicker table tr td.new {
color: #999999;
}
.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover {
background: none;
color: #999999;
cursor: default;
}
.datepicker table tr td.today,
.datepicker table tr td.today:hover,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled:hover {
background-color: #fde19a;
background-image: -moz-linear-gradient(top, #fdd49a, #fdf59a);
background-image: -ms-linear-gradient(top, #fdd49a, #fdf59a);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fdd49a), to(#fdf59a));
background-image: -webkit-linear-gradient(top, #fdd49a, #fdf59a);
background-image: -o-linear-gradient(top, #fdd49a, #fdf59a);
background-image: linear-gradient(top, #fdd49a, #fdf59a);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);
border-color: #fdf59a #fdf59a #fbed50;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
color: #000;
}
.datepicker table tr td.today:hover,
.datepicker table tr td.today:hover:hover,
.datepicker table tr td.today.disabled:hover,
.datepicker table tr td.today.disabled:hover:hover,
.datepicker table tr td.today:active,
.datepicker table tr td.today:hover:active,
.datepicker table tr td.today.disabled:active,
.datepicker table tr td.today.disabled:hover:active,
.datepicker table tr td.today.active,
.datepicker table tr td.today:hover.active,
.datepicker table tr td.today.disabled.active,
.datepicker table tr td.today.disabled:hover.active,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today:hover.disabled,
.datepicker table tr td.today.disabled.disabled,
.datepicker table tr td.today.disabled:hover.disabled,
.datepicker table tr td.today[disabled],
.datepicker table tr td.today:hover[disabled],
.datepicker table tr td.today.disabled[disabled],
.datepicker table tr td.today.disabled:hover[disabled] {
background-color: #fdf59a;
}
.datepicker table tr td.today:active,
.datepicker table tr td.today:hover:active,
.datepicker table tr td.today.disabled:active,
.datepicker table tr td.today.disabled:hover:active,
.datepicker table tr td.today.active,
.datepicker table tr td.today:hover.active,
.datepicker table tr td.today.disabled.active,
.datepicker table tr td.today.disabled:hover.active {
background-color: #fbf069 \9;
}
.datepicker table tr td.today:hover:hover {
color: #000;
}
.datepicker table tr td.today.active:hover {
color: #fff;
}
.datepicker table tr td.range,
.datepicker table tr td.range:hover,
.datepicker table tr td.range.disabled,
.datepicker table tr td.range.disabled:hover {
background: #eeeeee;
-webkit-border-radius: 0;
-moz-border-radius: 0;
border-radius: 0;
}
.datepicker table tr td.range.today,
.datepicker table tr td.range.today:hover,
.datepicker table tr td.range.today.disabled,
.datepicker table tr td.range.today.disabled:hover {
background-color: #f3d17a;
background-image: -moz-linear-gradient(top, #f3c17a, #f3e97a);
background-image: -ms-linear-gradient(top, #f3c17a, #f3e97a);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f3c17a), to(#f3e97a));
background-image: -webkit-linear-gradient(top, #f3c17a, #f3e97a);
background-image: -o-linear-gradient(top, #f3c17a, #f3e97a);
background-image: linear-gradient(top, #f3c17a, #f3e97a);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3c17a', endColorstr='#f3e97a', GradientType=0);
border-color: #f3e97a #f3e97a #edde34;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
-webkit-border-radius: 0;
-moz-border-radius: 0;
border-radius: 0;
}
.datepicker table tr td.range.today:hover,
.datepicker table tr td.range.today:hover:hover,
.datepicker table tr td.range.today.disabled:hover,
.datepicker table tr td.range.today.disabled:hover:hover,
.datepicker table tr td.range.today:active,
.datepicker table tr td.range.today:hover:active,
.datepicker table tr td.range.today.disabled:active,
.datepicker table tr td.range.today.disabled:hover:active,
.datepicker table tr td.range.today.active,
.datepicker table tr td.range.today:hover.active,
.datepicker table tr td.range.today.disabled.active,
.datepicker table tr td.range.today.disabled:hover.active,
.datepicker table tr td.range.today.disabled,
.datepicker table tr td.range.today:hover.disabled,
.datepicker table tr td.range.today.disabled.disabled,
.datepicker table tr td.range.today.disabled:hover.disabled,
.datepicker table tr td.range.today[disabled],
.datepicker table tr td.range.today:hover[disabled],
.datepicker table tr td.range.today.disabled[disabled],
.datepicker table tr td.range.today.disabled:hover[disabled] {
background-color: #f3e97a;
}
.datepicker table tr td.range.today:active,
.datepicker table tr td.range.today:hover:active,
.datepicker table tr td.range.today.disabled:active,
.datepicker table tr td.range.today.disabled:hover:active,
.datepicker table tr td.range.today.active,
.datepicker table tr td.range.today:hover.active,
.datepicker table tr td.range.today.disabled.active,
.datepicker table tr td.range.today.disabled:hover.active {
background-color: #efe24b \9;
}
.datepicker table tr td.selected,
.datepicker table tr td.selected:hover,
.datepicker table tr td.selected.disabled,
.datepicker table tr td.selected.disabled:hover {
background-color: #9e9e9e;
background-image: -moz-linear-gradient(top, #b3b3b3, #808080);
background-image: -ms-linear-gradient(top, #b3b3b3, #808080);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#b3b3b3), to(#808080));
background-image: -webkit-linear-gradient(top, #b3b3b3, #808080);
background-image: -o-linear-gradient(top, #b3b3b3, #808080);
background-image: linear-gradient(top, #b3b3b3, #808080);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#b3b3b3', endColorstr='#808080', GradientType=0);
border-color: #808080 #808080 #595959;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datepicker table tr td.selected:hover,
.datepicker table tr td.selected:hover:hover,
.datepicker table tr td.selected.disabled:hover,
.datepicker table tr td.selected.disabled:hover:hover,
.datepicker table tr td.selected:active,
.datepicker table tr td.selected:hover:active,
.datepicker table tr td.selected.disabled:active,
.datepicker table tr td.selected.disabled:hover:active,
.datepicker table tr td.selected.active,
.datepicker table tr td.selected:hover.active,
.datepicker table tr td.selected.disabled.active,
.datepicker table tr td.selected.disabled:hover.active,
.datepicker table tr td.selected.disabled,
.datepicker table tr td.selected:hover.disabled,
.datepicker table tr td.selected.disabled.disabled,
.datepicker table tr td.selected.disabled:hover.disabled,
.datepicker table tr td.selected[disabled],
.datepicker table tr td.selected:hover[disabled],
.datepicker table tr td.selected.disabled[disabled],
.datepicker table tr td.selected.disabled:hover[disabled] {
background-color: #808080;
}
.datepicker table tr td.selected:active,
.datepicker table tr td.selected:hover:active,
.datepicker table tr td.selected.disabled:active,
.datepicker table tr td.selected.disabled:hover:active,
.datepicker table tr td.selected.active,
.datepicker table tr td.selected:hover.active,
.datepicker table tr td.selected.disabled.active,
.datepicker table tr td.selected.disabled:hover.active {
background-color: #666666 \9;
}
.datepicker table tr td.active,
.datepicker table tr td.active:hover,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled:hover {
background-color: #006dcc;
background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
background-image: -o-linear-gradient(top, #0088cc, #0044cc);
background-image: linear-gradient(top, #0088cc, #0044cc);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);
border-color: #0044cc #0044cc #002a80;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datepicker table tr td.active:hover,
.datepicker table tr td.active:hover:hover,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active.disabled:hover:hover,
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:hover.active,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active:hover.disabled,
.datepicker table tr td.active.disabled.disabled,
.datepicker table tr td.active.disabled:hover.disabled,
.datepicker table tr td.active[disabled],
.datepicker table tr td.active:hover[disabled],
.datepicker table tr td.active.disabled[disabled],
.datepicker table tr td.active.disabled:hover[disabled] {
background-color: #0044cc;
}
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:hover.active {
background-color: #003399 \9;
}
.datepicker table tr td span {
display: block;
width: 23%;
height: 54px;
line-height: 54px;
float: left;
margin: 1%;
cursor: pointer;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
.datepicker table tr td span:hover {
background: #eeeeee;
}
.datepicker table tr td span.disabled,
.datepicker table tr td span.disabled:hover {
background: none;
color: #999999;
cursor: default;
}
.datepicker table tr td span.active,
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active.disabled:hover {
background-color: #006dcc;
background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
background-image: -o-linear-gradient(top, #0088cc, #0044cc);
background-image: linear-gradient(top, #0088cc, #0044cc);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);
border-color: #0044cc #0044cc #002a80;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active:hover:hover,
.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active.disabled:hover:hover,
.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.active,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled:hover.active,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active:hover.disabled,
.datepicker table tr td span.active.disabled.disabled,
.datepicker table tr td span.active.disabled:hover.disabled,
.datepicker table tr td span.active[disabled],
.datepicker table tr td span.active:hover[disabled],
.datepicker table tr td span.active.disabled[disabled],
.datepicker table tr td span.active.disabled:hover[disabled] {
background-color: #0044cc;
}
.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.active,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled:hover.active {
background-color: #003399 \9;
}
.datepicker table tr td span.old,
.datepicker table tr td span.new {
color: #999999;
}
.datepicker th.datepicker-switch {
width: 145px;
}
.datepicker thead tr:first-child th,
.datepicker tfoot tr th {
cursor: pointer;
}
.datepicker thead tr:first-child th:hover,
.datepicker tfoot tr th:hover {
background: #eeeeee;
}
.datepicker .cw {
font-size: 10px;
width: 12px;
padding: 0 2px 0 5px;
vertical-align: middle;
}
.datepicker thead tr:first-child th.cw {
cursor: default;
background-color: transparent;
}
.input-append.date .add-on i,
.input-prepend.date .add-on i {
display: block;
cursor: pointer;
width: 16px;
height: 16px;
}
.input-daterange input {
text-align: center;
}
.input-daterange input:first-child {
-webkit-border-radius: 3px 0 0 3px;
-moz-border-radius: 3px 0 0 3px;
border-radius: 3px 0 0 3px;
}
.input-daterange input:last-child {
-webkit-border-radius: 0 3px 3px 0;
-moz-border-radius: 0 3px 3px 0;
border-radius: 0 3px 3px 0;
}
.input-daterange .add-on {
display: inline-block;
width: auto;
min-width: 16px;
height: 18px;
padding: 4px 5px;
font-weight: normal;
line-height: 18px;
text-align: center;
text-shadow: 0 1px 0 #ffffff;
vertical-align: middle;
background-color: #eeeeee;
border: 1px solid #ccc;
margin-left: -5px;
margin-right: -5px;
}

9
static/css/bootstrap-responsive.min.css vendored Executable file

File diff suppressed because one or more lines are too long

121
static/css/bootstrap-timepicker.css vendored Executable file
View File

@@ -0,0 +1,121 @@
/*!
* Timepicker Component for Twitter Bootstrap
*
* Copyright 2013 Joris de Wit
*
* Contributors https://github.com/jdewit/bootstrap-timepicker/graphs/contributors
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
.bootstrap-timepicker {
position: relative;
}
.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu {
left: auto;
right: 0;
}
.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:before {
left: auto;
right: 12px;
}
.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:after {
left: auto;
right: 13px;
}
.bootstrap-timepicker .add-on {
cursor: pointer;
}
.bootstrap-timepicker .add-on i {
display: inline-block;
width: 16px;
height: 16px;
}
.bootstrap-timepicker-widget.dropdown-menu {
padding: 2px 3px 2px 2px;
}
.bootstrap-timepicker-widget.dropdown-menu.open {
display: inline-block;
}
.bootstrap-timepicker-widget.dropdown-menu:before {
border-bottom: 7px solid rgba(0, 0, 0, 0.2);
border-left: 7px solid transparent;
border-right: 7px solid transparent;
content: "";
display: inline-block;
left: 9px;
position: absolute;
top: -7px;
}
.bootstrap-timepicker-widget.dropdown-menu:after {
border-bottom: 6px solid #FFFFFF;
border-left: 6px solid transparent;
border-right: 6px solid transparent;
content: "";
display: inline-block;
left: 10px;
position: absolute;
top: -6px;
}
.bootstrap-timepicker-widget a.btn,
.bootstrap-timepicker-widget input {
border-radius: 4px;
}
.bootstrap-timepicker-widget table {
width: 100%;
margin: 0;
}
.bootstrap-timepicker-widget table td {
text-align: center;
height: 30px;
margin: 0;
padding: 2px;
}
.bootstrap-timepicker-widget table td:not(.separator) {
min-width: 30px;
}
.bootstrap-timepicker-widget table td span {
width: 100%;
}
.bootstrap-timepicker-widget table td a {
border: 1px transparent solid;
width: 100%;
display: inline-block;
margin: 0;
padding: 8px 0;
outline: 0;
color: #333;
}
.bootstrap-timepicker-widget table td a:hover {
text-decoration: none;
background-color: #eee;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
border-color: #ddd;
}
.bootstrap-timepicker-widget table td a i {
margin-top: 2px;
}
.bootstrap-timepicker-widget table td input {
width: 25px;
margin: 0;
text-align: center;
}
.bootstrap-timepicker-widget .modal-content {
padding: 4px;
}
@media (min-width: 767px) {
.bootstrap-timepicker-widget.modal {
width: 200px;
margin-left: -100px;
}
}
@media (max-width: 767px) {
.bootstrap-timepicker {
width: 100%;
}
.bootstrap-timepicker .dropdown-menu {
width: 100%;
}
}

9
static/css/bootstrap.min.css vendored Executable file

File diff suppressed because one or more lines are too long

BIN
static/css/chosen-sprite.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 646 B

BIN
static/css/chosen-sprite@2x.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 872 B

430
static/css/chosen.css Executable file
View File

@@ -0,0 +1,430 @@
/* @group Base */
.chosen-container {
position: relative;
display: inline-block;
vertical-align: middle;
font-size: 13px;
zoom: 1;
*display: inline;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
}
.chosen-container .chosen-drop {
position: absolute;
top: 100%;
left: -9999px;
z-index: 1010;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
width: 100%;
border: 1px solid #aaa;
border-top: 0;
background: #fff;
box-shadow: 0 4px 5px rgba(0, 0, 0, 0.15);
}
.chosen-container.chosen-with-drop .chosen-drop {
left: 0;
}
.chosen-container a {
cursor: pointer;
}
/* @end */
/* @group Single Chosen */
.chosen-container-single .chosen-single {
position: relative;
display: block;
overflow: hidden;
padding: 0 0 0 8px;
height: 23px;
border: 1px solid #aaa;
border-radius: 5px;
background-color: #fff;
background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #ffffff), color-stop(50%, #f6f6f6), color-stop(52%, #eeeeee), color-stop(100%, #f4f4f4));
background: -webkit-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
background: -moz-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
background: -o-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
background: linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
background-clip: padding-box;
box-shadow: 0 0 3px white inset, 0 1px 1px rgba(0, 0, 0, 0.1);
color: #444;
text-decoration: none;
white-space: nowrap;
line-height: 24px;
}
.chosen-container-single .chosen-default {
color: #999;
}
.chosen-container-single .chosen-single span {
display: block;
overflow: hidden;
margin-right: 26px;
text-overflow: ellipsis;
white-space: nowrap;
}
.chosen-container-single .chosen-single-with-deselect span {
margin-right: 38px;
}
.chosen-container-single .chosen-single abbr {
position: absolute;
top: 6px;
right: 26px;
display: block;
width: 12px;
height: 12px;
background: url('chosen-sprite.png') -42px 1px no-repeat;
font-size: 1px;
}
.chosen-container-single .chosen-single abbr:hover {
background-position: -42px -10px;
}
.chosen-container-single.chosen-disabled .chosen-single abbr:hover {
background-position: -42px -10px;
}
.chosen-container-single .chosen-single div {
position: absolute;
top: 0;
right: 0;
display: block;
width: 18px;
height: 100%;
}
.chosen-container-single .chosen-single div b {
display: block;
width: 100%;
height: 100%;
background: url('chosen-sprite.png') no-repeat 0px 2px;
}
.chosen-container-single .chosen-search {
position: relative;
z-index: 1010;
margin: 0;
padding: 3px 4px;
white-space: nowrap;
}
.chosen-container-single .chosen-search input[type="text"] {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
margin: 1px 0;
padding: 4px 20px 4px 5px;
width: 100%;
height: auto;
outline: 0;
border: 1px solid #aaa;
background: white url('chosen-sprite.png') no-repeat 100% -20px;
background: url('chosen-sprite.png') no-repeat 100% -20px, -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
background: url('chosen-sprite.png') no-repeat 100% -20px, -webkit-linear-gradient(#eeeeee 1%, #ffffff 15%);
background: url('chosen-sprite.png') no-repeat 100% -20px, -moz-linear-gradient(#eeeeee 1%, #ffffff 15%);
background: url('chosen-sprite.png') no-repeat 100% -20px, -o-linear-gradient(#eeeeee 1%, #ffffff 15%);
background: url('chosen-sprite.png') no-repeat 100% -20px, linear-gradient(#eeeeee 1%, #ffffff 15%);
font-size: 1em;
font-family: sans-serif;
line-height: normal;
border-radius: 0;
}
.chosen-container-single .chosen-drop {
margin-top: -1px;
border-radius: 0 0 4px 4px;
background-clip: padding-box;
}
.chosen-container-single.chosen-container-single-nosearch .chosen-search {
position: absolute;
left: -9999px;
}
/* @end */
/* @group Results */
.chosen-container .chosen-results {
position: relative;
overflow-x: hidden;
overflow-y: auto;
margin: 0 4px 4px 0;
padding: 0 0 0 4px;
max-height: 240px;
-webkit-overflow-scrolling: touch;
}
.chosen-container .chosen-results li {
display: none;
margin: 0;
padding: 5px 6px;
list-style: none;
line-height: 15px;
}
.chosen-container .chosen-results li.active-result {
display: list-item;
cursor: pointer;
}
.chosen-container .chosen-results li.disabled-result {
display: list-item;
color: #ccc;
cursor: default;
}
.chosen-container .chosen-results li.highlighted {
background-color: #3875d7;
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #3875d7), color-stop(90%, #2a62bc));
background-image: -webkit-linear-gradient(#3875d7 20%, #2a62bc 90%);
background-image: -moz-linear-gradient(#3875d7 20%, #2a62bc 90%);
background-image: -o-linear-gradient(#3875d7 20%, #2a62bc 90%);
background-image: linear-gradient(#3875d7 20%, #2a62bc 90%);
color: #fff;
}
.chosen-container .chosen-results li.no-results {
display: list-item;
background: #f4f4f4;
}
.chosen-container .chosen-results li.group-result {
display: list-item;
font-weight: bold;
cursor: default;
}
.chosen-container .chosen-results li.group-option {
padding-left: 15px;
}
.chosen-container .chosen-results li em {
font-style: normal;
text-decoration: underline;
}
/* @end */
/* @group Multi Chosen */
.chosen-container-multi .chosen-choices {
position: relative;
overflow: hidden;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
width: 100%;
height: auto !important;
height: 1%;
border: 1px solid #aaa;
background-color: #fff;
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
background-image: -webkit-linear-gradient(#eeeeee 1%, #ffffff 15%);
background-image: -moz-linear-gradient(#eeeeee 1%, #ffffff 15%);
background-image: -o-linear-gradient(#eeeeee 1%, #ffffff 15%);
background-image: linear-gradient(#eeeeee 1%, #ffffff 15%);
cursor: text;
}
.chosen-container-multi .chosen-choices li {
float: left;
list-style: none;
}
.chosen-container-multi .chosen-choices li.search-field {
margin: 0;
padding: 0;
white-space: nowrap;
}
.chosen-container-multi .chosen-choices li.search-field input[type="text"] {
margin: 1px 0;
padding: 5px;
height: 15px;
outline: 0;
border: 0 !important;
background: transparent !important;
box-shadow: none;
color: #666;
font-size: 100%;
font-family: sans-serif;
line-height: normal;
border-radius: 0;
}
.chosen-container-multi .chosen-choices li.search-field .default {
color: #999;
}
.chosen-container-multi .chosen-choices li.search-choice {
position: relative;
margin: 3px 0 3px 5px;
padding: 3px 20px 3px 5px;
border: 1px solid #aaa;
border-radius: 3px;
background-color: #e4e4e4;
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
background-image: -webkit-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
background-image: -moz-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
background-image: -o-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
background-clip: padding-box;
box-shadow: 0 0 2px white inset, 0 1px 0 rgba(0, 0, 0, 0.05);
color: #333;
line-height: 13px;
cursor: default;
}
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
position: absolute;
top: 4px;
right: 3px;
display: block;
width: 12px;
height: 12px;
background: url('chosen-sprite.png') -42px 1px no-repeat;
font-size: 1px;
}
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover {
background-position: -42px -10px;
}
.chosen-container-multi .chosen-choices li.search-choice-disabled {
padding-right: 5px;
border: 1px solid #ccc;
background-color: #e4e4e4;
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
background-image: -webkit-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
background-image: -moz-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
background-image: -o-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
background-image: linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
color: #666;
}
.chosen-container-multi .chosen-choices li.search-choice-focus {
background: #d4d4d4;
}
.chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close {
background-position: -42px -10px;
}
.chosen-container-multi .chosen-results {
margin: 0;
padding: 0;
}
.chosen-container-multi .chosen-drop .result-selected {
display: list-item;
color: #ccc;
cursor: default;
}
/* @end */
/* @group Active */
.chosen-container-active .chosen-single {
border: 1px solid #5897fb;
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}
.chosen-container-active.chosen-with-drop .chosen-single {
border: 1px solid #aaa;
-moz-border-radius-bottomright: 0;
border-bottom-right-radius: 0;
-moz-border-radius-bottomleft: 0;
border-bottom-left-radius: 0;
background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #eeeeee), color-stop(80%, #ffffff));
background-image: -webkit-linear-gradient(#eeeeee 20%, #ffffff 80%);
background-image: -moz-linear-gradient(#eeeeee 20%, #ffffff 80%);
background-image: -o-linear-gradient(#eeeeee 20%, #ffffff 80%);
background-image: linear-gradient(#eeeeee 20%, #ffffff 80%);
box-shadow: 0 1px 0 #fff inset;
}
.chosen-container-active.chosen-with-drop .chosen-single div {
border-left: none;
background: transparent;
}
.chosen-container-active.chosen-with-drop .chosen-single div b {
background-position: -18px 2px;
}
.chosen-container-active .chosen-choices {
border: 1px solid #5897fb;
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}
.chosen-container-active .chosen-choices li.search-field input[type="text"] {
color: #111 !important;
}
/* @end */
/* @group Disabled Support */
.chosen-disabled {
opacity: 0.5 !important;
cursor: default;
}
.chosen-disabled .chosen-single {
cursor: default;
}
.chosen-disabled .chosen-choices .search-choice .search-choice-close {
cursor: default;
}
/* @end */
/* @group Right to Left */
.chosen-rtl {
text-align: right;
}
.chosen-rtl .chosen-single {
overflow: visible;
padding: 0 8px 0 0;
}
.chosen-rtl .chosen-single span {
margin-right: 0;
margin-left: 26px;
direction: rtl;
}
.chosen-rtl .chosen-single-with-deselect span {
margin-left: 38px;
}
.chosen-rtl .chosen-single div {
right: auto;
left: 3px;
}
.chosen-rtl .chosen-single abbr {
right: auto;
left: 26px;
}
.chosen-rtl .chosen-choices li {
float: right;
}
.chosen-rtl .chosen-choices li.search-field input[type="text"] {
direction: rtl;
}
.chosen-rtl .chosen-choices li.search-choice {
margin: 3px 5px 3px 0;
padding: 3px 5px 3px 19px;
}
.chosen-rtl .chosen-choices li.search-choice .search-choice-close {
right: auto;
left: 4px;
}
.chosen-rtl.chosen-container-single-nosearch .chosen-search,
.chosen-rtl .chosen-drop {
left: 9999px;
}
.chosen-rtl.chosen-container-single .chosen-results {
margin: 0 0 4px 4px;
padding: 0 4px 0 0;
}
.chosen-rtl .chosen-results li.group-option {
padding-right: 15px;
padding-left: 0;
}
.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div {
border-right: none;
}
.chosen-rtl .chosen-search input[type="text"] {
padding: 4px 5px 4px 20px;
background: white url('chosen-sprite.png') no-repeat -30px -20px;
background: url('chosen-sprite.png') no-repeat -30px -20px, -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
background: url('chosen-sprite.png') no-repeat -30px -20px, -webkit-linear-gradient(#eeeeee 1%, #ffffff 15%);
background: url('chosen-sprite.png') no-repeat -30px -20px, -moz-linear-gradient(#eeeeee 1%, #ffffff 15%);
background: url('chosen-sprite.png') no-repeat -30px -20px, -o-linear-gradient(#eeeeee 1%, #ffffff 15%);
background: url('chosen-sprite.png') no-repeat -30px -20px, linear-gradient(#eeeeee 1%, #ffffff 15%);
direction: rtl;
}
.chosen-rtl.chosen-container-single .chosen-single div b {
background-position: 6px 2px;
}
.chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b {
background-position: -12px 2px;
}
/* @end */
/* @group Retina compatibility */
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-resolution: 144dpi) {
.chosen-rtl .chosen-search input[type="text"],
.chosen-container-single .chosen-single abbr,
.chosen-container-single .chosen-single div b,
.chosen-container-single .chosen-search input[type="text"],
.chosen-container-multi .chosen-choices .search-choice .search-choice-close,
.chosen-container .chosen-results-scroll-down span,
.chosen-container .chosen-results-scroll-up span {
background-image: url('chosen-sprite@2x.png') !important;
background-size: 52px 37px !important;
background-repeat: no-repeat !important;
}
}
/* @end */

3
static/css/chosen.min.css vendored Executable file

File diff suppressed because one or more lines are too long

69
static/css/colorbox.css Executable file
View File

@@ -0,0 +1,69 @@
/*
Colorbox Core Style:
The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative;}
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;}
.cboxIframe{width:100%; height:100%; display:block; border:0;}
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}
/*
User Style:
Change the following styles to modify the appearance of Colorbox. They are
ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay{background:url(images/overlay.png) repeat 0 0;}
#colorbox{outline:0;}
#cboxTopLeft{width:21px; height:21px; background:url(images/controls.png) no-repeat -101px 0;}
#cboxTopRight{width:21px; height:21px; background:url(images/controls.png) no-repeat -130px 0;}
#cboxBottomLeft{width:21px; height:21px; background:url(images/controls.png) no-repeat -101px -29px;}
#cboxBottomRight{width:21px; height:21px; background:url(images/controls.png) no-repeat -130px -29px;}
#cboxMiddleLeft{width:21px; background:url(images/controls.png) left top repeat-y;}
#cboxMiddleRight{width:21px; background:url(images/controls.png) right top repeat-y;}
#cboxTopCenter{height:21px; background:url(images/border.png) 0 0 repeat-x;}
#cboxBottomCenter{height:21px; background:url(images/border.png) 0 -29px repeat-x;}
#cboxContent{background:#fff; overflow:hidden;}
.cboxIframe{background:#fff;}
#cboxError{padding:50px; border:1px solid #ccc;}
#cboxLoadedContent{margin-bottom:28px;}
#cboxTitle{position:absolute; bottom:4px; left:0; text-align:center; width:100%; color:#949494;}
#cboxCurrent{position:absolute; bottom:4px; left:58px; color:#949494;}
#cboxLoadingOverlay{background:url(images/loading_background.png) no-repeat center center;}
#cboxLoadingGraphic{background:url(images/loading.gif) no-repeat center center;}
/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; width:auto; background:none; }
/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}
#cboxSlideshow{position:absolute; bottom:4px; right:30px; color:#0092ef;}
#cboxPrevious{position:absolute; bottom:0; left:0; background:url(images/controls.png) no-repeat -75px 0; width:25px; height:25px; text-indent:-9999px;}
#cboxPrevious:hover{background-position:-75px -25px;}
#cboxNext{position:absolute; bottom:0; left:27px; background:url(images/controls.png) no-repeat -50px 0; width:25px; height:25px; text-indent:-9999px;}
#cboxNext:hover{background-position:-50px -25px;}
#cboxClose{position:absolute; bottom:0; right:0; background:url(images/controls.png) no-repeat -25px 0; width:25px; height:25px; text-indent:-9999px;}
#cboxClose:hover{background-position:-25px -25px;}
/*
The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
when an alpha filter (opacity change) is set on the element or ancestor element. This style is not applied to or needed in IE9.
See: http://jacklmoore.com/notes/ie-transparency-problems/
*/
.cboxIE #cboxTopLeft,
.cboxIE #cboxTopCenter,
.cboxIE #cboxTopRight,
.cboxIE #cboxBottomLeft,
.cboxIE #cboxBottomCenter,
.cboxIE #cboxBottomRight,
.cboxIE #cboxMiddleLeft,
.cboxIE #cboxMiddleRight {
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
}

127
static/css/colorpicker.css Executable file
View File

@@ -0,0 +1,127 @@
/*!
* Colorpicker for Bootstrap
*
* Copyright 2012 Stefan Petre
* Licensed under the Apache License v2.0
* http://www.apache.org/licenses/LICENSE-2.0
*
*/
.colorpicker-saturation {
width: 100px;
height: 100px;
background-image: url(img/saturation.png);
cursor: crosshair;
float: left;
}
.colorpicker-saturation i {
display: block;
height: 5px;
width: 5px;
border: 1px solid #000;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
position: absolute;
top: 0;
left: 0;
margin: -4px 0 0 -4px;
}
.colorpicker-saturation i b {
display: block;
height: 5px;
width: 5px;
border: 1px solid #fff;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
}
.colorpicker-hue, .colorpicker-alpha {
width: 15px;
height: 100px;
float: left;
cursor: row-resize;
margin-left: 4px;
margin-bottom: 4px;
}
.colorpicker-hue i, .colorpicker-alpha i {
display: block;
height: 1px;
background: #000;
border-top: 1px solid #fff;
position: absolute;
top: 0;
left: 0;
width: 100%;
margin-top: -1px;
}
.colorpicker-hue {
background-image: url(img/hue.png);
}
.colorpicker-alpha {
background-image: url(img/alpha.png);
display: none;
}
.colorpicker {
*zoom: 1;
top: 0;
left: 0;
padding: 4px;
min-width: 120px;
margin-top: 1px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
.colorpicker:before, .colorpicker:after {
display: table;
content: "";
}
.colorpicker:after {
clear: both;
}
.colorpicker:before {
content: '';
display: inline-block;
border-left: 7px solid transparent;
border-right: 7px solid transparent;
border-bottom: 7px solid #ccc;
border-bottom-color: rgba(0, 0, 0, 0.2);
position: absolute;
top: -7px;
left: 6px;
}
.colorpicker:after {
content: '';
display: inline-block;
border-left: 6px solid transparent;
border-right: 6px solid transparent;
border-bottom: 6px solid #ffffff;
position: absolute;
top: -6px;
left: 7px;
}
.colorpicker div {
position: relative;
}
.colorpicker.alpha {
min-width: 140px;
}
.colorpicker.alpha .colorpicker-alpha {
display: block;
}
.colorpicker-color {
height: 10px;
margin-top: 5px;
clear: both;
background-image: url(img/alpha.png);
background-position: 0 100%;
}
.colorpicker-color div {
height: 10px;
}
.input-append.color .add-on i, .input-prepend.color .add-on i {
display: block;
cursor: pointer;
width: 16px;
height: 16px;
}

301
static/css/datepicker.css Executable file
View File

@@ -0,0 +1,301 @@
/*!
* Datepicker for Bootstrap
*
* Copyright 2012 Stefan Petre
* Improvements by Andrew Rowls
* Licensed under the Apache License v2.0
* http://www.apache.org/licenses/LICENSE-2.0
*
*/
.datepicker {
padding: 4px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
direction: ltr;
/*.dow {
border-top: 1px solid #ddd !important;
}*/
}
.datepicker-inline {
width: 220px;
}
.datepicker.datepicker-rtl {
direction: rtl;
}
.datepicker.datepicker-rtl table tr td span {
float: right;
}
.datepicker-dropdown {
top: 0;
left: 0;
}
.datepicker-dropdown:before {
content: '';
display: inline-block;
border-left: 7px solid transparent;
border-right: 7px solid transparent;
border-bottom: 7px solid #ccc;
border-bottom-color: rgba(0, 0, 0, 0.2);
position: absolute;
top: -7px;
left: 6px;
}
.datepicker-dropdown:after {
content: '';
display: inline-block;
border-left: 6px solid transparent;
border-right: 6px solid transparent;
border-bottom: 6px solid #ffffff;
position: absolute;
top: -6px;
left: 7px;
}
.datepicker > div {
display: none;
}
.datepicker.days div.datepicker-days {
display: block;
}
.datepicker.months div.datepicker-months {
display: block;
}
.datepicker.years div.datepicker-years {
display: block;
}
.datepicker table {
margin: 0;
}
.datepicker td,
.datepicker th {
text-align: center;
width: 20px;
height: 20px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
border: none;
}
.table-striped .datepicker table tr td,
.table-striped .datepicker table tr th {
background-color: transparent;
}
.datepicker table tr td.day:hover {
background: #eeeeee;
cursor: pointer;
}
.datepicker table tr td.old,
.datepicker table tr td.new {
color: #999999;
}
.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover {
background: none;
color: #999999;
cursor: default;
}
.datepicker table tr td.today,
.datepicker table tr td.today:hover,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled:hover {
background-color: #fde19a;
background-image: -moz-linear-gradient(top, #fdd49a, #fdf59a);
background-image: -ms-linear-gradient(top, #fdd49a, #fdf59a);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fdd49a), to(#fdf59a));
background-image: -webkit-linear-gradient(top, #fdd49a, #fdf59a);
background-image: -o-linear-gradient(top, #fdd49a, #fdf59a);
background-image: linear-gradient(top, #fdd49a, #fdf59a);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);
border-color: #fdf59a #fdf59a #fbed50;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
color: #000 !important;
}
.datepicker table tr td.today:hover,
.datepicker table tr td.today:hover:hover,
.datepicker table tr td.today.disabled:hover,
.datepicker table tr td.today.disabled:hover:hover,
.datepicker table tr td.today:active,
.datepicker table tr td.today:hover:active,
.datepicker table tr td.today.disabled:active,
.datepicker table tr td.today.disabled:hover:active,
.datepicker table tr td.today.active,
.datepicker table tr td.today:hover.active,
.datepicker table tr td.today.disabled.active,
.datepicker table tr td.today.disabled:hover.active,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today:hover.disabled,
.datepicker table tr td.today.disabled.disabled,
.datepicker table tr td.today.disabled:hover.disabled,
.datepicker table tr td.today[disabled],
.datepicker table tr td.today:hover[disabled],
.datepicker table tr td.today.disabled[disabled],
.datepicker table tr td.today.disabled:hover[disabled] {
background-color: #fdf59a;
}
.datepicker table tr td.today:active,
.datepicker table tr td.today:hover:active,
.datepicker table tr td.today.disabled:active,
.datepicker table tr td.today.disabled:hover:active,
.datepicker table tr td.today.active,
.datepicker table tr td.today:hover.active,
.datepicker table tr td.today.disabled.active,
.datepicker table tr td.today.disabled:hover.active {
background-color: #fbf069 \9;
}
.datepicker table tr td.active,
.datepicker table tr td.active:hover,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled:hover {
background-color: #006dcc;
background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
background-image: -o-linear-gradient(top, #0088cc, #0044cc);
background-image: linear-gradient(top, #0088cc, #0044cc);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);
border-color: #0044cc #0044cc #002a80;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datepicker table tr td.active:hover,
.datepicker table tr td.active:hover:hover,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active.disabled:hover:hover,
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:hover.active,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active:hover.disabled,
.datepicker table tr td.active.disabled.disabled,
.datepicker table tr td.active.disabled:hover.disabled,
.datepicker table tr td.active[disabled],
.datepicker table tr td.active:hover[disabled],
.datepicker table tr td.active.disabled[disabled],
.datepicker table tr td.active.disabled:hover[disabled] {
background-color: #0044cc;
}
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:hover.active {
background-color: #003399 \9;
}
.datepicker table tr td span {
display: block;
width: 23%;
height: 54px;
line-height: 54px;
float: left;
margin: 1%;
cursor: pointer;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
.datepicker table tr td span:hover {
background: #eeeeee;
}
.datepicker table tr td span.disabled,
.datepicker table tr td span.disabled:hover {
background: none;
color: #999999;
cursor: default;
}
.datepicker table tr td span.active,
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active.disabled:hover {
background-color: #006dcc;
background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
background-image: -o-linear-gradient(top, #0088cc, #0044cc);
background-image: linear-gradient(top, #0088cc, #0044cc);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);
border-color: #0044cc #0044cc #002a80;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active:hover:hover,
.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active.disabled:hover:hover,
.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.active,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled:hover.active,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active:hover.disabled,
.datepicker table tr td span.active.disabled.disabled,
.datepicker table tr td span.active.disabled:hover.disabled,
.datepicker table tr td span.active[disabled],
.datepicker table tr td span.active:hover[disabled],
.datepicker table tr td span.active.disabled[disabled],
.datepicker table tr td span.active.disabled:hover[disabled] {
background-color: #0044cc;
}
.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.active,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled:hover.active {
background-color: #003399 \9;
}
.datepicker table tr td span.old {
color: #999999;
}
.datepicker th.switch {
width: 145px;
}
.datepicker thead tr:first-child th,
.datepicker tfoot tr:first-child th {
cursor: pointer;
}
.datepicker thead tr:first-child th:hover,
.datepicker tfoot tr:first-child th:hover {
background: #eeeeee;
}
.datepicker .cw {
font-size: 10px;
width: 12px;
padding: 0 2px 0 5px;
vertical-align: middle;
}
.datepicker thead tr:first-child th.cw {
cursor: default;
background-color: transparent;
}
.input-append.date .add-on i,
.input-prepend.date .add-on i {
display: block;
cursor: pointer;
width: 16px;
height: 16px;
}

234
static/css/daterangepicker.css Executable file
View File

@@ -0,0 +1,234 @@
/*!
* Stylesheet for the Date Range Picker, for use with Bootstrap 2.x
*
* Copyright 2013 Dan Grossman ( http://www.dangrossman.info )
* Licensed under the Apache License v2.0
* http://www.apache.org/licenses/LICENSE-2.0
*
* Built for http://www.improvely.com
*/
.daterangepicker.dropdown-menu {
max-width: none;
}
.daterangepicker.opensleft .ranges, .daterangepicker.opensleft .calendar {
float: left;
margin: 4px;
}
.daterangepicker.opensright .ranges, .daterangepicker.opensright .calendar {
float: right;
margin: 4px;
}
.daterangepicker .ranges {
width: 160px;
text-align: left;
}
.daterangepicker .ranges .range_inputs>div {
float: left;
}
.daterangepicker .ranges .range_inputs>div:nth-child(2) {
padding-left: 11px;
}
.daterangepicker .calendar {
display: none;
max-width: 250px;
}
.daterangepicker .calendar th, .daterangepicker .calendar td {
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
white-space: nowrap;
text-align: center;
}
.daterangepicker .ranges label {
color: #333;
font-size: 11px;
margin-bottom: 2px;
text-transform: uppercase;
text-shadow: 1px 1px 0 #fff;
}
.daterangepicker .ranges input {
font-size: 11px;
}
.daterangepicker .ranges ul {
list-style: none;
margin: 0;
padding: 0;
}
.daterangepicker .ranges li {
font-size: 13px;
background: #f5f5f5;
border: 1px solid #f5f5f5;
color: #08c;
padding: 3px 12px;
margin-bottom: 8px;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
cursor: pointer;
}
.daterangepicker .ranges li.active, .daterangepicker .ranges li:hover {
background: #08c;
border: 1px solid #08c;
color: #fff;
}
.daterangepicker .calendar-date {
border: 1px solid #ddd;
padding: 4px;
border-radius: 4px;
background: #fff;
}
.daterangepicker .calendar-time {
text-align: center;
margin: 8px auto 0 auto;
line-height: 30px;
}
.daterangepicker {
position: absolute;
background: #fff;
top: 100px;
left: 20px;
padding: 4px;
margin-top: 1px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
.daterangepicker.opensleft:before {
position: absolute;
top: -7px;
right: 9px;
display: inline-block;
border-right: 7px solid transparent;
border-bottom: 7px solid #ccc;
border-left: 7px solid transparent;
border-bottom-color: rgba(0, 0, 0, 0.2);
content: '';
}
.daterangepicker.opensleft:after {
position: absolute;
top: -6px;
right: 10px;
display: inline-block;
border-right: 6px solid transparent;
border-bottom: 6px solid #fff;
border-left: 6px solid transparent;
content: '';
}
.daterangepicker.opensright:before {
position: absolute;
top: -7px;
left: 9px;
display: inline-block;
border-right: 7px solid transparent;
border-bottom: 7px solid #ccc;
border-left: 7px solid transparent;
border-bottom-color: rgba(0, 0, 0, 0.2);
content: '';
}
.daterangepicker.opensright:after {
position: absolute;
top: -6px;
left: 10px;
display: inline-block;
border-right: 6px solid transparent;
border-bottom: 6px solid #fff;
border-left: 6px solid transparent;
content: '';
}
.daterangepicker table {
width: 100%;
margin: 0;
}
.daterangepicker td, .daterangepicker th {
text-align: center;
width: 20px;
height: 20px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
cursor: pointer;
white-space: nowrap;
}
.daterangepicker td.off {
color: #999;
}
.daterangepicker td.disabled {
color: #999;
}
.daterangepicker td.available:hover, .daterangepicker th.available:hover {
background: #eee;
}
.daterangepicker td.in-range {
background: #ebf4f8;
-webkit-border-radius: 0;
-moz-border-radius: 0;
border-radius: 0;
}
.daterangepicker td.active, .daterangepicker td.active:hover {
background-color: #006dcc;
background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
background-image: -o-linear-gradient(top, #0088cc, #0044cc);
background-image: linear-gradient(top, #0088cc, #0044cc);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);
border-color: #0044cc #0044cc #002a80;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
color: #fff;
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.daterangepicker td.week, .daterangepicker th.week {
font-size: 80%;
color: #ccc;
}
.daterangepicker select.monthselect, .daterangepicker select.yearselect {
font-size: 12px;
padding: 1px;
height: auto;
margin: 0;
cursor: default;
}
.daterangepicker select.monthselect {
margin-right: 2%;
width: 56%;
}
.daterangepicker select.yearselect {
width: 40%;
}
.daterangepicker select.hourselect, .daterangepicker select.minuteselect, .daterangepicker select.ampmselect {
width: 60px;
margin-bottom: 0;
}

410
static/css/dropzone.css Executable file
View File

@@ -0,0 +1,410 @@
/* The MIT License */
.dropzone,
.dropzone *,
.dropzone-previews,
.dropzone-previews * {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.dropzone {
position: relative;
border: 1px solid rgba(0,0,0,0.08);
background: rgba(0,0,0,0.02);
padding: 1em;
}
.dropzone.dz-clickable {
cursor: pointer;
}
.dropzone.dz-clickable .dz-message,
.dropzone.dz-clickable .dz-message span {
cursor: pointer;
}
.dropzone.dz-clickable * {
cursor: default;
}
.dropzone .dz-message {
opacity: 1;
-ms-filter: none;
filter: none;
}
.dropzone.dz-drag-hover {
border-color: rgba(0,0,0,0.15);
background: rgba(0,0,0,0.04);
}
.dropzone.dz-started .dz-message {
display: none;
}
.dropzone .dz-preview,
.dropzone-previews .dz-preview {
background: rgba(255,255,255,0.8);
position: relative;
display: inline-block;
margin: 17px;
vertical-align: top;
border: 1px solid #acacac;
padding: 6px 6px 6px 6px;
}
.dropzone .dz-preview.dz-file-preview [data-dz-thumbnail],
.dropzone-previews .dz-preview.dz-file-preview [data-dz-thumbnail] {
display: none;
}
.dropzone .dz-preview .dz-details,
.dropzone-previews .dz-preview .dz-details {
width: 100px;
height: 100px;
position: relative;
background: #ebebeb;
padding: 5px;
margin-bottom: 22px;
}
.dropzone .dz-preview .dz-details .dz-filename,
.dropzone-previews .dz-preview .dz-details .dz-filename {
overflow: hidden;
height: 100%;
}
.dropzone .dz-preview .dz-details img,
.dropzone-previews .dz-preview .dz-details img {
position: absolute;
top: 0;
left: 0;
width: 100px;
height: 100px;
}
.dropzone .dz-preview .dz-details .dz-size,
.dropzone-previews .dz-preview .dz-details .dz-size {
position: absolute;
bottom: -28px;
left: 3px;
height: 28px;
line-height: 28px;
}
.dropzone .dz-preview.dz-error .dz-error-mark,
.dropzone-previews .dz-preview.dz-error .dz-error-mark {
display: block;
}
.dropzone .dz-preview.dz-success .dz-success-mark,
.dropzone-previews .dz-preview.dz-success .dz-success-mark {
display: block;
}
.dropzone .dz-preview:hover .dz-details img,
.dropzone-previews .dz-preview:hover .dz-details img {
display: none;
}
.dropzone .dz-preview .dz-success-mark,
.dropzone-previews .dz-preview .dz-success-mark,
.dropzone .dz-preview .dz-error-mark,
.dropzone-previews .dz-preview .dz-error-mark {
display: none;
position: absolute;
width: 40px;
height: 40px;
font-size: 30px;
text-align: center;
right: -10px;
top: -10px;
}
.dropzone .dz-preview .dz-success-mark,
.dropzone-previews .dz-preview .dz-success-mark {
color: #8cc657;
}
.dropzone .dz-preview .dz-error-mark,
.dropzone-previews .dz-preview .dz-error-mark {
color: #ee162d;
}
.dropzone .dz-preview .dz-progress,
.dropzone-previews .dz-preview .dz-progress {
position: absolute;
top: 100px;
left: 6px;
right: 6px;
height: 6px;
background: #d7d7d7;
display: none;
}
.dropzone .dz-preview .dz-progress .dz-upload,
.dropzone-previews .dz-preview .dz-progress .dz-upload {
position: absolute;
top: 0;
bottom: 0;
left: 0;
width: 0%;
background-color: #8cc657;
}
.dropzone .dz-preview.dz-processing .dz-progress,
.dropzone-previews .dz-preview.dz-processing .dz-progress {
display: block;
}
.dropzone .dz-preview .dz-error-message,
.dropzone-previews .dz-preview .dz-error-message {
display: none;
position: absolute;
top: -5px;
left: -20px;
background: rgba(245,245,245,0.8);
padding: 8px 10px;
color: #800;
min-width: 140px;
max-width: 500px;
z-index: 500;
}
.dropzone .dz-preview:hover.dz-error .dz-error-message,
.dropzone-previews .dz-preview:hover.dz-error .dz-error-message {
display: block;
}
.dropzone {
border: 1px solid rgba(0,0,0,0.03);
min-height: 360px;
-webkit-border-radius: 3px;
border-radius: 3px;
background: rgba(0,0,0,0.03);
padding: 23px;
}
.dropzone .dz-default.dz-message {
opacity: 1;
-ms-filter: none;
filter: none;
-webkit-transition: opacity 0.3s ease-in-out;
-moz-transition: opacity 0.3s ease-in-out;
-o-transition: opacity 0.3s ease-in-out;
-ms-transition: opacity 0.3s ease-in-out;
transition: opacity 0.3s ease-in-out;
background-image: url("../img/debug/spritemap.png");
background-repeat: no-repeat;
background-position: 0 0;
position: absolute;
width: 428px;
height: 123px;
margin-left: -214px;
margin-top: -61.5px;
top: 50%;
left: 50%;
}
@media all and (-webkit-min-device-pixel-ratio:1.5),(min--moz-device-pixel-ratio:1.5),(-o-min-device-pixel-ratio:1.5/1),(min-device-pixel-ratio:1.5),(min-resolution:138dpi),(min-resolution:1.5dppx) {
.dropzone .dz-default.dz-message {
background-image: url("../img/debug/spritemap@2x.png");
-webkit-background-size: 428px 406px;
-moz-background-size: 428px 406px;
background-size: 428px 406px;
}
}
.dropzone .dz-default.dz-message span {
display: none;
}
.dropzone.dz-square .dz-default.dz-message {
background-position: 0 -123px;
width: 268px;
margin-left: -134px;
height: 174px;
margin-top: -87px;
}
.dropzone.dz-drag-hover .dz-message {
opacity: 0.15;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=15)";
filter: alpha(opacity=15);
}
.dropzone.dz-started .dz-message {
display: block;
opacity: 0;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
filter: alpha(opacity=0);
}
.dropzone .dz-preview,
.dropzone-previews .dz-preview {
-webkit-box-shadow: 1px 1px 4px rgba(0,0,0,0.16);
box-shadow: 1px 1px 4px rgba(0,0,0,0.16);
font-size: 14px;
}
.dropzone .dz-preview.dz-image-preview:hover .dz-details img,
.dropzone-previews .dz-preview.dz-image-preview:hover .dz-details img {
display: block;
opacity: 0.1;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)";
filter: alpha(opacity=10);
}
.dropzone .dz-preview.dz-success .dz-success-mark,
.dropzone-previews .dz-preview.dz-success .dz-success-mark {
opacity: 1;
-ms-filter: none;
filter: none;
}
.dropzone .dz-preview.dz-error .dz-error-mark,
.dropzone-previews .dz-preview.dz-error .dz-error-mark {
opacity: 1;
-ms-filter: none;
filter: none;
}
.dropzone .dz-preview.dz-error .dz-progress .dz-upload,
.dropzone-previews .dz-preview.dz-error .dz-progress .dz-upload {
background: #ee1e2d;
}
.dropzone .dz-preview .dz-error-mark,
.dropzone-previews .dz-preview .dz-error-mark,
.dropzone .dz-preview .dz-success-mark,
.dropzone-previews .dz-preview .dz-success-mark {
display: block;
opacity: 0;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
filter: alpha(opacity=0);
-webkit-transition: opacity 0.4s ease-in-out;
-moz-transition: opacity 0.4s ease-in-out;
-o-transition: opacity 0.4s ease-in-out;
-ms-transition: opacity 0.4s ease-in-out;
transition: opacity 0.4s ease-in-out;
background-image: url("../img/debug/spritemap.png");
background-repeat: no-repeat;
}
@media all and (-webkit-min-device-pixel-ratio:1.5),(min--moz-device-pixel-ratio:1.5),(-o-min-device-pixel-ratio:1.5/1),(min-device-pixel-ratio:1.5),(min-resolution:138dpi),(min-resolution:1.5dppx) {
.dropzone .dz-preview .dz-error-mark,
.dropzone-previews .dz-preview .dz-error-mark,
.dropzone .dz-preview .dz-success-mark,
.dropzone-previews .dz-preview .dz-success-mark {
background-image: url("../img/debug/spritemap@2x.png");
-webkit-background-size: 428px 406px;
-moz-background-size: 428px 406px;
background-size: 428px 406px;
}
}
.dropzone .dz-preview .dz-error-mark span,
.dropzone-previews .dz-preview .dz-error-mark span,
.dropzone .dz-preview .dz-success-mark span,
.dropzone-previews .dz-preview .dz-success-mark span {
display: none;
}
.dropzone .dz-preview .dz-error-mark,
.dropzone-previews .dz-preview .dz-error-mark {
background-position: -268px -123px;
}
.dropzone .dz-preview .dz-success-mark,
.dropzone-previews .dz-preview .dz-success-mark {
background-position: -268px -163px;
}
.dropzone .dz-preview .dz-progress .dz-upload,
.dropzone-previews .dz-preview .dz-progress .dz-upload {
-webkit-animation: loading 0.4s linear infinite;
-moz-animation: loading 0.4s linear infinite;
-o-animation: loading 0.4s linear infinite;
-ms-animation: loading 0.4s linear infinite;
animation: loading 0.4s linear infinite;
-webkit-transition: width 0.3s ease-in-out;
-moz-transition: width 0.3s ease-in-out;
-o-transition: width 0.3s ease-in-out;
-ms-transition: width 0.3s ease-in-out;
transition: width 0.3s ease-in-out;
-webkit-border-radius: 2px;
border-radius: 2px;
position: absolute;
top: 0;
left: 0;
width: 0%;
height: 100%;
background-image: url("../img/debug/spritemap.png");
background-repeat: repeat-x;
background-position: 0px -400px;
}
@media all and (-webkit-min-device-pixel-ratio:1.5),(min--moz-device-pixel-ratio:1.5),(-o-min-device-pixel-ratio:1.5/1),(min-device-pixel-ratio:1.5),(min-resolution:138dpi),(min-resolution:1.5dppx) {
.dropzone .dz-preview .dz-progress .dz-upload,
.dropzone-previews .dz-preview .dz-progress .dz-upload {
background-image: url("../img/debug/spritemap@2x.png");
-webkit-background-size: 428px 406px;
-moz-background-size: 428px 406px;
background-size: 428px 406px;
}
}
.dropzone .dz-preview.dz-success .dz-progress,
.dropzone-previews .dz-preview.dz-success .dz-progress {
display: block;
opacity: 0;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
filter: alpha(opacity=0);
-webkit-transition: opacity 0.4s ease-in-out;
-moz-transition: opacity 0.4s ease-in-out;
-o-transition: opacity 0.4s ease-in-out;
-ms-transition: opacity 0.4s ease-in-out;
transition: opacity 0.4s ease-in-out;
}
.dropzone .dz-preview .dz-error-message,
.dropzone-previews .dz-preview .dz-error-message {
display: block;
opacity: 0;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
filter: alpha(opacity=0);
-webkit-transition: opacity 0.3s ease-in-out;
-moz-transition: opacity 0.3s ease-in-out;
-o-transition: opacity 0.3s ease-in-out;
-ms-transition: opacity 0.3s ease-in-out;
transition: opacity 0.3s ease-in-out;
}
.dropzone .dz-preview:hover.dz-error .dz-error-message,
.dropzone-previews .dz-preview:hover.dz-error .dz-error-message {
opacity: 1;
-ms-filter: none;
filter: none;
}
.dropzone a.dz-remove,
.dropzone-previews a.dz-remove {
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fafafa), color-stop(1, #eee));
background-image: -webkit-linear-gradient(top, #fafafa 0, #eee 100%);
background-image: -moz-linear-gradient(top, #fafafa 0, #eee 100%);
background-image: -o-linear-gradient(top, #fafafa 0, #eee 100%);
background-image: -ms-linear-gradient(top, #fafafa 0, #eee 100%);
background-image: linear-gradient(top, #fafafa 0, #eee 100%);
-webkit-border-radius: 2px;
border-radius: 2px;
border: 1px solid #eee;
text-decoration: none;
display: block;
padding: 4px 5px;
text-align: center;
color: #aaa;
margin-top: 26px;
}
.dropzone a.dz-remove:hover,
.dropzone-previews a.dz-remove:hover {
color: #666;
}
@-moz-keyframes loading {
0% {
background-position: 0 -400px;
}
100% {
background-position: -7px -400px;
}
}
@-webkit-keyframes loading {
0% {
background-position: 0 -400px;
}
100% {
background-position: -7px -400px;
}
}
@-o-keyframes loading {
0% {
background-position: 0 -400px;
}
100% {
background-position: -7px -400px;
}
}
@-ms-keyframes loading {
0% {
background-position: 0 -400px;
}
100% {
background-position: -7px -400px;
}
}
@keyframes loading {
0% {
background-position: 0 -400px;
}
100% {
background-position: -7px -400px;
}
}

384
static/css/font-awesome-ie7.min.css vendored Executable file
View File

@@ -0,0 +1,384 @@
.icon-large{font-size:1.3333333333333333em;margin-top:-4px;padding-top:3px;margin-bottom:-4px;padding-bottom:3px;vertical-align:middle;}
.nav [class^="icon-"],.nav [class*=" icon-"]{vertical-align:inherit;margin-top:-4px;padding-top:3px;margin-bottom:-4px;padding-bottom:3px;}.nav [class^="icon-"].icon-large,.nav [class*=" icon-"].icon-large{vertical-align:-25%;}
.nav-pills [class^="icon-"].icon-large,.nav-tabs [class^="icon-"].icon-large,.nav-pills [class*=" icon-"].icon-large,.nav-tabs [class*=" icon-"].icon-large{line-height:.75em;margin-top:-7px;padding-top:5px;margin-bottom:-5px;padding-bottom:4px;}
.btn [class^="icon-"].pull-left,.btn [class*=" icon-"].pull-left,.btn [class^="icon-"].pull-right,.btn [class*=" icon-"].pull-right{vertical-align:inherit;}
.btn [class^="icon-"].icon-large,.btn [class*=" icon-"].icon-large{margin-top:-0.5em;}
a [class^="icon-"],a [class*=" icon-"]{cursor:pointer;}
.icon-glass{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf000;');}
.icon-music{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf001;');}
.icon-search{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf002;');}
.icon-envelope-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf003;');}
.icon-heart{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf004;');}
.icon-star{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf005;');}
.icon-star-empty{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf006;');}
.icon-user{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf007;');}
.icon-film{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf008;');}
.icon-th-large{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf009;');}
.icon-th{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf00a;');}
.icon-th-list{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf00b;');}
.icon-ok{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf00c;');}
.icon-remove{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf00d;');}
.icon-zoom-in{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf00e;');}
.icon-zoom-out{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf010;');}
.icon-off{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf011;');}
.icon-power-off{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf011;');}
.icon-signal{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf012;');}
.icon-cog{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf013;');}
.icon-gear{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf013;');}
.icon-trash{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf014;');}
.icon-home{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf015;');}
.icon-file-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf016;');}
.icon-time{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf017;');}
.icon-road{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf018;');}
.icon-download-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf019;');}
.icon-download{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf01a;');}
.icon-upload{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf01b;');}
.icon-inbox{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf01c;');}
.icon-play-circle{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf01d;');}
.icon-repeat{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf01e;');}
.icon-rotate-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf01e;');}
.icon-refresh{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf021;');}
.icon-list-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf022;');}
.icon-lock{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf023;');}
.icon-flag{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf024;');}
.icon-headphones{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf025;');}
.icon-volume-off{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf026;');}
.icon-volume-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf027;');}
.icon-volume-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf028;');}
.icon-qrcode{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf029;');}
.icon-barcode{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf02a;');}
.icon-tag{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf02b;');}
.icon-tags{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf02c;');}
.icon-book{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf02d;');}
.icon-bookmark{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf02e;');}
.icon-print{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf02f;');}
.icon-camera{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf030;');}
.icon-font{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf031;');}
.icon-bold{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf032;');}
.icon-italic{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf033;');}
.icon-text-height{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf034;');}
.icon-text-width{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf035;');}
.icon-align-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf036;');}
.icon-align-center{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf037;');}
.icon-align-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf038;');}
.icon-align-justify{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf039;');}
.icon-list{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf03a;');}
.icon-indent-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf03b;');}
.icon-indent-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf03c;');}
.icon-facetime-video{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf03d;');}
.icon-picture{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf03e;');}
.icon-pencil{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf040;');}
.icon-map-marker{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf041;');}
.icon-adjust{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf042;');}
.icon-tint{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf043;');}
.icon-edit{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf044;');}
.icon-share{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf045;');}
.icon-check{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf046;');}
.icon-move{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf047;');}
.icon-step-backward{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf048;');}
.icon-fast-backward{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf049;');}
.icon-backward{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf04a;');}
.icon-play{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf04b;');}
.icon-pause{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf04c;');}
.icon-stop{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf04d;');}
.icon-forward{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf04e;');}
.icon-fast-forward{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf050;');}
.icon-step-forward{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf051;');}
.icon-eject{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf052;');}
.icon-chevron-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf053;');}
.icon-chevron-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf054;');}
.icon-plus-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf055;');}
.icon-minus-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf056;');}
.icon-remove-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf057;');}
.icon-ok-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf058;');}
.icon-question-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf059;');}
.icon-info-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf05a;');}
.icon-screenshot{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf05b;');}
.icon-remove-circle{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf05c;');}
.icon-ok-circle{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf05d;');}
.icon-ban-circle{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf05e;');}
.icon-arrow-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf060;');}
.icon-arrow-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf061;');}
.icon-arrow-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf062;');}
.icon-arrow-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf063;');}
.icon-share-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf064;');}
.icon-mail-forward{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf064;');}
.icon-resize-full{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf065;');}
.icon-resize-small{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf066;');}
.icon-plus{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf067;');}
.icon-minus{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf068;');}
.icon-asterisk{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf069;');}
.icon-exclamation-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf06a;');}
.icon-gift{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf06b;');}
.icon-leaf{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf06c;');}
.icon-fire{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf06d;');}
.icon-eye-open{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf06e;');}
.icon-eye-close{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf070;');}
.icon-warning-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf071;');}
.icon-plane{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf072;');}
.icon-calendar{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf073;');}
.icon-random{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf074;');}
.icon-comment{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf075;');}
.icon-magnet{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf076;');}
.icon-chevron-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf077;');}
.icon-chevron-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf078;');}
.icon-retweet{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf079;');}
.icon-shopping-cart{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf07a;');}
.icon-folder-close{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf07b;');}
.icon-folder-open{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf07c;');}
.icon-resize-vertical{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf07d;');}
.icon-resize-horizontal{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf07e;');}
.icon-bar-chart{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf080;');}
.icon-twitter-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf081;');}
.icon-facebook-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf082;');}
.icon-camera-retro{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf083;');}
.icon-key{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf084;');}
.icon-cogs{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf085;');}
.icon-gears{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf085;');}
.icon-comments{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf086;');}
.icon-thumbs-up-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf087;');}
.icon-thumbs-down-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf088;');}
.icon-star-half{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf089;');}
.icon-heart-empty{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf08a;');}
.icon-signout{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf08b;');}
.icon-linkedin-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf08c;');}
.icon-pushpin{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf08d;');}
.icon-external-link{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf08e;');}
.icon-signin{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf090;');}
.icon-trophy{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf091;');}
.icon-github-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf092;');}
.icon-upload-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf093;');}
.icon-lemon{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf094;');}
.icon-phone{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf095;');}
.icon-check-empty{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf096;');}
.icon-unchecked{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf096;');}
.icon-bookmark-empty{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf097;');}
.icon-phone-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf098;');}
.icon-twitter{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf099;');}
.icon-facebook{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf09a;');}
.icon-github{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf09b;');}
.icon-unlock{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf09c;');}
.icon-credit-card{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf09d;');}
.icon-rss{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf09e;');}
.icon-hdd{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0a0;');}
.icon-bullhorn{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0a1;');}
.icon-bell{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0a2;');}
.icon-certificate{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0a3;');}
.icon-hand-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0a4;');}
.icon-hand-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0a5;');}
.icon-hand-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0a6;');}
.icon-hand-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0a7;');}
.icon-circle-arrow-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0a8;');}
.icon-circle-arrow-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0a9;');}
.icon-circle-arrow-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0aa;');}
.icon-circle-arrow-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0ab;');}
.icon-globe{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0ac;');}
.icon-wrench{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0ad;');}
.icon-tasks{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0ae;');}
.icon-filter{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0b0;');}
.icon-briefcase{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0b1;');}
.icon-fullscreen{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0b2;');}
.icon-group{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0c0;');}
.icon-link{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0c1;');}
.icon-cloud{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0c2;');}
.icon-beaker{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0c3;');}
.icon-cut{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0c4;');}
.icon-copy{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0c5;');}
.icon-paper-clip{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0c6;');}
.icon-paperclip{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0c6;');}
.icon-save{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0c7;');}
.icon-sign-blank{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0c8;');}
.icon-reorder{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0c9;');}
.icon-list-ul{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0ca;');}
.icon-list-ol{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0cb;');}
.icon-strikethrough{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0cc;');}
.icon-underline{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0cd;');}
.icon-table{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0ce;');}
.icon-magic{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0d0;');}
.icon-truck{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0d1;');}
.icon-pinterest{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0d2;');}
.icon-pinterest-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0d3;');}
.icon-google-plus-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0d4;');}
.icon-google-plus{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0d5;');}
.icon-money{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0d6;');}
.icon-caret-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0d7;');}
.icon-caret-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0d8;');}
.icon-caret-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0d9;');}
.icon-caret-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0da;');}
.icon-columns{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0db;');}
.icon-sort{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0dc;');}
.icon-sort-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0dd;');}
.icon-sort-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0de;');}
.icon-envelope{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0e0;');}
.icon-linkedin{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0e1;');}
.icon-undo{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0e2;');}
.icon-rotate-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0e2;');}
.icon-legal{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0e3;');}
.icon-dashboard{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0e4;');}
.icon-comment-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0e5;');}
.icon-comments-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0e6;');}
.icon-bolt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0e7;');}
.icon-sitemap{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0e8;');}
.icon-umbrella{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0e9;');}
.icon-paste{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0ea;');}
.icon-lightbulb{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0eb;');}
.icon-exchange{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0ec;');}
.icon-cloud-download{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0ed;');}
.icon-cloud-upload{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0ee;');}
.icon-user-md{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0f0;');}
.icon-stethoscope{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0f1;');}
.icon-suitcase{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0f2;');}
.icon-bell-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0f3;');}
.icon-coffee{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0f4;');}
.icon-food{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0f5;');}
.icon-file-text-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0f6;');}
.icon-building{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0f7;');}
.icon-hospital{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0f8;');}
.icon-ambulance{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0f9;');}
.icon-medkit{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0fa;');}
.icon-fighter-jet{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0fb;');}
.icon-beer{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0fc;');}
.icon-h-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0fd;');}
.icon-plus-sign-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf0fe;');}
.icon-double-angle-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf100;');}
.icon-double-angle-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf101;');}
.icon-double-angle-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf102;');}
.icon-double-angle-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf103;');}
.icon-angle-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf104;');}
.icon-angle-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf105;');}
.icon-angle-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf106;');}
.icon-angle-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf107;');}
.icon-desktop{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf108;');}
.icon-laptop{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf109;');}
.icon-tablet{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf10a;');}
.icon-mobile-phone{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf10b;');}
.icon-circle-blank{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf10c;');}
.icon-quote-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf10d;');}
.icon-quote-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf10e;');}
.icon-spinner{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf110;');}
.icon-circle{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf111;');}
.icon-reply{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf112;');}
.icon-mail-reply{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf112;');}
.icon-github-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf113;');}
.icon-folder-close-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf114;');}
.icon-folder-open-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf115;');}
.icon-expand-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf116;');}
.icon-collapse-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf117;');}
.icon-smile{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf118;');}
.icon-frown{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf119;');}
.icon-meh{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf11a;');}
.icon-gamepad{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf11b;');}
.icon-keyboard{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf11c;');}
.icon-flag-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf11d;');}
.icon-flag-checkered{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf11e;');}
.icon-terminal{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf120;');}
.icon-code{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf121;');}
.icon-reply-all{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf122;');}
.icon-mail-reply-all{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf122;');}
.icon-star-half-empty{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf123;');}
.icon-star-half-full{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf123;');}
.icon-location-arrow{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf124;');}
.icon-crop{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf125;');}
.icon-code-fork{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf126;');}
.icon-unlink{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf127;');}
.icon-question{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf128;');}
.icon-info{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf129;');}
.icon-exclamation{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf12a;');}
.icon-superscript{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf12b;');}
.icon-subscript{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf12c;');}
.icon-eraser{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf12d;');}
.icon-puzzle-piece{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf12e;');}
.icon-microphone{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf130;');}
.icon-microphone-off{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf131;');}
.icon-shield{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf132;');}
.icon-calendar-empty{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf133;');}
.icon-fire-extinguisher{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf134;');}
.icon-rocket{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf135;');}
.icon-maxcdn{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf136;');}
.icon-chevron-sign-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf137;');}
.icon-chevron-sign-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf138;');}
.icon-chevron-sign-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf139;');}
.icon-chevron-sign-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf13a;');}
.icon-html5{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf13b;');}
.icon-css3{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf13c;');}
.icon-anchor{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf13d;');}
.icon-unlock-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf13e;');}
.icon-bullseye{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf140;');}
.icon-ellipsis-horizontal{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf141;');}
.icon-ellipsis-vertical{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf142;');}
.icon-rss-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf143;');}
.icon-play-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf144;');}
.icon-ticket{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf145;');}
.icon-minus-sign-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf146;');}
.icon-check-minus{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf147;');}
.icon-level-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf148;');}
.icon-level-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf149;');}
.icon-check-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf14a;');}
.icon-edit-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf14b;');}
.icon-external-link-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf14c;');}
.icon-share-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf14d;');}
.icon-compass{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf14e;');}
.icon-collapse{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf150;');}
.icon-collapse-top{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf151;');}
.icon-expand{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf152;');}
.icon-eur{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf153;');}
.icon-euro{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf153;');}
.icon-gbp{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf154;');}
.icon-usd{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf155;');}
.icon-dollar{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf155;');}
.icon-inr{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf156;');}
.icon-rupee{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf156;');}
.icon-jpy{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf157;');}
.icon-yen{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf157;');}
.icon-cny{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf158;');}
.icon-renminbi{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf158;');}
.icon-krw{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf159;');}
.icon-won{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf159;');}
.icon-btc{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf15a;');}
.icon-bitcoin{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf15a;');}
.icon-file{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf15b;');}
.icon-file-text{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf15c;');}
.icon-sort-by-alphabet{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf15d;');}
.icon-sort-by-alphabet-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf15e;');}
.icon-sort-by-attributes{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf160;');}
.icon-sort-by-attributes-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf161;');}
.icon-sort-by-order{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf162;');}
.icon-sort-by-order-alt{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf163;');}
.icon-thumbs-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf164;');}
.icon-thumbs-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf165;');}
.icon-youtube-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf166;');}
.icon-youtube{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf167;');}
.icon-xing{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf168;');}
.icon-xing-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf169;');}
.icon-youtube-play{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf16a;');}
.icon-dropbox{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf16b;');}
.icon-stackexchange{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf16c;');}
.icon-instagram{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf16d;');}
.icon-flickr{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf16e;');}
.icon-adn{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf170;');}
.icon-bitbucket{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf171;');}
.icon-bitbucket-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf172;');}
.icon-tumblr{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf173;');}
.icon-tumblr-sign{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf174;');}
.icon-long-arrow-down{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf175;');}
.icon-long-arrow-up{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf176;');}
.icon-long-arrow-left{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf177;');}
.icon-long-arrow-right{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf178;');}
.icon-apple{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf179;');}
.icon-windows{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf17a;');}
.icon-android{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf17b;');}
.icon-linux{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf17c;');}
.icon-dribbble{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf17d;');}
.icon-skype{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf17e;');}
.icon-foursquare{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf180;');}
.icon-trello{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf181;');}
.icon-female{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf182;');}
.icon-male{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf183;');}
.icon-gittip{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf184;');}
.icon-sun{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf185;');}
.icon-moon{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf186;');}
.icon-archive{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf187;');}
.icon-bug{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf188;');}
.icon-vk{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf189;');}
.icon-weibo{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf18a;');}
.icon-renren{*zoom:expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = '&#xf18b;');}

403
static/css/font-awesome.min.css vendored Executable file
View File

@@ -0,0 +1,403 @@
@font-face{font-family:'FontAwesome';src:url('../font/fontawesome-webfont.eot?v=3.2.1');src:url('../font/fontawesome-webfont.eot?#iefix&v=3.2.1') format('embedded-opentype'),url('../font/fontawesome-webfont.woff?v=3.2.1') format('woff'),url('../font/fontawesome-webfont.ttf?v=3.2.1') format('truetype'),url('../font/fontawesome-webfont.svg#fontawesomeregular?v=3.2.1') format('svg');font-weight:normal;font-style:normal;}[class^="icon-"],[class*=" icon-"]{font-family:FontAwesome;font-weight:normal;font-style:normal;text-decoration:inherit;-webkit-font-smoothing:antialiased;*margin-right:.3em;}
[class^="icon-"]:before,[class*=" icon-"]:before{text-decoration:inherit;display:inline-block;speak:none;}
.icon-large:before{vertical-align:-10%;font-size:1.3333333333333333em;}
a [class^="icon-"],a [class*=" icon-"]{display:inline;}
[class^="icon-"].icon-fixed-width,[class*=" icon-"].icon-fixed-width{display:inline-block;width:1.1428571428571428em;text-align:right;padding-right:0.2857142857142857em;}[class^="icon-"].icon-fixed-width.icon-large,[class*=" icon-"].icon-fixed-width.icon-large{width:1.4285714285714286em;}
.icons-ul{margin-left:2.142857142857143em;list-style-type:none;}.icons-ul>li{position:relative;}
.icons-ul .icon-li{position:absolute;left:-2.142857142857143em;width:2.142857142857143em;text-align:center;line-height:inherit;}
[class^="icon-"].hide,[class*=" icon-"].hide{display:none;}
.icon-muted{color:#eeeeee;}
.icon-light{color:#ffffff;}
.icon-dark{color:#333333;}
.icon-border{border:solid 1px #eeeeee;padding:.2em .25em .15em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;}
.icon-2x{font-size:2em;}.icon-2x.icon-border{border-width:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}
.icon-3x{font-size:3em;}.icon-3x.icon-border{border-width:3px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;}
.icon-4x{font-size:4em;}.icon-4x.icon-border{border-width:4px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;}
.icon-5x{font-size:5em;}.icon-5x.icon-border{border-width:5px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;}
.pull-right{float:right;}
.pull-left{float:left;}
[class^="icon-"].pull-left,[class*=" icon-"].pull-left{margin-right:.3em;}
[class^="icon-"].pull-right,[class*=" icon-"].pull-right{margin-left:.3em;}
[class^="icon-"],[class*=" icon-"]{display:inline;width:auto;height:auto;line-height:normal;vertical-align:baseline;background-image:none;background-position:0% 0%;background-repeat:repeat;margin-top:0;}
.icon-white,.nav-pills>.active>a>[class^="icon-"],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^="icon-"],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^="icon-"],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^="icon-"],.dropdown-submenu:hover>a>[class*=" icon-"]{background-image:none;}
.btn [class^="icon-"].icon-large,.nav [class^="icon-"].icon-large,.btn [class*=" icon-"].icon-large,.nav [class*=" icon-"].icon-large{line-height:.9em;}
.btn [class^="icon-"].icon-spin,.nav [class^="icon-"].icon-spin,.btn [class*=" icon-"].icon-spin,.nav [class*=" icon-"].icon-spin{display:inline-block;}
.nav-tabs [class^="icon-"],.nav-pills [class^="icon-"],.nav-tabs [class*=" icon-"],.nav-pills [class*=" icon-"],.nav-tabs [class^="icon-"].icon-large,.nav-pills [class^="icon-"].icon-large,.nav-tabs [class*=" icon-"].icon-large,.nav-pills [class*=" icon-"].icon-large{line-height:.9em;}
.btn [class^="icon-"].pull-left.icon-2x,.btn [class*=" icon-"].pull-left.icon-2x,.btn [class^="icon-"].pull-right.icon-2x,.btn [class*=" icon-"].pull-right.icon-2x{margin-top:.18em;}
.btn [class^="icon-"].icon-spin.icon-large,.btn [class*=" icon-"].icon-spin.icon-large{line-height:.8em;}
.btn.btn-small [class^="icon-"].pull-left.icon-2x,.btn.btn-small [class*=" icon-"].pull-left.icon-2x,.btn.btn-small [class^="icon-"].pull-right.icon-2x,.btn.btn-small [class*=" icon-"].pull-right.icon-2x{margin-top:.25em;}
.btn.btn-large [class^="icon-"],.btn.btn-large [class*=" icon-"]{margin-top:0;}.btn.btn-large [class^="icon-"].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x,.btn.btn-large [class^="icon-"].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-top:.05em;}
.btn.btn-large [class^="icon-"].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x{margin-right:.2em;}
.btn.btn-large [class^="icon-"].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-left:.2em;}
.nav-list [class^="icon-"],.nav-list [class*=" icon-"]{line-height:inherit;}
.icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:-35%;}.icon-stack [class^="icon-"],.icon-stack [class*=" icon-"]{display:block;text-align:center;position:absolute;width:100%;height:100%;font-size:1em;line-height:inherit;*line-height:2em;}
.icon-stack .icon-stack-base{font-size:2em;*line-height:1em;}
.icon-spin{display:inline-block;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;-webkit-animation:spin 2s infinite linear;animation:spin 2s infinite linear;}
a .icon-stack,a .icon-spin{display:inline-block;text-decoration:none;}
@-moz-keyframes spin{0%{-moz-transform:rotate(0deg);} 100%{-moz-transform:rotate(359deg);}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);} 100%{-webkit-transform:rotate(359deg);}}@-o-keyframes spin{0%{-o-transform:rotate(0deg);} 100%{-o-transform:rotate(359deg);}}@-ms-keyframes spin{0%{-ms-transform:rotate(0deg);} 100%{-ms-transform:rotate(359deg);}}@keyframes spin{0%{transform:rotate(0deg);} 100%{transform:rotate(359deg);}}.icon-rotate-90:before{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);}
.icon-rotate-180:before{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);}
.icon-rotate-270:before{-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);}
.icon-flip-horizontal:before{-webkit-transform:scale(-1, 1);-moz-transform:scale(-1, 1);-ms-transform:scale(-1, 1);-o-transform:scale(-1, 1);transform:scale(-1, 1);}
.icon-flip-vertical:before{-webkit-transform:scale(1, -1);-moz-transform:scale(1, -1);-ms-transform:scale(1, -1);-o-transform:scale(1, -1);transform:scale(1, -1);}
a .icon-rotate-90:before,a .icon-rotate-180:before,a .icon-rotate-270:before,a .icon-flip-horizontal:before,a .icon-flip-vertical:before{display:inline-block;}
.icon-glass:before{content:"\f000";}
.icon-music:before{content:"\f001";}
.icon-search:before{content:"\f002";}
.icon-envelope-alt:before{content:"\f003";}
.icon-heart:before{content:"\f004";}
.icon-star:before{content:"\f005";}
.icon-star-empty:before{content:"\f006";}
.icon-user:before{content:"\f007";}
.icon-film:before{content:"\f008";}
.icon-th-large:before{content:"\f009";}
.icon-th:before{content:"\f00a";}
.icon-th-list:before{content:"\f00b";}
.icon-ok:before{content:"\f00c";}
.icon-remove:before{content:"\f00d";}
.icon-zoom-in:before{content:"\f00e";}
.icon-zoom-out:before{content:"\f010";}
.icon-power-off:before,.icon-off:before{content:"\f011";}
.icon-signal:before{content:"\f012";}
.icon-gear:before,.icon-cog:before{content:"\f013";}
.icon-trash:before{content:"\f014";}
.icon-home:before{content:"\f015";}
.icon-file-alt:before{content:"\f016";}
.icon-time:before{content:"\f017";}
.icon-road:before{content:"\f018";}
.icon-download-alt:before{content:"\f019";}
.icon-download:before{content:"\f01a";}
.icon-upload:before{content:"\f01b";}
.icon-inbox:before{content:"\f01c";}
.icon-play-circle:before{content:"\f01d";}
.icon-rotate-right:before,.icon-repeat:before{content:"\f01e";}
.icon-refresh:before{content:"\f021";}
.icon-list-alt:before{content:"\f022";}
.icon-lock:before{content:"\f023";}
.icon-flag:before{content:"\f024";}
.icon-headphones:before{content:"\f025";}
.icon-volume-off:before{content:"\f026";}
.icon-volume-down:before{content:"\f027";}
.icon-volume-up:before{content:"\f028";}
.icon-qrcode:before{content:"\f029";}
.icon-barcode:before{content:"\f02a";}
.icon-tag:before{content:"\f02b";}
.icon-tags:before{content:"\f02c";}
.icon-book:before{content:"\f02d";}
.icon-bookmark:before{content:"\f02e";}
.icon-print:before{content:"\f02f";}
.icon-camera:before{content:"\f030";}
.icon-font:before{content:"\f031";}
.icon-bold:before{content:"\f032";}
.icon-italic:before{content:"\f033";}
.icon-text-height:before{content:"\f034";}
.icon-text-width:before{content:"\f035";}
.icon-align-left:before{content:"\f036";}
.icon-align-center:before{content:"\f037";}
.icon-align-right:before{content:"\f038";}
.icon-align-justify:before{content:"\f039";}
.icon-list:before{content:"\f03a";}
.icon-indent-left:before{content:"\f03b";}
.icon-indent-right:before{content:"\f03c";}
.icon-facetime-video:before{content:"\f03d";}
.icon-picture:before{content:"\f03e";}
.icon-pencil:before{content:"\f040";}
.icon-map-marker:before{content:"\f041";}
.icon-adjust:before{content:"\f042";}
.icon-tint:before{content:"\f043";}
.icon-edit:before{content:"\f044";}
.icon-share:before{content:"\f045";}
.icon-check:before{content:"\f046";}
.icon-move:before{content:"\f047";}
.icon-step-backward:before{content:"\f048";}
.icon-fast-backward:before{content:"\f049";}
.icon-backward:before{content:"\f04a";}
.icon-play:before{content:"\f04b";}
.icon-pause:before{content:"\f04c";}
.icon-stop:before{content:"\f04d";}
.icon-forward:before{content:"\f04e";}
.icon-fast-forward:before{content:"\f050";}
.icon-step-forward:before{content:"\f051";}
.icon-eject:before{content:"\f052";}
.icon-chevron-left:before{content:"\f053";}
.icon-chevron-right:before{content:"\f054";}
.icon-plus-sign:before{content:"\f055";}
.icon-minus-sign:before{content:"\f056";}
.icon-remove-sign:before{content:"\f057";}
.icon-ok-sign:before{content:"\f058";}
.icon-question-sign:before{content:"\f059";}
.icon-info-sign:before{content:"\f05a";}
.icon-screenshot:before{content:"\f05b";}
.icon-remove-circle:before{content:"\f05c";}
.icon-ok-circle:before{content:"\f05d";}
.icon-ban-circle:before{content:"\f05e";}
.icon-arrow-left:before{content:"\f060";}
.icon-arrow-right:before{content:"\f061";}
.icon-arrow-up:before{content:"\f062";}
.icon-arrow-down:before{content:"\f063";}
.icon-mail-forward:before,.icon-share-alt:before{content:"\f064";}
.icon-resize-full:before{content:"\f065";}
.icon-resize-small:before{content:"\f066";}
.icon-plus:before{content:"\f067";}
.icon-minus:before{content:"\f068";}
.icon-asterisk:before{content:"\f069";}
.icon-exclamation-sign:before{content:"\f06a";}
.icon-gift:before{content:"\f06b";}
.icon-leaf:before{content:"\f06c";}
.icon-fire:before{content:"\f06d";}
.icon-eye-open:before{content:"\f06e";}
.icon-eye-close:before{content:"\f070";}
.icon-warning-sign:before{content:"\f071";}
.icon-plane:before{content:"\f072";}
.icon-calendar:before{content:"\f073";}
.icon-random:before{content:"\f074";}
.icon-comment:before{content:"\f075";}
.icon-magnet:before{content:"\f076";}
.icon-chevron-up:before{content:"\f077";}
.icon-chevron-down:before{content:"\f078";}
.icon-retweet:before{content:"\f079";}
.icon-shopping-cart:before{content:"\f07a";}
.icon-folder-close:before{content:"\f07b";}
.icon-folder-open:before{content:"\f07c";}
.icon-resize-vertical:before{content:"\f07d";}
.icon-resize-horizontal:before{content:"\f07e";}
.icon-bar-chart:before{content:"\f080";}
.icon-twitter-sign:before{content:"\f081";}
.icon-facebook-sign:before{content:"\f082";}
.icon-camera-retro:before{content:"\f083";}
.icon-key:before{content:"\f084";}
.icon-gears:before,.icon-cogs:before{content:"\f085";}
.icon-comments:before{content:"\f086";}
.icon-thumbs-up-alt:before{content:"\f087";}
.icon-thumbs-down-alt:before{content:"\f088";}
.icon-star-half:before{content:"\f089";}
.icon-heart-empty:before{content:"\f08a";}
.icon-signout:before{content:"\f08b";}
.icon-linkedin-sign:before{content:"\f08c";}
.icon-pushpin:before{content:"\f08d";}
.icon-external-link:before{content:"\f08e";}
.icon-signin:before{content:"\f090";}
.icon-trophy:before{content:"\f091";}
.icon-github-sign:before{content:"\f092";}
.icon-upload-alt:before{content:"\f093";}
.icon-lemon:before{content:"\f094";}
.icon-phone:before{content:"\f095";}
.icon-unchecked:before,.icon-check-empty:before{content:"\f096";}
.icon-bookmark-empty:before{content:"\f097";}
.icon-phone-sign:before{content:"\f098";}
.icon-twitter:before{content:"\f099";}
.icon-facebook:before{content:"\f09a";}
.icon-github:before{content:"\f09b";}
.icon-unlock:before{content:"\f09c";}
.icon-credit-card:before{content:"\f09d";}
.icon-rss:before{content:"\f09e";}
.icon-hdd:before{content:"\f0a0";}
.icon-bullhorn:before{content:"\f0a1";}
.icon-bell:before{content:"\f0a2";}
.icon-certificate:before{content:"\f0a3";}
.icon-hand-right:before{content:"\f0a4";}
.icon-hand-left:before{content:"\f0a5";}
.icon-hand-up:before{content:"\f0a6";}
.icon-hand-down:before{content:"\f0a7";}
.icon-circle-arrow-left:before{content:"\f0a8";}
.icon-circle-arrow-right:before{content:"\f0a9";}
.icon-circle-arrow-up:before{content:"\f0aa";}
.icon-circle-arrow-down:before{content:"\f0ab";}
.icon-globe:before{content:"\f0ac";}
.icon-wrench:before{content:"\f0ad";}
.icon-tasks:before{content:"\f0ae";}
.icon-filter:before{content:"\f0b0";}
.icon-briefcase:before{content:"\f0b1";}
.icon-fullscreen:before{content:"\f0b2";}
.icon-group:before{content:"\f0c0";}
.icon-link:before{content:"\f0c1";}
.icon-cloud:before{content:"\f0c2";}
.icon-beaker:before{content:"\f0c3";}
.icon-cut:before{content:"\f0c4";}
.icon-copy:before{content:"\f0c5";}
.icon-paperclip:before,.icon-paper-clip:before{content:"\f0c6";}
.icon-save:before{content:"\f0c7";}
.icon-sign-blank:before{content:"\f0c8";}
.icon-reorder:before{content:"\f0c9";}
.icon-list-ul:before{content:"\f0ca";}
.icon-list-ol:before{content:"\f0cb";}
.icon-strikethrough:before{content:"\f0cc";}
.icon-underline:before{content:"\f0cd";}
.icon-table:before{content:"\f0ce";}
.icon-magic:before{content:"\f0d0";}
.icon-truck:before{content:"\f0d1";}
.icon-pinterest:before{content:"\f0d2";}
.icon-pinterest-sign:before{content:"\f0d3";}
.icon-google-plus-sign:before{content:"\f0d4";}
.icon-google-plus:before{content:"\f0d5";}
.icon-money:before{content:"\f0d6";}
.icon-caret-down:before{content:"\f0d7";}
.icon-caret-up:before{content:"\f0d8";}
.icon-caret-left:before{content:"\f0d9";}
.icon-caret-right:before{content:"\f0da";}
.icon-columns:before{content:"\f0db";}
.icon-sort:before{content:"\f0dc";}
.icon-sort-down:before{content:"\f0dd";}
.icon-sort-up:before{content:"\f0de";}
.icon-envelope:before{content:"\f0e0";}
.icon-linkedin:before{content:"\f0e1";}
.icon-rotate-left:before,.icon-undo:before{content:"\f0e2";}
.icon-legal:before{content:"\f0e3";}
.icon-dashboard:before{content:"\f0e4";}
.icon-comment-alt:before{content:"\f0e5";}
.icon-comments-alt:before{content:"\f0e6";}
.icon-bolt:before{content:"\f0e7";}
.icon-sitemap:before{content:"\f0e8";}
.icon-umbrella:before{content:"\f0e9";}
.icon-paste:before{content:"\f0ea";}
.icon-lightbulb:before{content:"\f0eb";}
.icon-exchange:before{content:"\f0ec";}
.icon-cloud-download:before{content:"\f0ed";}
.icon-cloud-upload:before{content:"\f0ee";}
.icon-user-md:before{content:"\f0f0";}
.icon-stethoscope:before{content:"\f0f1";}
.icon-suitcase:before{content:"\f0f2";}
.icon-bell-alt:before{content:"\f0f3";}
.icon-coffee:before{content:"\f0f4";}
.icon-food:before{content:"\f0f5";}
.icon-file-text-alt:before{content:"\f0f6";}
.icon-building:before{content:"\f0f7";}
.icon-hospital:before{content:"\f0f8";}
.icon-ambulance:before{content:"\f0f9";}
.icon-medkit:before{content:"\f0fa";}
.icon-fighter-jet:before{content:"\f0fb";}
.icon-beer:before{content:"\f0fc";}
.icon-h-sign:before{content:"\f0fd";}
.icon-plus-sign-alt:before{content:"\f0fe";}
.icon-double-angle-left:before{content:"\f100";}
.icon-double-angle-right:before{content:"\f101";}
.icon-double-angle-up:before{content:"\f102";}
.icon-double-angle-down:before{content:"\f103";}
.icon-angle-left:before{content:"\f104";}
.icon-angle-right:before{content:"\f105";}
.icon-angle-up:before{content:"\f106";}
.icon-angle-down:before{content:"\f107";}
.icon-desktop:before{content:"\f108";}
.icon-laptop:before{content:"\f109";}
.icon-tablet:before{content:"\f10a";}
.icon-mobile-phone:before{content:"\f10b";}
.icon-circle-blank:before{content:"\f10c";}
.icon-quote-left:before{content:"\f10d";}
.icon-quote-right:before{content:"\f10e";}
.icon-spinner:before{content:"\f110";}
.icon-circle:before{content:"\f111";}
.icon-mail-reply:before,.icon-reply:before{content:"\f112";}
.icon-github-alt:before{content:"\f113";}
.icon-folder-close-alt:before{content:"\f114";}
.icon-folder-open-alt:before{content:"\f115";}
.icon-expand-alt:before{content:"\f116";}
.icon-collapse-alt:before{content:"\f117";}
.icon-smile:before{content:"\f118";}
.icon-frown:before{content:"\f119";}
.icon-meh:before{content:"\f11a";}
.icon-gamepad:before{content:"\f11b";}
.icon-keyboard:before{content:"\f11c";}
.icon-flag-alt:before{content:"\f11d";}
.icon-flag-checkered:before{content:"\f11e";}
.icon-terminal:before{content:"\f120";}
.icon-code:before{content:"\f121";}
.icon-reply-all:before{content:"\f122";}
.icon-mail-reply-all:before{content:"\f122";}
.icon-star-half-full:before,.icon-star-half-empty:before{content:"\f123";}
.icon-location-arrow:before{content:"\f124";}
.icon-crop:before{content:"\f125";}
.icon-code-fork:before{content:"\f126";}
.icon-unlink:before{content:"\f127";}
.icon-question:before{content:"\f128";}
.icon-info:before{content:"\f129";}
.icon-exclamation:before{content:"\f12a";}
.icon-superscript:before{content:"\f12b";}
.icon-subscript:before{content:"\f12c";}
.icon-eraser:before{content:"\f12d";}
.icon-puzzle-piece:before{content:"\f12e";}
.icon-microphone:before{content:"\f130";}
.icon-microphone-off:before{content:"\f131";}
.icon-shield:before{content:"\f132";}
.icon-calendar-empty:before{content:"\f133";}
.icon-fire-extinguisher:before{content:"\f134";}
.icon-rocket:before{content:"\f135";}
.icon-maxcdn:before{content:"\f136";}
.icon-chevron-sign-left:before{content:"\f137";}
.icon-chevron-sign-right:before{content:"\f138";}
.icon-chevron-sign-up:before{content:"\f139";}
.icon-chevron-sign-down:before{content:"\f13a";}
.icon-html5:before{content:"\f13b";}
.icon-css3:before{content:"\f13c";}
.icon-anchor:before{content:"\f13d";}
.icon-unlock-alt:before{content:"\f13e";}
.icon-bullseye:before{content:"\f140";}
.icon-ellipsis-horizontal:before{content:"\f141";}
.icon-ellipsis-vertical:before{content:"\f142";}
.icon-rss-sign:before{content:"\f143";}
.icon-play-sign:before{content:"\f144";}
.icon-ticket:before{content:"\f145";}
.icon-minus-sign-alt:before{content:"\f146";}
.icon-check-minus:before{content:"\f147";}
.icon-level-up:before{content:"\f148";}
.icon-level-down:before{content:"\f149";}
.icon-check-sign:before{content:"\f14a";}
.icon-edit-sign:before{content:"\f14b";}
.icon-external-link-sign:before{content:"\f14c";}
.icon-share-sign:before{content:"\f14d";}
.icon-compass:before{content:"\f14e";}
.icon-collapse:before{content:"\f150";}
.icon-collapse-top:before{content:"\f151";}
.icon-expand:before{content:"\f152";}
.icon-euro:before,.icon-eur:before{content:"\f153";}
.icon-gbp:before{content:"\f154";}
.icon-dollar:before,.icon-usd:before{content:"\f155";}
.icon-rupee:before,.icon-inr:before{content:"\f156";}
.icon-yen:before,.icon-jpy:before{content:"\f157";}
.icon-renminbi:before,.icon-cny:before{content:"\f158";}
.icon-won:before,.icon-krw:before{content:"\f159";}
.icon-bitcoin:before,.icon-btc:before{content:"\f15a";}
.icon-file:before{content:"\f15b";}
.icon-file-text:before{content:"\f15c";}
.icon-sort-by-alphabet:before{content:"\f15d";}
.icon-sort-by-alphabet-alt:before{content:"\f15e";}
.icon-sort-by-attributes:before{content:"\f160";}
.icon-sort-by-attributes-alt:before{content:"\f161";}
.icon-sort-by-order:before{content:"\f162";}
.icon-sort-by-order-alt:before{content:"\f163";}
.icon-thumbs-up:before{content:"\f164";}
.icon-thumbs-down:before{content:"\f165";}
.icon-youtube-sign:before{content:"\f166";}
.icon-youtube:before{content:"\f167";}
.icon-xing:before{content:"\f168";}
.icon-xing-sign:before{content:"\f169";}
.icon-youtube-play:before{content:"\f16a";}
.icon-dropbox:before{content:"\f16b";}
.icon-stackexchange:before{content:"\f16c";}
.icon-instagram:before{content:"\f16d";}
.icon-flickr:before{content:"\f16e";}
.icon-adn:before{content:"\f170";}
.icon-bitbucket:before{content:"\f171";}
.icon-bitbucket-sign:before{content:"\f172";}
.icon-tumblr:before{content:"\f173";}
.icon-tumblr-sign:before{content:"\f174";}
.icon-long-arrow-down:before{content:"\f175";}
.icon-long-arrow-up:before{content:"\f176";}
.icon-long-arrow-left:before{content:"\f177";}
.icon-long-arrow-right:before{content:"\f178";}
.icon-apple:before{content:"\f179";}
.icon-windows:before{content:"\f17a";}
.icon-android:before{content:"\f17b";}
.icon-linux:before{content:"\f17c";}
.icon-dribbble:before{content:"\f17d";}
.icon-skype:before{content:"\f17e";}
.icon-foursquare:before{content:"\f180";}
.icon-trello:before{content:"\f181";}
.icon-female:before{content:"\f182";}
.icon-male:before{content:"\f183";}
.icon-gittip:before{content:"\f184";}
.icon-sun:before{content:"\f185";}
.icon-moon:before{content:"\f186";}
.icon-archive:before{content:"\f187";}
.icon-bug:before{content:"\f188";}
.icon-vk:before{content:"\f189";}
.icon-weibo:before{content:"\f18a";}
.icon-renren:before{content:"\f18b";}

589
static/css/fullcalendar.css Executable file
View File

@@ -0,0 +1,589 @@
/*!
* FullCalendar v1.6.3 Stylesheet
* Docs & License: http://arshaw.com/fullcalendar/
* (c) 2013 Adam Shaw
*/
.fc {
direction: ltr;
text-align: left;
}
.fc table {
border-collapse: collapse;
border-spacing: 0;
}
html .fc,
.fc table {
font-size: 1em;
}
.fc td,
.fc th {
padding: 0;
vertical-align: top;
}
/* Header
------------------------------------------------------------------------*/
.fc-header td {
white-space: nowrap;
}
.fc-header-left {
width: 25%;
text-align: left;
}
.fc-header-center {
text-align: center;
}
.fc-header-right {
width: 25%;
text-align: right;
}
.fc-header-title {
display: inline-block;
vertical-align: top;
}
.fc-header-title h2 {
margin-top: 0;
white-space: nowrap;
}
.fc .fc-header-space {
padding-left: 10px;
}
.fc-header .fc-button {
margin-bottom: 1em;
vertical-align: top;
}
/* buttons edges butting together */
.fc-header .fc-button {
margin-right: -1px;
}
.fc-header .fc-corner-right, /* non-theme */
.fc-header .ui-corner-right { /* theme */
margin-right: 0; /* back to normal */
}
/* button layering (for border precedence) */
.fc-header .fc-state-hover,
.fc-header .ui-state-hover {
z-index: 2;
}
.fc-header .fc-state-down {
z-index: 3;
}
.fc-header .fc-state-active,
.fc-header .ui-state-active {
z-index: 4;
}
/* Content
------------------------------------------------------------------------*/
.fc-content {
clear: both;
zoom: 1; /* for IE7, gives accurate coordinates for [un]freezeContentHeight */
}
.fc-view {
width: 100%;
overflow: hidden;
}
/* Cell Styles
------------------------------------------------------------------------*/
.fc-widget-header, /* <th>, usually */
.fc-widget-content { /* <td>, usually */
border: 1px solid #ddd;
}
.fc-state-highlight { /* <td> today cell */ /* TODO: add .fc-today to <th> */
background: #fcf8e3;
}
.fc-cell-overlay { /* semi-transparent rectangle while dragging */
background: #bce8f1;
opacity: .3;
filter: alpha(opacity=30); /* for IE */
}
/* Buttons
------------------------------------------------------------------------*/
.fc-button {
position: relative;
display: inline-block;
padding: 0 .6em;
overflow: hidden;
height: 1.9em;
line-height: 1.9em;
white-space: nowrap;
cursor: pointer;
}
.fc-state-default { /* non-theme */
border: 1px solid;
}
.fc-state-default.fc-corner-left { /* non-theme */
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
}
.fc-state-default.fc-corner-right { /* non-theme */
border-top-right-radius: 4px;
border-bottom-right-radius: 4px;
}
/*
Our default prev/next buttons use HTML entities like &lsaquo; &rsaquo; &laquo; &raquo;
and we'll try to make them look good cross-browser.
*/
.fc-text-arrow {
margin: 0 .1em;
font-size: 2em;
font-family: "Courier New", Courier, monospace;
vertical-align: baseline; /* for IE7 */
}
.fc-button-prev .fc-text-arrow,
.fc-button-next .fc-text-arrow { /* for &lsaquo; &rsaquo; */
font-weight: bold;
}
/* icon (for jquery ui) */
.fc-button .fc-icon-wrap {
position: relative;
float: left;
top: 50%;
}
.fc-button .ui-icon {
position: relative;
float: left;
margin-top: -50%;
*margin-top: 0;
*top: -50%;
}
/*
button states
borrowed from twitter bootstrap (http://twitter.github.com/bootstrap/)
*/
.fc-state-default {
background-color: #f5f5f5;
background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
background-repeat: repeat-x;
border-color: #e6e6e6 #e6e6e6 #bfbfbf;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
color: #333;
text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
}
.fc-state-hover,
.fc-state-down,
.fc-state-active,
.fc-state-disabled {
color: #333333;
background-color: #e6e6e6;
}
.fc-state-hover {
color: #333333;
text-decoration: none;
background-position: 0 -15px;
-webkit-transition: background-position 0.1s linear;
-moz-transition: background-position 0.1s linear;
-o-transition: background-position 0.1s linear;
transition: background-position 0.1s linear;
}
.fc-state-down,
.fc-state-active {
background-color: #cccccc;
background-image: none;
outline: 0;
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
}
.fc-state-disabled {
cursor: default;
background-image: none;
opacity: 0.65;
filter: alpha(opacity=65);
box-shadow: none;
}
/* Global Event Styles
------------------------------------------------------------------------*/
.fc-event-container > * {
z-index: 8;
}
.fc-event-container > .ui-draggable-dragging,
.fc-event-container > .ui-resizable-resizing {
z-index: 9;
}
.fc-event {
border: 1px solid #3a87ad; /* default BORDER color */
background-color: #3a87ad; /* default BACKGROUND color */
color: #fff; /* default TEXT color */
font-size: .85em;
cursor: default;
}
a.fc-event {
text-decoration: none;
}
a.fc-event,
.fc-event-draggable {
cursor: pointer;
}
.fc-rtl .fc-event {
text-align: right;
}
.fc-event-inner {
width: 100%;
height: 100%;
overflow: hidden;
}
.fc-event-time,
.fc-event-title {
padding: 0 1px;
}
.fc .ui-resizable-handle {
display: block;
position: absolute;
z-index: 99999;
overflow: hidden; /* hacky spaces (IE6/7) */
font-size: 300%; /* */
line-height: 50%; /* */
}
/* Horizontal Events
------------------------------------------------------------------------*/
.fc-event-hori {
border-width: 1px 0;
margin-bottom: 1px;
}
.fc-ltr .fc-event-hori.fc-event-start,
.fc-rtl .fc-event-hori.fc-event-end {
border-left-width: 1px;
border-top-left-radius: 3px;
border-bottom-left-radius: 3px;
}
.fc-ltr .fc-event-hori.fc-event-end,
.fc-rtl .fc-event-hori.fc-event-start {
border-right-width: 1px;
border-top-right-radius: 3px;
border-bottom-right-radius: 3px;
}
/* resizable */
.fc-event-hori .ui-resizable-e {
top: 0 !important; /* importants override pre jquery ui 1.7 styles */
right: -3px !important;
width: 7px !important;
height: 100% !important;
cursor: e-resize;
}
.fc-event-hori .ui-resizable-w {
top: 0 !important;
left: -3px !important;
width: 7px !important;
height: 100% !important;
cursor: w-resize;
}
.fc-event-hori .ui-resizable-handle {
_padding-bottom: 14px; /* IE6 had 0 height */
}
/* Reusable Separate-border Table
------------------------------------------------------------*/
table.fc-border-separate {
border-collapse: separate;
}
.fc-border-separate th,
.fc-border-separate td {
border-width: 1px 0 0 1px;
}
.fc-border-separate th.fc-last,
.fc-border-separate td.fc-last {
border-right-width: 1px;
}
.fc-border-separate tr.fc-last th,
.fc-border-separate tr.fc-last td {
border-bottom-width: 1px;
}
.fc-border-separate tbody tr.fc-first td,
.fc-border-separate tbody tr.fc-first th {
border-top-width: 0;
}
/* Month View, Basic Week View, Basic Day View
------------------------------------------------------------------------*/
.fc-grid th {
text-align: center;
}
.fc .fc-week-number {
width: 22px;
text-align: center;
}
.fc .fc-week-number div {
padding: 0 2px;
}
.fc-grid .fc-day-number {
float: right;
padding: 0 2px;
}
.fc-grid .fc-other-month .fc-day-number {
opacity: 0.3;
filter: alpha(opacity=30); /* for IE */
/* opacity with small font can sometimes look too faded
might want to set the 'color' property instead
making day-numbers bold also fixes the problem */
}
.fc-grid .fc-day-content {
clear: both;
padding: 2px 2px 1px; /* distance between events and day edges */
}
/* event styles */
.fc-grid .fc-event-time {
font-weight: bold;
}
/* right-to-left */
.fc-rtl .fc-grid .fc-day-number {
float: left;
}
.fc-rtl .fc-grid .fc-event-time {
float: right;
}
/* Agenda Week View, Agenda Day View
------------------------------------------------------------------------*/
.fc-agenda table {
border-collapse: separate;
}
.fc-agenda-days th {
text-align: center;
}
.fc-agenda .fc-agenda-axis {
width: 50px;
padding: 0 4px;
vertical-align: middle;
text-align: right;
white-space: nowrap;
font-weight: normal;
}
.fc-agenda .fc-week-number {
font-weight: bold;
}
.fc-agenda .fc-day-content {
padding: 2px 2px 1px;
}
/* make axis border take precedence */
.fc-agenda-days .fc-agenda-axis {
border-right-width: 1px;
}
.fc-agenda-days .fc-col0 {
border-left-width: 0;
}
/* all-day area */
.fc-agenda-allday th {
border-width: 0 1px;
}
.fc-agenda-allday .fc-day-content {
min-height: 34px; /* TODO: doesnt work well in quirksmode */
_height: 34px;
}
/* divider (between all-day and slots) */
.fc-agenda-divider-inner {
height: 2px;
overflow: hidden;
}
.fc-widget-header .fc-agenda-divider-inner {
background: #eee;
}
/* slot rows */
.fc-agenda-slots th {
border-width: 1px 1px 0;
}
.fc-agenda-slots td {
border-width: 1px 0 0;
background: none;
}
.fc-agenda-slots td div {
height: 20px;
}
.fc-agenda-slots tr.fc-slot0 th,
.fc-agenda-slots tr.fc-slot0 td {
border-top-width: 0;
}
.fc-agenda-slots tr.fc-minor th,
.fc-agenda-slots tr.fc-minor td {
border-top-style: dotted;
}
.fc-agenda-slots tr.fc-minor th.ui-widget-header {
*border-top-style: solid; /* doesn't work with background in IE6/7 */
}
/* Vertical Events
------------------------------------------------------------------------*/
.fc-event-vert {
border-width: 0 1px;
}
.fc-event-vert.fc-event-start {
border-top-width: 1px;
border-top-left-radius: 3px;
border-top-right-radius: 3px;
}
.fc-event-vert.fc-event-end {
border-bottom-width: 1px;
border-bottom-left-radius: 3px;
border-bottom-right-radius: 3px;
}
.fc-event-vert .fc-event-time {
white-space: nowrap;
font-size: 10px;
}
.fc-event-vert .fc-event-inner {
position: relative;
z-index: 2;
}
.fc-event-vert .fc-event-bg { /* makes the event lighter w/ a semi-transparent overlay */
position: absolute;
z-index: 1;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: #fff;
opacity: .25;
filter: alpha(opacity=25);
}
.fc .ui-draggable-dragging .fc-event-bg, /* TODO: something nicer like .fc-opacity */
.fc-select-helper .fc-event-bg {
display: none\9; /* for IE6/7/8. nested opacity filters while dragging don't work */
}
/* resizable */
.fc-event-vert .ui-resizable-s {
bottom: 0 !important; /* importants override pre jquery ui 1.7 styles */
width: 100% !important;
height: 8px !important;
overflow: hidden !important;
line-height: 8px !important;
font-size: 11px !important;
font-family: monospace;
text-align: center;
cursor: s-resize;
}
.fc-agenda .ui-resizable-resizing { /* TODO: better selector */
_overflow: hidden;
}

View File

@@ -0,0 +1,32 @@
/*!
* FullCalendar v1.6.3 Print Stylesheet
* Docs & License: http://arshaw.com/fullcalendar/
* (c) 2013 Adam Shaw
*/
/*
* Include this stylesheet on your page to get a more printer-friendly calendar.
* When including this stylesheet, use the media='print' attribute of the <link> tag.
* Make sure to include this stylesheet IN ADDITION to the regular fullcalendar.css.
*/
/* Events
-----------------------------------------------------*/
.fc-event {
background: #fff !important;
color: #000 !important;
}
/* for vertical events */
.fc-event-bg {
display: none !important;
}
.fc-event .ui-resizable-handle {
display: none !important;
}

BIN
static/css/images/border.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 112 B

BIN
static/css/images/border1.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

BIN
static/css/images/border2.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 B

BIN
static/css/images/controls.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 111 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 215 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 217 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 111 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 214 B

BIN
static/css/images/loading.gif Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 157 B

BIN
static/css/images/overlay.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 B

BIN
static/css/img/alpha.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

BIN
static/css/img/hue.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

BIN
static/css/img/saturation.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

6
static/css/jquery-ui-1.10.3.custom.min.css vendored Executable file
View File

@@ -0,0 +1,6 @@
/*! jQuery UI - v1.10.3 - 2013-07-07
* http://jqueryui.com
* Includes: jquery.ui.core.css, jquery.ui.resizable.css, jquery.ui.selectable.css, jquery.ui.slider.css
* Copyright 2013 jQuery Foundation and other contributors Licensed MIT */
.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:.1px;display:block}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted #000}.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle,.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}

6
static/css/jquery-ui-1.10.3.full.min.css vendored Executable file

File diff suppressed because one or more lines are too long

101
static/css/jquery.gritter.css Executable file
View File

@@ -0,0 +1,101 @@
/* the norm */
#gritter-notice-wrapper {
position:fixed;
top:20px;
right:20px;
width:301px;
z-index:9999;
}
#gritter-notice-wrapper.top-left {
left: 20px;
right: auto;
}
#gritter-notice-wrapper.bottom-right {
top: auto;
left: auto;
bottom: 20px;
right: 20px;
}
#gritter-notice-wrapper.bottom-left {
top: auto;
right: auto;
bottom: 20px;
left: 20px;
}
.gritter-item-wrapper {
position:relative;
margin:0 0 10px 0;
background:url('../img/debug/ie-spacer.gif'); /* ie7/8 fix */
}
.gritter-top {
background:url(../img/debug/gritter.png) no-repeat left -30px;
height:10px;
}
.hover .gritter-top {
background-position:right -30px;
}
.gritter-bottom {
background:url(../img/debug/gritter.png) no-repeat left bottom;
height:8px;
margin:0;
}
.hover .gritter-bottom {
background-position: bottom right;
}
.gritter-item {
display:block;
background:url(../img/debug/gritter.png) no-repeat left -40px;
color:#eee;
padding:2px 11px 8px 11px;
font-size: 11px;
font-family:verdana;
}
.hover .gritter-item {
background-position:right -40px;
}
.gritter-item p {
padding:0;
margin:0;
word-wrap:break-word;
}
.gritter-close {
display:none;
position:absolute;
top:5px;
left:3px;
background:url(../img/debug/gritter.png) no-repeat left top;
cursor:pointer;
width:30px;
height:30px;
}
.gritter-title {
font-size:14px;
font-weight:bold;
padding:0 0 7px 0;
display:block;
text-shadow:1px 1px 0 #000; /* Not supported by IE :( */
}
.gritter-image {
width:48px;
height:48px;
float:left;
}
.gritter-with-image,
.gritter-without-image {
padding:0;
}
.gritter-with-image {
width:220px;
float:right;
}
/* for the light (white) version of the gritter notice */
.gritter-light .gritter-item,
.gritter-light .gritter-bottom,
.gritter-light .gritter-top,
.gritter-light .gritter-close {
background-image: url(../img/debug/gritter-light.png);
color: #222;
}
.gritter-light .gritter-title {
text-shadow: none;
}

149
static/css/less/ace-nav.less Executable file
View File

@@ -0,0 +1,149 @@
.navbar {
margin-bottom:0;
//position:relative;
//z-index:@zindexFixedNavbar+1;
}
.navbar {
padding-left:0; padding-right:0;
margin-left:0; margin-right:0;
.navbar-inner {
border:none;
.box-shadow(none);
.border-radius(0);
margin:0;
padding-left:0; padding-right:0;
min-height:@navbar-mh;
position:relative;
background:@navbar-bg;
}
.navbar-text, .navbar-link {
color:@navbar-text-color;
}
.brand {
color:@navbar-text-color;
font-size:@brand-size;
text-shadow:none;
}
.nav {
> li {
> a {
& , &:hover , &:focus {
font-size:13px;
text-shadow:none;
color:@navbar-text-color;
}
}
}//li
}//.nav
}
/* ace-nav */
.ace-nav {
height:100%;
> li {
line-height:@navbar-mh;
max-height:@navbar-mh;
background:@ace-nav-default;
border-left:1px solid #DDD;
padding:0;
position:relative;
&:first-child {
border-left:none;
}
> a {
position:relative;
color:#EEE;
display:block;
height:100%;
padding:0 8px !important;
background-color:transparent;
> [class*="icon-"] {
font-size:16px;
color:#EEE;
display:inline-block;
width:20px;
text-align:center;
}
> .badge {
position:relative;
top:-4px; left:2px;
padding-right:5px; padding-left:5px;
}
}
/* different colors */
&.grey { background:@ace-nav-grey; }
&.purple { background:@ace-nav-purple; }
&.green { background:@ace-nav-green; }
&.light-blue { background:@ace-nav-light-blue; }
&.light-blue2 { background:@ace-nav-light-blue2; }
&.red { background:@ace-nav-red; }
&.light-green { background:@ace-nav-light-green; }
&.light-purple { background:@ace-nav-light-purple; }
&.light-orange { background:@ace-nav-light-orange; }
&.light-pink { background:@ace-nav-light-pink; }
&.dark { background:@ace-nav-dark; }
&.white-opaque { background:@ace-nav-white-opaque;}
&.dark-opaque { background:@ace-nav-dark-opaque;}
//no border
&.no-border { border:none;}
//margins
.marginX (@index) when (@index > 0) {
&.margin-@{index} { margin-left:unit(@index,px); }
.marginX(@index - 1);
}
.marginX(4);
///
.dropdown-menu {
z-index:@zindexFixedNavbar+1;
}
}
.nav-user-photo {
margin:-4px 8px 0 0;
border-radius:24px;
border:2px solid #FFF;
max-width:36px !important;
}
li:last-child a [class^="icon-"] {/* the arrow indicating "See more" on each dropdown , and the icons of user menu */
display:inline-block;
width:1.25em;
text-align:center;
}
}

64
static/css/less/ace.less Executable file
View File

@@ -0,0 +1,64 @@
@import "bootstrap/variables.less";
@import "variables.less";//there are also some variables on top of some other less files
@import "mixins-css3.less";
@import "mixins.less";
@import "general.less";//includes general basic styling of page
@import "basic.less";//includes styling of some elements such as pagination, etc
@import "utility.less";//includes some utility classes such as headers, colors, font sizing, etc
@import "ace-nav.less";//ace top navigation
@import "breadcrumbs.less";
@import "searchbox.less";
@import "sidebar.less";
@import "buttons.less";
@import "label-badge.less";
@import "dropdown.less";
@import "form.less";
@import "tab-accordion.less";
@import "tables.less";
@import "widget.less";
@import "tooltip-popover.less";
@import "progressbar.less";
@import "infobox.less";
@import "page.pricing.less";
@import "page.login.less";
@import "page.invoice.less";
@import "page.error.less";
@import "gallery.less";
@import "items.less";
@import "page.profile.less";
@import "page.inbox.less";
@import "page.timeline.less";
@import "thirdparty-calendar.less";
@import "thirdparty-chosen.less";
@import "thirdparty-select2.less";
@import "thirdparty-colorbox.less";
@import "thirdparty-fuelux.less";//fuelux spinner, tree & wizard
@import "thirdparty-gritter.less";
@import "thirdparty-wysiwyg.less";
@import "thirdparty-editable.less";
@import "thirdparty-slider.less";//jquery ui slider
@import "thirdparty-jquery-ui.less";//other jquery ui widgets & elements
@import "thirdparty-jqgrid.less";//jqGrid plugin
@import "thirdparty-nestable.less";//nestable list
@import "thirdparty-dropzone.less";//dropzone.js
@import "icon-animated.less";
@import "other.less";//
@import "ext/bootstrap-tag.less";//less files provided by the thirdparty plugin, sometimes modified
@import "rtl.less";//comment this if you don't want RTL support

185
static/css/less/basic.less Executable file
View File

@@ -0,0 +1,185 @@
//some elements variables
@blockquote-border:#E5EAF1;
@modal-footer-border:#E4E9EE;
@modal-footer-bg:#EFF3F8;
@pagination-color:#2283C5;
@pagination-border:#E0E8EB;
@pagination-bg:#FAFAFA;
@pagination-bg-hover:#EAEFF2;
@pagination-bg-disabled:#F9F9F9;
@pagination-border-disabled:#D9D9D9;
@pagination-color-active:#FFF;
@pagination-bg-active:#6FAED9;
@pagination-border-active:#6FAED9;
/* elements */
[class*=" icon-"] , [class^="icon-"] {
display:inline-block;
text-align:center;
}
a{
&:focus, &:active {
text-decoration:none;
}
}
/* header sizes */
.h-size(@index) when (@index > 0){
@h-tag : ~`"h@{index}"`;
@{h-tag} {
@tmpvar : ~`"h@{index}-size"`;//get the variable h1-size, h2-size , etc...
font-size:unit(@@tmpvar , px);
font-weight:normal;
&.smaller {
font-size:unit((@@tmpvar - 1) , px);
}
&.bigger {
font-size:unit((@@tmpvar + 1) , px);
}
&.block {
margin-bottom:16px;
}
}
}
.h-size(1);
.h-size(2);
.h-size(3);
.h-size(4);
.h-size(5);
.h-size(6);
/* some list styling */
li > ul.margin,
li > ol.margin
{
margin-left:18px;
}
.unstyled , .inline {
> li > [class*="icon-"]:first-child {
width:20px;
text-align:center;
}
}
.spaced > li {
margin-top:9px;
margin-bottom:9px;
}
.spaced2 > li {
margin-top:15px;
margin-bottom:15px;
}
li.divider {
margin-top:3px;
margin-bottom:3px;
height:0; font-size:0;
.spaced > & {
margin-top:5px;
margin-bottom:5px;
}
.spaced2 > & {
margin-top:8px;
margin-bottom:8px;
}
&:before {
content:"";
display:inline-block;
}
}
/* little elements */
blockquote{
&, &.pull-right {
border-color:@blockquote-border;
}
}
/* modals */
.modal {
border-radius:0;
}
.modal-footer {
border-top-color:@modal-footer-border;
.box-shadow(none);
background-color:@modal-footer-bg;
}
.modal-header .close {
font-size:32px;
}
/* wells */
.well {
border-radius:0;
}
.well h1, .well h2, .well h3, .well h4, .well h5, .well h6 {
margin-top:0;
}
.well h1, .well h2, .well h3 {
line-height:36px;
}
/* alerts */
.alert {
font-size:14px;
border-radius:0;
.close {
font-size:16px;
}
}
.alert-block p + p {
margin-top:10px;
}
/* pagination */
.pagination ul > li > a , .pager > li > a,
.pagination ul > li > span , .pager > li > span
{
border-width:1px;
border-radius:0 !important;
}
.pagination ul > li > a, .pager > li > a
{
color:@pagination-color;
background-color:@pagination-bg;
margin:0 -1px 0 0;
border-color:@pagination-border;
}
.pagination ul > li > a:hover , .pager > li > a:hover {
background-color:@pagination-bg-hover;
}
.pagination ul > li.disabled > a , .pagination ul > li.disabled > a:hover ,
.pager > li.disabled > a , .pager > li.disabled > a:hover {
background-color:@pagination-bg-disabled;
border-color:@pagination-border-disabled;
}
.pagination ul > li.active > a, .pagination ul > li.active > a:hover {
background-color:@pagination-bg-active;
border-color:@pagination-border-active;
color:@pagination-color-active;
text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);
}

View File

@@ -0,0 +1,301 @@
//
// Variables
// --------------------------------------------------
// Global values
// --------------------------------------------------
// Grays
// -------------------------
@black: #000;
@grayDarker: #222;
@grayDark: #333;
@gray: #555;
@grayLight: #999;
@grayLighter: #eee;
@white: #fff;
// Accent colors
// -------------------------
@blue: #049cdb;
@blueDark: #0064cd;
@green: #46a546;
@red: #9d261d;
@yellow: #ffc40d;
@orange: #f89406;
@pink: #c3325f;
@purple: #7a43b6;
// Scaffolding
// -------------------------
@bodyBackground: @white;
@textColor: @grayDark;
// Links
// -------------------------
@linkColor: #08c;
@linkColorHover: darken(@linkColor, 15%);
// Typography
// -------------------------
@sansFontFamily: "Helvetica Neue", Helvetica, Arial, sans-serif;
@serifFontFamily: Georgia, "Times New Roman", Times, serif;
@monoFontFamily: Monaco, Menlo, Consolas, "Courier New", monospace;
@baseFontSize: 14px;
@baseFontFamily: @sansFontFamily;
@baseLineHeight: 20px;
@altFontFamily: @serifFontFamily;
@headingsFontFamily: inherit; // empty to use BS default, @baseFontFamily
@headingsFontWeight: bold; // instead of browser default, bold
@headingsColor: inherit; // empty to use BS default, @textColor
// Component sizing
// -------------------------
// Based on 14px font-size and 20px line-height
@fontSizeLarge: @baseFontSize * 1.25; // ~18px
@fontSizeSmall: @baseFontSize * 0.85; // ~12px
@fontSizeMini: @baseFontSize * 0.75; // ~11px
@paddingLarge: 11px 19px; // 44px
@paddingSmall: 2px 10px; // 26px
@paddingMini: 0 6px; // 22px
@baseBorderRadius: 4px;
@borderRadiusLarge: 6px;
@borderRadiusSmall: 3px;
// Tables
// -------------------------
@tableBackground: transparent; // overall background-color
@tableBackgroundAccent: #f9f9f9; // for striping
@tableBackgroundHover: #f5f5f5; // for hover
@tableBorder: #ddd; // table and cell border
// Buttons
// -------------------------
@btnBackground: @white;
@btnBackgroundHighlight: darken(@white, 10%);
@btnBorder: #ccc;
@btnPrimaryBackground: @linkColor;
@btnPrimaryBackgroundHighlight: spin(@btnPrimaryBackground, 20%);
@btnInfoBackground: #5bc0de;
@btnInfoBackgroundHighlight: #2f96b4;
@btnSuccessBackground: #62c462;
@btnSuccessBackgroundHighlight: #51a351;
@btnWarningBackground: lighten(@orange, 15%);
@btnWarningBackgroundHighlight: @orange;
@btnDangerBackground: #ee5f5b;
@btnDangerBackgroundHighlight: #bd362f;
@btnInverseBackground: #444;
@btnInverseBackgroundHighlight: @grayDarker;
// Forms
// -------------------------
@inputBackground: @white;
@inputBorder: #ccc;
@inputBorderRadius: @baseBorderRadius;
@inputDisabledBackground: @grayLighter;
@formActionsBackground: #f5f5f5;
@inputHeight: @baseLineHeight + 10px; // base line-height + 8px vertical padding + 2px top/bottom border
// Dropdowns
// -------------------------
@dropdownBackground: @white;
@dropdownBorder: rgba(0,0,0,.2);
@dropdownDividerTop: #e5e5e5;
@dropdownDividerBottom: @white;
@dropdownLinkColor: @grayDark;
@dropdownLinkColorHover: @white;
@dropdownLinkColorActive: @white;
@dropdownLinkBackgroundActive: @linkColor;
@dropdownLinkBackgroundHover: @dropdownLinkBackgroundActive;
// COMPONENT VARIABLES
// --------------------------------------------------
// Z-index master list
// -------------------------
// Used for a bird's eye view of components dependent on the z-axis
// Try to avoid customizing these :)
@zindexDropdown: 1000;
@zindexPopover: 1010;
@zindexTooltip: 1030;
@zindexFixedNavbar: 1030;
@zindexModalBackdrop: 1040;
@zindexModal: 1050;
// Sprite icons path
// -------------------------
@iconSpritePath: "../img/glyphicons-halflings.png";
@iconWhiteSpritePath: "../img/glyphicons-halflings-white.png";
// Input placeholder text color
// -------------------------
@placeholderText: @grayLight;
// Hr border color
// -------------------------
@hrBorder: @grayLighter;
// Horizontal forms & lists
// -------------------------
@horizontalComponentOffset: 180px;
// Wells
// -------------------------
@wellBackground: #f5f5f5;
// Navbar
// -------------------------
@navbarCollapseWidth: 979px;
@navbarCollapseDesktopWidth: @navbarCollapseWidth + 1;
@navbarHeight: 40px;
@navbarBackgroundHighlight: #ffffff;
@navbarBackground: darken(@navbarBackgroundHighlight, 5%);
@navbarBorder: darken(@navbarBackground, 12%);
@navbarText: #777;
@navbarLinkColor: #777;
@navbarLinkColorHover: @grayDark;
@navbarLinkColorActive: @gray;
@navbarLinkBackgroundHover: transparent;
@navbarLinkBackgroundActive: darken(@navbarBackground, 5%);
@navbarBrandColor: @navbarLinkColor;
// Inverted navbar
@navbarInverseBackground: #111111;
@navbarInverseBackgroundHighlight: #222222;
@navbarInverseBorder: #252525;
@navbarInverseText: @grayLight;
@navbarInverseLinkColor: @grayLight;
@navbarInverseLinkColorHover: @white;
@navbarInverseLinkColorActive: @navbarInverseLinkColorHover;
@navbarInverseLinkBackgroundHover: transparent;
@navbarInverseLinkBackgroundActive: @navbarInverseBackground;
@navbarInverseSearchBackground: lighten(@navbarInverseBackground, 25%);
@navbarInverseSearchBackgroundFocus: @white;
@navbarInverseSearchBorder: @navbarInverseBackground;
@navbarInverseSearchPlaceholderColor: #ccc;
@navbarInverseBrandColor: @navbarInverseLinkColor;
// Pagination
// -------------------------
@paginationBackground: #fff;
@paginationBorder: #ddd;
@paginationActiveBackground: #f5f5f5;
// Hero unit
// -------------------------
@heroUnitBackground: @grayLighter;
@heroUnitHeadingColor: inherit;
@heroUnitLeadColor: inherit;
// Form states and alerts
// -------------------------
@warningText: #c09853;
@warningBackground: #fcf8e3;
@warningBorder: darken(spin(@warningBackground, -10), 3%);
@errorText: #b94a48;
@errorBackground: #f2dede;
@errorBorder: darken(spin(@errorBackground, -10), 3%);
@successText: #468847;
@successBackground: #dff0d8;
@successBorder: darken(spin(@successBackground, -10), 5%);
@infoText: #3a87ad;
@infoBackground: #d9edf7;
@infoBorder: darken(spin(@infoBackground, -10), 7%);
// Tooltips and popovers
// -------------------------
@tooltipColor: #fff;
@tooltipBackground: #000;
@tooltipArrowWidth: 5px;
@tooltipArrowColor: @tooltipBackground;
@popoverBackground: #fff;
@popoverArrowWidth: 10px;
@popoverArrowColor: #fff;
@popoverTitleBackground: darken(@popoverBackground, 3%);
// Special enhancement for popovers
@popoverArrowOuterWidth: @popoverArrowWidth + 1;
@popoverArrowOuterColor: rgba(0,0,0,.25);
// GRID
// --------------------------------------------------
// Default 940px grid
// -------------------------
@gridColumns: 12;
@gridColumnWidth: 60px;
@gridGutterWidth: 20px;
@gridRowWidth: (@gridColumns * @gridColumnWidth) + (@gridGutterWidth * (@gridColumns - 1));
// 1200px min
@gridColumnWidth1200: 70px;
@gridGutterWidth1200: 30px;
@gridRowWidth1200: (@gridColumns * @gridColumnWidth1200) + (@gridGutterWidth1200 * (@gridColumns - 1));
// 768px-979px
@gridColumnWidth768: 42px;
@gridGutterWidth768: 20px;
@gridRowWidth768: (@gridColumns * @gridColumnWidth768) + (@gridGutterWidth768 * (@gridColumns - 1));
// Fluid grid
// -------------------------
@fluidGridColumnWidth: percentage(@gridColumnWidth/@gridRowWidth);
@fluidGridGutterWidth: percentage(@gridGutterWidth/@gridRowWidth);
// 1200px min
@fluidGridColumnWidth1200: percentage(@gridColumnWidth1200/@gridRowWidth1200);
@fluidGridGutterWidth1200: percentage(@gridGutterWidth1200/@gridRowWidth1200);
// 768px-979px
@fluidGridColumnWidth768: percentage(@gridColumnWidth768/@gridRowWidth768);
@fluidGridGutterWidth768: percentage(@gridGutterWidth768/@gridRowWidth768);

View File

@@ -0,0 +1,82 @@
//some breadcrumbs variables
@breadcrumb-bg:#F5F5F5;
@breadcrumb-border:#E5E5E5;
@breadcrumb-text-color:#555;
@breadcrumb-link-color:#4C8FBD;
@breadcrumb-arrow-color:#B2B6BF;
/* breadcrumbs and searchbox */
.breadcrumbs {
position:relative;
border-bottom:1px solid @breadcrumb-border;
background-color:@breadcrumb-bg;
min-height:@breadcrumb-height;
line-height:(@breadcrumb-height - 1);
padding:0 12px 0 0;
display:block;
&.fixed , &.breadcrumbs-fixed{
position:fixed;
right:0;
left:(@sidebar-width + 1);
top:@navbar-mh;
z-index:@zindexFixedNavbar - 2;
}
}
.breadcrumb {
background-color:transparent;
display:inline-block;
line-height:24px;
margin:0 22px 0 12px; padding:0;
font-size:13px;
color:#333;
border-radius:0;
> li {
& , &.active {
color:@breadcrumb-text-color;
}
> .divider {
padding:0 4px;
}
> a {
display:inline-block;
padding:0 4px;
color:@breadcrumb-link-color;
}
}
.home-icon {
margin-left:4px; margin-right:2px;
font-size:20px;
position:relative; top:2px;
}
.arrow-icon {
height:22px;
padding:0;
margin:0;
position:relative; top:1px;
font-size:14px;
color:@breadcrumb-arrow-color;
}
}

592
static/css/less/buttons.less Executable file
View File

@@ -0,0 +1,592 @@
/** buttons */
.btn {
display:inline-block;
color:#FFF !important;
text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25) !important;
background-image:none !important;
border:5px solid;
border-radius:0;
box-shadow:none !important;
.transition(~"all ease .15s");
cursor:pointer;
vertical-align:middle;
margin:0;
position:relative;
padding:0 12px 1px;
line-height:32px;
font-size:14px;
}
.btn-large {
padding:0 14px 1px;
line-height:38px;
border-width:6px;
font-size:16px;
}
.btn-small {
padding:0 8px;
line-height:24px;
border-width:4px;
font-size:13px;
}
.btn-mini {
padding:0 5px;
line-height:22px;
border-width:2px;
font-size:12px;
}
.btn-minier {
padding:0 4px;
line-height:18px;
border-width:1px;
font-size:11px;
}
button.btn:active {
top:1px; left:1px;
}
//button color
.btn-color(@color1, @color2) {
background-color:@color1 !important;
border-color:@color1;
&:hover {
background-color:@color2 !important;
}
&.no-border:hover {
border-color:@color2;
}
&.no-hover:hover {
background-color:@color1 !important;
}
&.active {
background-color: mix(@color1,@color2) !important;
border-color: darken(mix(@color1,@color2),6%);
}
&.no-border.active {
background-color: darken(mix(@color1,@color2),3%) !important;
border-color: darken(mix(@color1,@color2),3%);
}
&.disabled, &[disabled] {
background-color:@color1 !important;
}
}
.btn-color(@color-name) {
@color1-name : ~`"btn-@{color-name}"`;
@color2-name : ~`"btn-@{color-name}-hover"`;
.btn-color(@@color1-name, @@color2-name);
}
.btn , .btn-default {
.btn-color(~"default");
}
.btn-primary {
.btn-color(~"primary");
}
.btn-info {
.btn-color(~"info");
}
.btn-success {
.btn-color(~"success");
}
.btn-warning {
.btn-color(~"warning");
}
.btn-danger {
.btn-color(~"danger");
}
.btn-inverse {
.btn-color(~"inverse");
}
.btn-pink {
.btn-color(~"pink");
}
.btn-purple {
.btn-color(~"purple");
}
.btn-grey {
.btn-color(~"grey");
}
.btn-yellow {
.btn-color(~"yellow");
color:@btn-yellow-color !important;
text-shadow:0 -1px 0 rgba(255, 255, 255, 0.4) !important;
}
.btn-light {
.btn-color(~"light");
color:@btn-light-color !important;
text-shadow:0 -1px 0 rgba(250, 250, 250, 0.25) !important;
}
.btn-light.btn-mini:after {
left:-2px; right:-2px; top:-2px; bottom:-2px;
}
.btn-light.btn-small:after {
left:-4px; right:-4px; top:-4px; bottom:-4px;
}
.btn-light.btn-large:after {
left:-6px; right:-6px; top:-6px; bottom:-6px;
}
.btn.disabled, .btn[disabled] {
&.active, &:focus, &:active {
outline:none;
}
&:active {
top:0; left:0;
}
}
/* active buttons */
.btn.active {
color:@btn-active-color;
&:after {
display:inline-block;
content:"";
position:absolute;
border-bottom:1px solid @btn-active-color;
left:-4px; right:-4px; bottom:-4px;
}
&.btn-small:after {
left:-3px; right:-3px; bottom:-3px;
border-bottom-width:1px;
}
&.btn-large:after {
left:-5px; right:-5px; bottom:-5px;
border-bottom-width:1px;
}
&.btn-mini:after , &.btn-minier:after {
left:-1px; right:-1px; bottom:-1px;
border-bottom-width:1px;
}
&.btn-yellow:after {
border-bottom-color:@btn-yellow-active-border;
}
&.btn-light {
color:#515151;
&:after {
border-bottom-color:#B5B5B5;
}
}
}
/* icons inside buttons */
.btn {
> [class*="icon-"] {
display:inline;
margin-right:4px;
//min-width:12px;
&.icon-on-right {
margin-right:0;
margin-left:4px;
}
}
> .icon-only[class*="icon-"] {
margin:0;
vertical-align:middle;
text-align:center;
padding:0;
//min-width:24px;
}
}
.btn-large > [class*="icon-"] {
margin-right:6px;
&.icon-on-right {
margin-right:0;
margin-left:6px;
}
}
.btn-small > [class*="icon-"] {
margin-right:3px;
&.icon-on-right {
margin-right:0;
margin-left:3px;
}
}
.btn-mini > [class*="icon-"] , &.btn-minier > [class*="icon-"] {
margin-right:2px;
&.icon-on-right {
margin-right:0;
margin-left:2px;
}
}
/**
.btn > .icon-round{
padding:1px 2px;
border:2px solid #FFF;
border-radius:16px;
}
*/
.btn.btn-link {
border:none !important;
background:transparent none !important;
color:@btn-link-color !important;
text-shadow:none !important;
padding:4px 12px !important;
line-height:20px !important;
&:hover {
background:none !important;
text-shadow:none !important;
}
&.active {
background:none !important;
text-decoration:underline;
color:lighten(@btn-link-color , 6%) !important;
&:after {
display:none;
}
}
&.disabled , &[disabled]{
background:none;
opacity:0.65;
&:hover {
background:none !important;
text-decoration:none !important;
}
}
}
/* button groups */
.btn-group {
> .btn {
& , + .btn {
margin:0 1px 0 0;
}
&:first-child {
margin:0 1px 0 0;
}
&:first-child , &:last-child {
border-radius:0;
}
/* caret inside buttons */
> .caret {
margin-top:15px;
margin-left:1px;
border-width:5px;
border-top-color:#FFF;
}
&.btn-small > .caret {
margin-top:10px;
border-width:4px;
}
&.btn-large > .caret {
margin-top:18px;
border-width:6px;
}
&.btn-mini > .caret {
margin-top:9px;
border-width:4px;
}
&.btn-minier > .caret {
margin-top:7px;
border-width:3px;
}
/* dropdown toggle */
+ .btn.dropdown-toggle {
padding-right:3px;
padding-left:3px;
}
+ .btn-large.dropdown-toggle {
padding-right:4px;
padding-left:4px;
}
}
.dropdown-toggle {
border-radius:0;
}
.btn-group-active-state(@left, @right, @bottom, @width) {/* the border under an active button in button groups */
&.active:after {
left:unit(@left, px); right:unit(@right, px); bottom:unit(@bottom, px);
border-bottom-width:unit(@width, px);
}
}
> .btn , + .btn{
margin:0 1px 0 0;
border-width:3px !important;
.btn-group-active-state(-2, -2, -2, 1);
}
> .btn-large , + .btn-large{
border-width:4px !important;
.btn-group-active-state(-3, -3, -3, 1);
}
> .btn-small , + .btn-small{
border-width:2px !important;
.btn-group-active-state(-1, -1, -1, 1);
}
> .btn-mini , + .btn-mini{
border-width:1px !important;
.btn-group-active-state(0, 0, 0, 1);
}
> .btn-minier , + .btn-minier{
border-width:0 !important;
.btn-group-active-state(0, 0, 0, 1);
}
}
.btn-group-vertical > .btn , .btn-group-vertical > .btn + .btn {
margin:1px 0 0;
}
.btn-group-vertical > .btn:first-child {
margin-right:0;
}
/* application buttons */
.btn.btn-app {
display:inline-block;
width:100px;
margin:2px;
position:relative;
font-size:18px;
font-weight:normal;
color:#FFF;
text-align:center;
text-shadow:0 -1px -1px rgba(0,0,0,0.2) !important;
border:none;
border-radius:12px;
padding:12px 0 8px;
}
//button color
.btn-app-color(@color1, @color2, @percent) {
& , &.no-hover:hover , &.disabled:hover {
background:average(@color1, @color2) !important;
#gradient > .vertical(@color1 , @color2) !important;
}
&:hover {
background:average(darken(@color1,@percent), darken(@color2,@percent)) !important;
#gradient > .vertical(darken(@color1,@percent) , darken(@color2,@percent)) !important;
}
}
.btn-app-color(@color-name, @percent:10%) {
@color1-name : ~`"btn-app-@{color-name}-1"`;
@color2-name : ~`"btn-app-@{color-name}-2"`;
.btn-app-color(@@color1-name, @@color2-name , @percent);
}
.btn-app, .btn-app.btn-default {
.btn-app-color(~"default" , 8%);
}
.btn-app.btn-primary {
.btn-app-color(~"primary");
}
.btn-app.btn-info {
.btn-app-color(~"info");
}
.btn-app.btn-success {
.btn-app-color(~"success");
}
.btn-app.btn-danger {
.btn-app-color(~"danger");
}
.btn-app.btn-warning {
.btn-app-color(~"warning");
}
.btn-app.btn-purple {
.btn-app-color(~"purple");
}
.btn-app.btn-pink {
.btn-app-color(~"pink");
}
.btn-app.btn-inverse {
.btn-app-color(~"inverse");
}
.btn-app.btn-grey {
.btn-app-color(~"grey" , 5%);
}
.btn-app.btn-light{
color:@btn-app-light-color !important;
text-shadow:0 1px 1px #EEE !important;
.btn-app-color(~"light" , 5%);
& , &.no-hover:hover {
border:2px solid #DDD;
}
&.btn-mini{
width:64px;
padding-bottom:6px;
}
&:hover {
border-color:darken(#DDD , 2%)
}
}
.btn-app.btn-yellow{
color:@btn-app-yellow-color !important;
text-shadow:0 -1px 0 rgba(255, 255, 255, 0.4) !important;
border:2px solid @btn-app-yellow-border;
.btn-app-color(~"yellow" , 5%);
& , &.no-hover:hover {
border:2px solid @btn-app-yellow-border;
}
&:hover {
border-color:darken(@btn-app-yellow-border , 8%)
}
}
.btn.btn-app {
&.btn-small{
width:80px;
font-size:16px;
border-radius:10px ;
padding-bottom:9px;
}
&.btn-mini{
width:64px;
font-size:15px;
border-radius:8px;
padding-bottom:7px;
padding-top:8px;
}
> [class*=icon] {
display:block;
font-size:42px;
margin:0 0 4px;
line-height:36px;
min-width:0;
padding:0;
}
&.btn-small > [class*=icon]{
display:block;
font-size:32px;
line-height:30px;
margin:0 0 3px;
}
&.btn-mini > [class*=icon]{
display:block;
font-size:24px;
line-height:24px;
margin:0;
}
&.no-radius{
border-radius:0;
}
&.radius-4{
border-radius:4px;
}
/* badge & label inside buttons */
> .badge , > .label {
position:absolute !important;
top:-2px; right:-2px;
padding:1px 3px;
text-align:center;
font-size:12px;
&.badge-right , &.label-right{
right:auto;
left:-2px;
}
}
> .label {
padding:1px 6px 3px;
font-size:13px;
}
&.radius-4 , &.no-radius{
> .badge {
border-radius:3px;
&.no-radius {// > .badge.no-radius
border-radius:0;
}
}
}
/* active state */
&.active {
color:@btn-app-active;
&:after {
display:none;
}
&.btn-yellow {
color:@btn-app-yellow-color;
border-color:@btn-app-yellow-border;
}
&.btn-light {
color:@btn-app-light-active;
}
}
}

360
static/css/less/dropdown.less Executable file
View File

@@ -0,0 +1,360 @@
/* dropdown menus */
.icon-white, .nav-pills > .active > a > [class^="icon-"], .nav-pills > .active > a > [class*=" icon-"], .nav-list > .active > a > [class^="icon-"], .nav-list > .active > a > [class*=" icon-"], .navbar-inverse .nav > .active > a > [class^="icon-"], .navbar-inverse .nav > .active > a > [class*=" icon-"], .dropdown-menu > li > a:hover > [class^="icon-"], .dropdown-menu > li > a:focus > [class^="icon-"], .dropdown-menu > li > a:hover > [class*=" icon-"], .dropdown-menu > li > a:focus > [class*=" icon-"], .dropdown-menu > .active > a > [class^="icon-"], .dropdown-menu > .active > a > [class*=" icon-"], .dropdown-submenu:hover > a > [class^="icon-"], .dropdown-submenu:focus > a > [class^="icon-"], .dropdown-submenu:hover > a > [class*=" icon-"], .dropdown-submenu:focus > a > [class*=" icon-"] {
background-image:none;
}
.dropdown-menu {
.border-radius(0) !important;
.box-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
> li > a {
font-size:13px;
padding-left:11px; padding-right:11px;
margin-bottom:1px; margin-top:1px;
}
&.dropdown-icon-only {
min-width:0;
> li {
float:left;
margin:0 4px;
> a {
[class*="icon-"] {
width:18px;
//font-size:16px;
display:inline-block;
}
.icon-2x {
width:36px;
//font-size:22px;
}
}// > a
}// > li
}//&.dropdown-icon-only
}//.dropdown-menu
//dropdown
.dropdown-color(@bgcolor:~"menu";@txtcolor:#FFFFFF) {
@dropdown-class:~`"dropdown-@{bgcolor}"`;
@dropdown-bg:~`"dropdown-@{bgcolor}"`;
@dropdown-cl:@@dropdown-bg;
.@{dropdown-class} {
li a:hover,
li a:focus,
li a:active,
li.active a,
li.active a:hover,
.dropdown-submenu:hover > a,
.nav-tabs & li > a:focus
{
background:@dropdown-cl;
color:@txtcolor;
}
}
}
.dropdown-color();
.dropdown-color(~"default");
.dropdown-color(~"info");
.dropdown-color(~"primary");
.dropdown-color(~"success");
.dropdown-color(~"warning");
.dropdown-color(~"danger");
.dropdown-color(~"inverse");
.dropdown-color(~"purple");
.dropdown-color(~"pink");
.dropdown-color(~"grey");
.dropdown-color(~"light" ; #333333);
.dropdown-color(~"lighter" ; #444444);
.dropdown-color(~"lightest" ; #444444);
.dropdown-color(~"yellow" ; #444444);
.dropdown-color(~"yellow2" ; #444444);
.dropdown-color(~"light-blue" ; #445566);
.dropdown-light , .dropdown-lighter , .dropdown-lightest {
.dropdown-submenu:hover > a:after {
border-left-color:#444;
}
}
/* closer to the toggle button */
.dropdown-menu {
&.dropdown-close {
top:92%; left:-5px;
&.pull-right {
left:auto;
right:-5px;
}
}
&.dropdown-closer {
top:80%; left:-10px;
&.pull-right {
right:-10px;
left:auto;
}
}
}
.dropdown-submenu > .dropdown-menu {
.border-radius(0);
}
.dropdown-submenu > a:after {
margin-right:-5px;
}
/* colorpicker dropdown */
.dropdown-colorpicker {
> .dropdown-menu {
top:80%;
left:-7px;
&.pull-right {
right:-7px;
left:auto;
}
padding:4px;
min-width:120px; max-width:120px;
> li {
display:block;
float:left;
width:20px; height:20px;
margin:2px;
> .colorpick-btn {
display:block;
width:20px; height:20px;
margin:0; padding:0;
border-radius:0;
position:relative;
.transition(~"all ease 0.1s");
&:hover {
text-decoration:none;
.opacity(80);
.scale(1.08);
}
&.selected:after {
content:"\f00c";
display:inline-block;
font-family:FontAwesome; font-size:11px;
color:#FFF;
position:absolute; left:0; right:0; text-align:center; line-height:20px;
}
}
}
}
}
.btn-colorpicker {
display:inline-block;
width:20px; height:20px;
background-color:#DDD;
vertical-align:middle;
border-radius:0;
}
/* top user info dropdowns */
.dropdown-navbar {
padding:0;
width:240px;
.box-shadow(~"0 2px 4px rgba(30, 30, 100, 0.25)");
> li {
padding:0 8px;
background-color:#FFFFFF;
&.nav-header {
text-shadow:none;
padding-top:7px; padding-bottom:7px;
font-size:13px; font-weight:bold; text-transform:none;
border-bottom:1px solid;
}
> [class*="icon-"] , > a > [class*="icon-"] {
margin-right:5px !important;
color:#555;
font-size:14px;
}
> a {
padding:10px 2px;
margin:0;
border-bottom:1px solid;
font-size:12px;
line-height:16px;
color:#555;
&:active, &:hover, &:focus {
background-color:transparent !important;
color:#555;
}
.progress {
margin-bottom:0;
margin-top:4px;
}
.badge {
line-height:16px;
padding-right:4px; padding-left:4px;
font-size:12px;
}
}
&:last-child > a {
border-bottom:0 solid #DDD;
border-top:1px dotted transparent;
color:#4F99C6;
text-align:center;
font-size:13px;
&:hover {
background-color:#FFF;
color:#4F99C6;
text-decoration:underline;
> [class*="icon-"] {
text-decoration:none;
}
}
}
}//end of li
//navbar colors
.navbar-colors(@border-color; @hover-color; @header-bg; @header-txt; @header-icon; @item-bottom) {
border-color:@border-color;
> li {
&:hover {
background-color:@hover-color !important;
}
&.nav-header {
background-color:@header-bg !important;
color:@header-txt;
border-bottom-color:@border-color;
> [class*="icon-"] {
color:@header-icon;
}
}
> a {
border-bottom-color:@item-bottom;
}
}
}
.navbar-colors(#BCD4E5 ; #F4F9FC ; #ECF2F7 ; #8090A0 ; #8090A0; #E4ECF3);
&.navbar-pink {
.navbar-colors(#E5BCD4 ; #FCF4F9 ; #F7ECF2 ; #B471A0 ; #C06090 ; #F3E4EC);
}
&.navbar-grey {
.navbar-colors(#E5E5E5 ; #F8F8F8 ; #F2F2F2 ; #3A87AD ; #3A87AD; #EEEEEE);
}
&.navbar-green {
.navbar-colors(#B4D5AC ; #F4F9EF ; #EBF7E4 ; #88AA66 ; #90C060; #ECF3E4);
}
[class*="btn"][class*="icon-"] {
display:inline-block;
border:none;
margin:0 5px 0 0;
width:24px;
text-align:center;
padding-left:0;
padding-right:0;
}
/* user info on top navbar icons */
.msg-photo {
margin-right:6px;
max-width:42px;
}
.msg-body {
display:inline-block;
line-height:20px;
white-space:normal;
vertical-align:middle;
max-width:175px;
}
.msg-title {
display:inline-block;
line-height:14px;
}
.msg-time {
display:block;
font-size:11px;
color:#777;
> [class*="icon-"] {
font-size:14px;
color:#555;
}
}
}
.user-menu > li > a {
padding:4px 12px;
> [class*="icon-"] {
margin-right:6px;
font-size:120%;
}
}
.user-info {
max-width:100px;
display:inline-block;
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
vertical-align:top;
line-height:15px;
position:relative; top:6px;
small {
display:block;
}
}
.dropdown-100 {
min-width:100px;
}
.dropdown-125 {
min-width:125px;
}
.dropdown-150 {
min-width:150px;
}

125
static/css/less/ext/bootstrap-tag.less vendored Executable file
View File

@@ -0,0 +1,125 @@
.tags {
display: inline-block;
padding: 4px 6px;
color: @ace-grey;
vertical-align: middle;
//.border-radius(@inputBorderRadius);
background-color: #FFF;
border: 1px solid @input-border;
//.box-shadow(inset 0 1px 1px rgba(0,0,0,.075));
//.transition(~"border linear .2s, box-shadow linear .2s");
width: 206px;
&:hover {
border-color:@input-hover-border;
}
&-hover , &-hover:hover {
border-color: @input-focus-border;
outline: 0;
outline: thin dotted \9; /* IE6-9 */
}
&[class*="span"] {
float: none;
margin-left: 0;
}
input[type="text"],
input[type="text"]:focus {
border: none;
display: inline;
outline: 0;
margin: 0;
padding: 0;
line-height: 14px;
.box-shadow(none);
width: 100%;
}
}
.tags {
.tag {
display: inline-block;
position:relative;
font-size: 13px;
font-weight: normal;
//line-height: 14px; // ensure proper line-height if floated
vertical-align: baseline;
white-space: nowrap;
//background-color: #3E9BD0;
//color:#FFF;
background-color:@tag-bg;
color:#FFF;
text-shadow:1px 1px 1px rgba(0, 0, 0, 0.15);
padding: 4px 22px 5px 9px;
// .border-radius(9px);
margin-bottom: 3px;
margin-right: 3px;
.transition(~"all 0.2s");
&:empty {
display: none;
}
&:hover {
//background-color: #B2CADD;
}
/**
&:nth-child(5n+1) {
background-color:#48A2E0;
}
&:nth-child(5n+2) {
background-color:#34C896;
}
&:nth-child(5n+3) {
background-color:#B57BB3;
}
&:nth-child(5n+4) {
background-color:#CC7DA8;
}
&:nth-child(5n+5) {
background-color:#666;
}
*/
// Important (red)
&-important { background-color: @btn-danger; }
// Warnings (orange)
&-warning { background-color: @btn-warning; }
// Success (green)
&-success { background-color: @btn-success; }
// Info (turquoise)
&-info { background-color: @btn-info; }
// Inverse (black)
&-inverse { background-color: @btn-inverse; }
.close {
font-size: 15px;
line-height: 20px;
opacity:1;
color:#FFF;
text-shadow:none;
float:none;
position:absolute;
right:0;
top:0; bottom:0;
width:18px;
text-align:center;
&:hover {
background-color:rgba(0,0,0,0.2);
}
}
}
}

View File

@@ -0,0 +1,440 @@
//some checkbox & switch variables
@checkbox-color:#32A3CE;
@checkbox-checked-border:#ADB8C0;
@checkbox-hover-border:#FF893C;
@checkbox2-bg:#F9A021;
@switch-checked-bg:#8AB2C9;
@switch-checked-border:#468FCC;
@switch4-bg:#8B9AA3;
@switch4-color:#5B6A73;
@switch4-checked-bg:#468FCC;
@switch6-checked-border:#B7D3E5;
@switch6-checked-bg:#FF893C;
@switch7-checked-bg:#468FCC;
@switch7-checked-border:#6FB3E0;
@switch-1-text:"ON\a0\a0\a0\a0\a0\a0\a0\a0\a0OFF";
@switch-2-text:"YES\a0\a0\a0\a0\a0\a0\a0\a0NO";
@switch-4-text:"ON\a0\a0\a0\a0\a0\a0\a0\a0\a0\a0\a0OFF";
@switch-5-text:"YES\a0\a0\a0\a0\a0\a0\a0\a0\a0\a0NO";
@switch-7-text:"OFF\a0\a0\a0\a0\a0\a0\a0\a0\a0\a0\a0ON";
/* Checkbox & Radio */
input[type=checkbox].ace , input[type=radio].ace {
opacity:0;
position:absolute;
z-index:12;
width:18px; height:18px;
&:checked, &:focus {
outline:none !important;
}
+ .lbl {
position: relative; z-index:11;
display:inline-block;
margin:0;
line-height:20px;
min-height:14px;
min-width:14px;
font-weight:normal;
.checkbox-paddings() {// a little paddings for .lbl
.checkbox-paddingX (@index) when (@index >= 0) {
&.padding-@{index}::before {
margin-right:unit(@index,px);
}
.checkbox-paddingX(@index - 4);
}
.checkbox-paddingX(16);
}
.checkbox-paddings();
&::before {
font-family:fontAwesome; font-weight:normal;
font-size: 11px; color:@checkbox-color;
content:"\a0";
display:inline-block;
background-color: #FAFAFA;
border: 1px solid #CCC;
box-shadow: 0 1px 2px rgba(0,0,0,0.05);/*, inset 0px -15px 10px -12px rgba(0,0,0,0.05);*/
border-radius: 0;
display: inline-block;
text-align:center;
vertical-align:middle;
height:13px; line-height:13px;
min-width:13px;
margin-right:1px;
}
}//.lbl
&:checked + .lbl::before ,
{
display:inline-block;
content: '\f00c';
background-color: #F5F8FC;
border-color:@checkbox-checked-border;
box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px -15px 10px -12px rgba(0,0,0,0.05), inset 15px 10px -12px rgba(255,255,255,0.1);
}
&:hover + .lbl::before , + .lbl:hover::before {
border-color:@checkbox-hover-border;
}
&:active , &:checked:active {
+ .lbl::before {
box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px 1px 3px rgba(0,0,0,0.1);
}
}
&.ace-checkbox-2 + .lbl::before {
box-shadow: none;
}
&.ace-checkbox-2:checked + .lbl::before {
background-color: @checkbox2-bg;
border-color: @checkbox2-bg;
color: #FFF;
}
&:disabled + .lbl::before ,
&[disabled] + .lbl::before ,
&.disabled + .lbl::before {
background-color:#DDD !important;
border-color:#CCC !important;
box-shadow:none !important;
color:#BBB;
}
}
input[type=radio].ace + .lbl::before {
border-radius:32px;
font-family:Arial, Helvetica, sans-serif;
font-size:36px;
}
input[type=radio].ace:checked + .lbl::before {
content:"\2022";
}
/* CSS3 on/off switches */
//use like <input type="checkbox" class="ace ace-switch" /> <span class="lbl"></span>
input[type=checkbox].ace.ace-switch {
width:55px;
height:20px;
+ .lbl {
margin:0 4px;
min-height:24px;
&::before {
font-family:Arial, Helvetica, sans-serif;
content:@switch-1-text;
color:#999;
font-weight:bold;
font-size:11px;
line-height:18px; line-height:21px\9;/*ie9*/
height:18px;
overflow:hidden;
border-radius:12px;
background-color: #F5F5F5;
box-shadow:inset 0px 2px 2px 0px rgba(0,0,0,.2);
border: 1px solid #CCC;
text-align:left;
float:left;
padding:0;
width:50px;
text-indent:-19px; text-indent:~"-21px\9";
margin-right:0;
.transition(~"text-indent .4s ease");
}
&::after {
font-family:Arial, Helvetica, sans-serif;
content: '|||';
font-size: 10px;
font-weight:lighter;
color:#E5E5E5;
background-color:#FFF;
text-shadow:-1px 0px 0 rgba(0, 0, 0, 0.15);
text-align:center;
border-radius:12px;
width:22px; height:22px; line-height:20px;
position: absolute;
top: -2px; left: -3px;
padding:0;
box-shadow: 0px 1px 1px 1px rgba(0,0,0,.3);
text-shadow:0px 1px 1px rgba(0,0,0,0.3) inset;
.transition(~"left .4s ease");
}
}
&:checked + .lbl {
&::before {
text-indent:9px;
color:#FFF;
background-color:@switch-checked-bg;
border-color:@switch-checked-border;
}
&::after {
left:34px;
background-color:#FFF;
color:@switch-checked-bg;
}
}
&.ace-switch-2 + .lbl::before {
content:@switch-2-text;
}
&.ace-switch-3 + .lbl::after {
font-family:FontAwesome;
font-size:13px; line-height:23px;
content:"\f00d";
top:-1px;
}
&.ace-switch-3:checked + .lbl::after {
content:"\f00c";
}
/* switch style 4 & 5 */
&.ace-switch-4 , &.ace-switch-5 {
+ .lbl::before {
content:@switch-4-text;
font-family:Arial, Helvetica, sans-serif;
font-weight:bolder;
font-size:12px;
line-height:19px; height:20px; overflow:hidden;
line-height:21px\9;
border-radius:12px;
display:inline-block;
background-color: @switch4-bg;
border: 1px solid @switch4-bg;
color:#FFF;
width:52px;
text-indent:-25px; text-indent:~"-28px\9";
display: inline-block;
position: relative;
//margin-right:8px;
box-shadow:none;
.transition(~"all .4s ease");
}
+ .lbl::after {
font-family:Arial, Helvetica, sans-serif;
content: '|||'; text-shadow:-1px 0px 0 rgba(0, 0, 0, 0.2);
font-size: 7px; font-weight:lighter;
color:@switch4-bg;
text-align:center;
position: absolute;
border-radius:12px;
color:@switch4-color;
top: 2px; left: 2px;
width:18px; height:18px; line-height:16px;
background-color:#FFF;
.transition(~"all .4s ease");
}
&:checked + .lbl {
&::before {
text-indent:9px;
background-color:@switch4-checked-bg;
border-color:#468FCC;
}
&::after {
left:34px;
background-color:#FFF;
}
}
}
&.ace-switch-5 + .lbl::before {
content:@switch-5-text;
}
&.ace-switch-5:checked + .lbl::before {
text-indent:8px;
}
/* switch style 6 */
&.ace-switch-6 {
+ .lbl {
position: relative;
&::before {
font-family:FontAwesome;
content:"\f00d";
text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);
box-shadow:none;
border:none;
font-weight:lighter;
font-size:16px;
border-radius:12px;
display:inline-block;
background-color: #888;
color:#F2F2F2;
width:52px; height:22px; line-height:20px;
text-indent:32px;
.transition(~"background 0.1s ease");
}
&::after {
content: ''; text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);
position: absolute;
top: 2px; left: 3px;
border-radius:12px;
box-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);
width:10px; height:10px;
text-align:center;
background-color:#F2F2F2;
border:4px solid #F2F2F2;
.transition(~"left 0.2s ease");
}
}
&:checked + .lbl {
&::before {
content: "\f00c";
text-indent:6px;
color:#FFF;
border-color:@switch6-checked-border;
background-color:@switch6-checked-bg;
}
&::after {
left:32px;
background-color:#FFF;
border:4px solid #FFF;
text-shadow:0 -1px 0 rgba(0, 200, 0, 0.25);
}
}
}
&.ace-switch-7 {
width:75px;
+ .lbl {
position: relative;
&::before {
content:@switch-7-text;
font-weight:bolder;
font-size:14px;
line-height:20px;
display:inline-block;
background-color: #FFF;
border: 2px solid #AAA;
border-radius:0;
box-shadow:none;
color:#aaa;
width:70px; height:22px; line-height:22px; overflow:hidden;
text-indent:4px;
display: inline-block;
position: relative;
//margin-right:8px;
.transition(~"all 0.2s ease");
}
&::after {
content: '\f00d';
font-family:FontAwesome;
font-size: 16px;
position: absolute;
top: 3px;
left: 39px;
width:32px; height:20px; line-height:18px;
text-align:center;
background-color:#aaa;
color:#FFF;
border-radius:0;
box-shadow:none;
.transition(~"all 0.2s ease-in-out");
}
}
&:checked + .lbl {
&::before {
color:@switch7-checked-bg;
background-color: #FFF;
text-indent:-33px;
border-color:@switch7-checked-border;
}
&::after {
left:3px;
content:'\f00c';
background-color:@switch7-checked-bg;
color: #FFF;
}
}
}
}

391
static/css/less/form-file.less Executable file
View File

@@ -0,0 +1,391 @@
//some file input variables
@file-input-bg:#FFF;
@file-input-border:#D5D5D5;
@file-input-shadow:~"0 0 0 4px rgba(0,0,0,0.06)";
@file-input-hover-border:#F59942;
@file-input-hover-shadow:~"0 0 0 4px rgba(245, 153, 66, 0.3)";
@file-input-btn-bg:#6FB3E0;
@file-input-name-color:#888;
@file-input-selected-name-color:#666;
@file-input-icon-bg:#D1D1D1;
@file-input-selected-icon-bg:#EFAD62;
@file-input-selected-icon-picture-bg:#BD7A9D;
@file-input-selected-icon-film-bg:#87B87F;
@file-input-selected-icon-music-bg:#8B7AC9;
@file-input-selected-icon-archive-bg:#EFAD62;
@file-remove-bg:#FB7142;
@file-multi-remove-color:#F4C0B1;
@file-multi-border:#AAA;
.ace-file-input {
position:relative;
height:38px;
line-height:38px;
margin-bottom:9px;
input[type=file] {
position:fixed;
z-index:-2;
opacity:0;
}
label {
display:block;
position:absolute;
top:0; left:0; right:0; height:28px;
background-color:@file-input-bg;
border:1px solid @file-input-border;
cursor:pointer;
//.box-shadow(@file-input-shadow);
.box-shadow(none);
.transition(~"all 0.15s");
&:hover {
//.box-shadow(@file-input-hover-shadow);
.box-shadow(none);
border-color:@file-input-hover-border;
}
&:before { /* the button */
display:inline-block;
content:attr(data-title);
position:absolute;
right:0; top:0; bottom:0; padding:0 8px;
line-height:24px;
text-align:center;
background-color:@file-input-btn-bg;
color:#FFF;
font-size:11px; font-weight:bold;
border:2px solid #FFF;
border-left-width:4px;
.transition(~"all 0.3s");
}
span { /* the file name container */
display:inline-block;
height:28px; max-width:80%; white-space:nowrap; overflow:hidden;
line-height:28px;
color:@file-input-name-color;
font-size:13px;
position:static;
padding-left:30px;
&:after { /* the file name */
display:inline-block;
content:attr(data-title);
}
}
&.selected {
right:16px;
span {
color:@file-input-selected-name-color;
}
}
[class*="icon-"] {
.ace-file-icon();
background-color:@file-input-icon-bg;//should be here
}
&.selected {
[class*="icon-"] {
background-color:@file-input-selected-icon-bg;
}
.icon-picture {
background-color:@file-input-selected-icon-picture-bg;
}
.icon-film {
background-color:@file-input-selected-icon-film-bg;
}
.icon-music {
background-color:@file-input-selected-icon-music-bg;
}
.icon-archive {
background-color:@file-input-selected-icon-archive-bg;
}
}
&.hide-placeholder:before {
display:none;
}
}
a:hover{
text-decoration:none;
}
.remove { /* the remove button */
position:absolute;
right:-8px; top:6px;
display:none;
width:17px; text-align:center;
height:17px; line-height:15px;
font-size:11px; font-weight:normal;
background-color:@file-remove-bg;
.border-radius(100%);
color:#FFF;
text-decoration:none;
}
label.selected + .remove {
display:inline-block;
}
}
.ace-file-icon() {
display:inline-block;
position:absolute;
left:0; top:0; bottom:0;
line-height:22px;
width:22px;
text-align:center;
font-family:FontAwesome; font-size:13px;
border:2px solid #FFF;
color:#FFF;
.transition(~"all 0.1s");
}
.ace-file-multiple {
height:auto;
label {
position:relative;
height:auto;
border:1px dashed @file-multi-border;
border-radius:4px;
text-align:center;
&:before {/* the button */
display:inline-block;
content:attr(data-title);
position:relative;
right:0; left:0; margin:12px;
line-height:22px;
background-color:#FFF;
color:#CCC;
font-size:18px; font-weight:bold;
border:none;
}
&.selected span [class*="icon-"] {
.ace-file-icon();
}
span {
position:relative;
display:block;
padding:0;
height:auto;
width:auto; max-width:100%; margin:0 4px;
border-bottom:1px solid #DDD;
text-align:left;
&:first-child {
margin-top:1px;
}
&:last-child {
border-bottom-width:0;
margin-bottom:1px;
}
img {
padding:2px;
border:1px solid #D7D7D7;
background-color:#FFF;
background-repeat:no-repeat;
background-position: center;
margin:4px 8px 4px 1px;
}
&:after { /* the file name */
display:none;
}
}
&.selected span:after { /* the file name */
display:inline-block;
white-space:pre;
}
span img + [class*="icon-"] , &.selected span img + [class*="icon-"] {
display:none;
}
}
.remove {
right:-11px; top:-11px;
border:3px solid #BBB;
border-radius:32px;
background-color:#FFF;
color:red;
}
label.selected + .remove:hover {
border-color:@file-multi-remove-color;
}
}
.ace-file-multiple label {
span [class*="icon-"] {
position:relative;
display:block;
text-align:center;
height:auto; line-height:64px;
width:auto;
font-size:64px; color:#D5D5D5;
margin:4px 0;
background-color:transparent;
}
&.selected:after {
display:none;
}
&.selected span [class*="icon-"] {
position:relative;
margin-right:4px; margin-left:2px;
line-height:24px;
}
span.large {
text-align:center;
border-bottom:2px solid #222;
margin:0 1px 3px;
&:last-child {
margin:0 1px;
border-bottom-width:0;
}
&:after { /* image caption */
position:absolute;
top:auto; bottom:0; left:0; right:0;
padding:0 4px;
background-color:#555;
color:#FFF;
.opacity(80);
}
img {
border-width:0;
margin:0;
padding:0;
}
}
}
.ace-file-input input[type=file] {
&.disabled , &[disabled] , &[readonly] {
+ label {
cursor: not-allowed;
background-color:#EEE;
&:hover {
//box-shadow: 0 0 0 4px rgba(0,0,0,0.06);
.box-shadow(none);
border-color:#E3E3E3;
}
&:before {
border-color:#EEE;
background-color:#A1AAAF;
}
}
}
&[readonly] + label {
cursor:default;
}
}
.ace-file-multiple input[type=file] {
&.disabled , &[disabled] , &[readonly] {
+ label {
&:hover {
border-color:#AAA;
}
&:before {
background-color:transparent;
}
[class*="icon-"] {
border-color:#EEE;
}
}
}
}
/* IE9 needs this like IE8 to prevent "ACCESS denied" errors! */
.ace-file-input input[type=file] {
/*must be visible and on top for ie8/9 to actually work */
width:~'100%\0/'; height:~'30px\0/';
position:~'absolute\0/';
z-index:~'1\0/';
filter:alpha(opacity=0);
cursor:~'pointer\0/';
}
.ace-file-input input[type=file]:hover + label {
border-color: @file-input-hover-border~'\0/';
}
.ace-file-multiple input[type=file] {
height:~'100%\0/';
}
.ace-file-input .remove {
z-index:~'2\0/';
}

499
static/css/less/form.less Executable file
View File

@@ -0,0 +1,499 @@
//some extra form variables
//more important ones are inside "variables.less"
@input-readonly-color:#939192;
@input-readonly-bg:#F5F5F5;
@input-readonly-focus-border:#AAA;
@input-readonly-focus-bg:#F9F9F9;
@input-readonly-focus-shadow:~"0px 0px 0px 2px rgba(150, 150, 150, 0.3)";
@input-disabled-color:#848484;
@input-disabled-bg:#EEE;
@input-hover-border:lighten(greyscale(@input-focus-border),10%);
@option-hover-bg:#E5E9EE;
//form error states
@success-state-border:#92BF65;
@success-state-color:#8BAD4C;
@success-state-focus-border:#81A85A;
@success-state-focus-color:#786;
@success-state-focus-shadow:~"0px 0px 0px 2px rgba(130, 188, 58, 0.3)";
@success-state-text-color:#7BA065;//the color of the help text, etc inside that control label
@error-state-border:#F09784;
@error-state-color:#D68273;
@error-state-focus-border:#DB8978;
@error-state-focus-color:#866;
@error-state-focus-shadow:~"0px 0px 0px 2px rgba(219, 137, 120, 0.3)";
@error-state-text-color:#D16E6C;
@warning-state-border:#E0C43A;
@warning-state-color:#D3BD50;
@warning-state-focus-border:#D8BC41;
@warning-state-focus-color:#875;
@warning-state-focus-shadow:~"0px 0px 0px 2px rgba(216, 188, 65, 0.3)";
@warning-state-text-color:#D19D59;
@info-state-border:#64A6BC;
@info-state-color:#4B89AA;
@info-state-focus-border:#5A81A8;
@info-state-focus-color:#678;
@info-state-focus-shadow:~"0px 0px 0px 2px rgba(58, 120, 188, 0.3)";
@info-state-text-color:#657BA0;
@disabled-state-color:#848484;
@disabled-state-bg:#EEE;
/** form elements */
.form-line {
margin-bottom:24px; padding-bottom:12px;
border-bottom:1px solid #EEE;
}
.form-actions {
display:block;
}
.help-button {
display:inline-block;
height:18px; width:18px; line-height:20px; text-align:center;
padding:0;
background-color:@help-button-bg;
color:#FFF;
font-size:12px; font-weight:bold;
cursor:default;
margin-left:4px;
.border-radius(100%);
border-color:#FFF;
border:2px solid #FFF;
.box-shadow(~"0px 1px 0px 1px rgba(0, 0, 0, 0.2)");
&:hover {
background-color:@help-button-bg;
text-shadow:none;
}
}
label , .lbl {
vertical-align:middle;
}
td > label , th > label , label.inline{
margin-bottom:0;
line-height:inherit;
}
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"] {
.border-radius(0) !important;
border-width:1px;
color:@input-color;
background-color:@input-bg;
border-color:@input-border;
.box-shadow(none);
.transition-duration(0.1s);
&:hover {
border-color:@input-hover-border;
}
&:focus {
//.box-shadow(@input-focus-shadow);
.box-shadow(none);
color:@input-focus-color;
border-color:@input-focus-border;
background-color:@input-focus-bg;
}
}
input.block {
display:block;
margin-bottom:9px;
}
textarea.autosize-transition {
.transition-duration("height 0.2s");
}
.limiterBox {
border: 1px solid #222;
border-top: none;
background-color: #333;
padding: 3px 6px;
font-size: 12px;
color:#FFF;
margin-top:6px;
&:after {
display:none;
}
&:before {
display:block;
content:"";
position: absolute;
width: 0; height: 0;
top: -8px;
left: 50%;
margin-left: -5px;
border-color: transparent;
border-style: solid;
border-bottom-color: #333;
border-width: 0 8px 8px;
}
}
select {
.border-radius(0);
border-width:1px;
&:focus {
outline:none;
//.box-shadow(@input-focus-shadow);
.box-shadow(none);
border-color:@input-focus-border;
}
option {
padding:3px 4px;
&:active , &:hover, &:focus {
background-color:@option-hover-bg;
color:#111;
}
&[value=""] {
padding:0;
}
}
}
input[disabled] {
color:@input-disabled-color;
background-color:@input-disabled-bg;
&:hover {
border-color:lighten(@input-readonly-focus-border , 10%);
}
}
input[readonly] {
color:@input-readonly-color;
background:@input-readonly-bg !important;
cursor:default;
&:hover {
border-color:lighten(@input-readonly-focus-border , 10%);
}
&:focus {
//.box-shadow(@input-readonly-focus-shadow);
.box-shadow(none);
border-color:@input-readonly-focus-border;
background-color:@input-readonly-focus-bg;
}
}
.help-inline {
font-size:13px !important;
}
.input-icon {
position:relative;
span& {
display:inline-block;
}
> input {
padding-left:24px;
padding-right:6px;
}
&.input-icon-right > input {
padding-left:6px;
padding-right:24px;
}
> [class*="icon-"] {
padding:0 3px;
z-index:2;
position:absolute; top:1px; bottom:1px;
left:3px;
line-height:28px;
display:inline-block;
color:#909090;
font-size:16px;
}
&.input-icon-right > [class*="icon-"] {
left:auto;
right:3px;
}
> input:focus + [class*="icon-"] {
color:#579;
}
~ .help-inline {
padding-left:8px;
}
.control-group.warning & > [class*="icon-"] { color:@warning-state-color; }
.control-group.success & > [class*="icon-"] { color:@success-state-color; }
.control-group.error & > [class*="icon-"] { color:@error-state-color; }
.control-group.info & > [class*="icon-"] { color:@info-state-color; }
}
/* checkboxes , radio and switches */
.form-search , .form-inline {
.radio [type=radio] + label, .checkbox [type=checkbox] + label {
float: left;
margin-left: -20px;
.form-search & , .form-inline & {
margin-left:0;
margin-right:3px;
}
}
}
.input-append , .input-prepend {
.form-search & .search-query:focus {
.box-shadow(none);
}
input, select, .uneditable-input {
.border-radius(0);
}
}
@import "form-checkbox.less";
/* addon */
.input-prepend , .input-append {
.add-on {
.border-radius(0) !important;
.control-group.success & {
border-color:@success-state-border;
}
.control-group.error & {
border-color:@error-state-border;
}
.control-group.warning & {
border-color:@warning-state-border;
}
.control-group.info & {
border-color:@info-state-border;
}
}
> .btn {
line-height:20px;
padding:0 6px;
.border-radius(0) !important;
&.btn-small {
line-height:22px;
}
+ .btn{
margin-left:1px;
}
}
> .btn-group > .btn {
line-height:23px;
&.btn-small {
line-height:26px;
}
}
> .btn , > .btn-group > .btn {
& , &.btn-small {
> .caret {
margin-top:10px;
}
}
}
}
//file input control
@import "form-file.less";
/** input error states */
.control-group select,
.control-group textarea,
.control-group input[type="text"],
.control-group input[type="password"],
.control-group input[type="datetime"],
.control-group input[type="datetime-local"],
.control-group input[type="date"],
.control-group input[type="month"],
.control-group input[type="time"],
.control-group input[type="week"],
.control-group input[type="number"],
.control-group input[type="email"],
.control-group input[type="url"],
.control-group input[type="search"],
.control-group input[type="tel"],
.control-group input[type="color"] {
background:#FFF;
}
.control-group.success {
input, select, textarea {
border-color:@success-state-border;
color:@success-state-color;
.box-shadow(none);
&:focus {
.box-shadow(@success-state-focus-shadow);
color:@success-state-focus-color;
border-color:@success-state-focus-border;
}
}
[class*="icon-"] {
color:@success-state-color;
}
.btn [class*="icon-"] {
color:inherit;
}
.control-label , .help-block , .help-inline {
color:@success-state-text-color;
}
}
.control-group.info {
input , select, textarea {
border-color:@info-state-border;
color:@info-state-color;
.box-shadow(none);
&:focus {
.box-shadow(@info-state-focus-shadow);
color:@info-state-focus-color;
border-color:@info-state-focus-border;
}
}
[class*="icon-"] {
color:@info-state-color;
}
.btn [class*="icon-"] {
color:inherit;
}
.control-label , .help-block , .help-inline {
color:@info-state-text-color;
}
}
.control-group.error {
input , select, textarea {
border-color:@error-state-border;
color:@error-state-color;
.box-shadow(none);
&:focus {
.box-shadow(@error-state-focus-shadow);
color:@error-state-focus-color;
border-color:@error-state-focus-border;
}
}
[class*="icon-"] {
color:@error-state-color;
}
.btn [class*="icon-"] {
color:inherit;
}
.control-label , .help-block , .help-inline {
color:@error-state-text-color;
}
}
.control-group.warning {
input , select, textarea {
border-color:@warning-state-border;
color:@warning-state-color;
.box-shadow(none);
&:focus {
.box-shadow(@warning-state-focus-shadow);
color:@warning-state-focus-color;
border-color:@warning-state-focus-border;
}
}
[class*="icon-"] {
color:@warning-state-color;
}
.btn [class*="icon-"] {
color:inherit;
}
.control-label , .help-block , .help-inline {
color:@warning-state-text-color;
}
}
.control-group input{
&[disabled] , &:disabled{
color:@disabled-state-color !important;
background-color:@disabled-state-bg !important;
}
}

133
static/css/less/gallery.less Executable file
View File

@@ -0,0 +1,133 @@
/* gallery */
.ace-thumbnails {
list-style:none;
margin:0; padding:0;
> li {
float:left;
display:block;
position:relative;
overflow:hidden;
margin:2px;
border:2px solid #333;
> :first-child {
display:block;
position:relative;
}
.tags {
display:inline-block;
position:absolute;
bottom:0; right:0; left:0; overflow:visible;
.opacity(90);
direction:rtl;
//set these so that it's not confused with tags plugin
padding:0; margin:0;
height:auto; width:auto;
background-color:transparent;
border:none;
vertical-align:inherit;
> .label {
display:table;
margin:1px 1px 0 0;
direction:ltr;
text-align:left;
}
}
> .tools {
position:absolute;
top:0; bottom:0;
left:-30px;
width:24px;
background-color:rgba(0,0,0,0.55);
text-align:center;
vertical-align:middle;
.transition(~"all 0.2s ease");
&.tools-right {
left:auto; right:-30px;
}
&.tools-bottom {
width:auto; height:28px;
left:0; right:0; top:auto;
bottom:-30px;
}
&.tools-top {
width:auto; height:28px;
left:0; right:0; top:-30px;
bottom:auto;
}
}
&:hover {
> .tools { left:0; }
> .tools.tools-bottom { top:auto; bottom:0; }
> .tools.tools-top { bottom:auto; top:0; }
> .tools.tools-right { left:auto; right:0; }
}
> .tools > a , > :first-child .inner a {
display:inline-block;
color:#FFF;
font-size:18px; font-weight:normal;
padding:4px;
&:hover {
text-decoration:none;
color:#C9E2EA;
}
}
.tools.tools-bottom > a , .tools.tools-top > a {
display:inline-block;
}
/* the custom text on hover */
> :first-child > .text {
position:absolute;
right:0; left:0; bottom:0; top:0;
text-align:center;
color:#FFF;
background-color:rgba(0,0,0,0.55);
.opacity(0);
.transition(~"all 0.2s ease");
&:before {/* makes the inner text become vertically centered*/
content: '';
display: inline-block;
height: 100%;
vertical-align: middle;
margin-right: 0; /* Adjusts for spacing */
}
> .inner {
padding:4px 0;
margin:0;
display: inline-block;
vertical-align: middle;
max-width: 90%;
}
}
&:hover > :first-child > .text{
.opacity(100);
}
}//li
}

82
static/css/less/general.less Executable file
View File

@@ -0,0 +1,82 @@
//some page-content variables
@content-bg:#FFF;
@content-header-border:#E2E2E2;
@content-header-color:#2679B5;
@content-header-size:24px;
@content-header-small-color:#8089A0;
@content-header-small-size:14px;
html {
min-height:100%;
position:relative;
}
body {
padding-bottom: 0;
background-color:@body-bg;
min-height:100%;
font-family: 'Open Sans';
font-size:13px;
color:@text-color;
&:before{ //this is the actual content background, for example in fixed-width layouts, extra space out of content will be @body-bg colored
content:"";
display:block;
position:fixed;
top:0; bottom:0; left:0; right:0; z-index:-1;
background-color:#FFF;
}
&.navbar-fixed {
padding-top:@navbar-mh;
}
&.breadcrumbs-fixed {
padding-top:@navbar-mh + @breadcrumb-height + 1;
}
}
/* ace default theme layout sections */
.main-container {
padding:0;
position:relative;
}
.main-content {
margin-left:(@sidebar-width + 1);
margin-right:0; margin-top:0;
min-height:100%;
padding:0;
}
.page-content {
background:@content-bg;
margin:0;
padding:8px 20px 24px;
.page-header:first-child {
margin:0 0 12px;
border-bottom:1px dotted @content-header-border;
h1 {
padding:0;
margin:0 8px;
font-size:@content-header-size;
font-weight:lighter;
color:@content-header-color;
small {
margin:0 6px;
font-size:@content-header-small-size;
font-weight:normal;
color:@content-header-small-color;
}//small
}//h1
}//.page-header:first-child
}//.page-content

View File

@@ -0,0 +1,262 @@
/* custom animated icons */
.icon-animated-bell {
display: inline-block;
.animation(~"ringing 2.0s 5 ease 1.0s");
.transform-origin(~"50% 0%");
}
@-moz-keyframes ringing {
0% { -moz-transform: rotate(-15deg);}
2% { -moz-transform: rotate(15deg);}
4% { -moz-transform: rotate(-18deg);}
6% { -moz-transform: rotate(18deg);}
8% { -moz-transform: rotate(-22deg);}
10% { -moz-transform: rotate(22deg);}
12% { -moz-transform: rotate(-18deg);}
14% { -moz-transform: rotate(18deg);}
16% { -moz-transform: rotate(-12deg);}
18% { -moz-transform: rotate(12deg);}
20% { -moz-transform: rotate(0deg);}
}
@-webkit-keyframes ringing {
0% { -webkit-transform: rotate(-15deg);}
2% { -webkit-transform: rotate(15deg);}
4% { -webkit-transform: rotate(-18deg);}
6% { -webkit-transform: rotate(18deg);}
8% { -webkit-transform: rotate(-22deg);}
10% { -webkit-transform: rotate(22deg);}
12% { -webkit-transform: rotate(-18deg);}
14% { -webkit-transform: rotate(18deg);}
16% { -webkit-transform: rotate(-12deg);}
18% { -webkit-transform: rotate(12deg);}
20% { -webkit-transform: rotate(0deg);}
}
@-ms-keyframes ringing {
0% { -ms-transform: rotate(-15deg);}
2% { -ms-transform: rotate(15deg);}
4% { -ms-transform: rotate(-18deg);}
6% { -ms-transform: rotate(18deg);}
8% { -ms-transform: rotate(-22deg);}
10% { -ms-transform: rotate(22deg);}
12% { -ms-transform: rotate(-18deg);}
14% { -ms-transform: rotate(18deg);}
16% { -ms-transform: rotate(-12deg);}
18% { -ms-transform: rotate(12deg);}
20% { -ms-transform: rotate(0deg);}
}
@keyframes ringing {
0% { transform: rotate(-15deg);}
2% { transform: rotate(15deg);}
4% { transform: rotate(-18deg);}
6% { transform: rotate(18deg);}
8% { transform: rotate(-22deg);}
10% { transform: rotate(22deg);}
12% { transform: rotate(-18deg);}
14% { transform: rotate(18deg);}
16% { transform: rotate(-12deg);}
18% { transform: rotate(12deg);}
20% { transform: rotate(0deg);}
}
.icon-animated-vertical {
display: inline-block;
.animation(~"vertical 2.0s 5 ease 2.0s");
}
@-moz-keyframes vertical {
0% { -moz-transform: translate(0,-3px);}
4% { -moz-transform: translate(0,3px);}
8% { -moz-transform: translate(0,-3px);}
12% { -moz-transform: translate(0,3px);}
16% { -moz-transform: translate(0,-3px);}
20% { -moz-transform: translate(0,3px);}
22% { -moz-transform: translate(0,0);}
}
@-webkit-keyframes vertical {
0% { -webkit-transform: translate(0,-3px);}
4% { -webkit-transform: translate(0,3px);}
8% { -webkit-transform: translate(0,-3px);}
12% { -webkit-transform: translate(0,3px);}
16% { -webkit-transform: translate(0,-3px);}
20% { -webkit-transform: translate(0,3px);}
22% { -webkit-transform: translate(0,0);}
}
@-ms-keyframes vertical {
0% { -ms-transform: translate(0,-3px);}
4% { -ms-transform: translate(0,3px);}
8% { -ms-transform: translate(0,-3px);}
12% { -ms-transform: translate(0,3px);}
16% { -ms-transform: translate(0,-3px);}
20% { -ms-transform: translate(0,3px);}
22% { -ms-transform: translate(0,0);}
}
@keyframes vertical {
0% { transform: translate(0,-3px);}
4% { transform: translate(0,3px);}
8% { transform: translate(0,-3px);}
12% { transform: translate(0,3px);}
16% { transform: translate(0,-3px);}
20% { transform: translate(0,3px);}
22% { transform: translate(0,0);}
}
.icon-animated-hand-pointer {
display: inline-block;
.animation(~"hand-pointer 2.0s 4 ease 2.0s");
}
@-moz-keyframes hand-pointer {
0% { -moz-transform: translate(0,0);}
6% { -moz-transform: translate(5px,0);}
12% { -moz-transform: translate(0,0);}
18% { -moz-transform: translate(5px,0);}
24% { -moz-transform: translate(0,0);}
30% { -moz-transform: translate(5px,0);}
36% { -moz-transform: translate(0,0);}
}
.icon-animated-wrench {
display: inline-block;
.animation(~"wrenching 2.5s 4 ease");
.transform-origin(~"90% 35%");
}
@-moz-keyframes wrenching {
0% { -moz-transform: rotate(-12deg);}
8% { -moz-transform: rotate(12deg);}
10% { -moz-transform: rotate(24deg);}
18% { -moz-transform: rotate(-24deg);}
20% { -moz-transform: rotate(-24deg);}
28% { -moz-transform: rotate(24deg);}
30% { -moz-transform: rotate(24deg);}
38% { -moz-transform: rotate(-24deg);}
40% { -moz-transform: rotate(-24deg);}
48% { -moz-transform: rotate(24deg);}
50% { -moz-transform: rotate(24deg);}
58% { -moz-transform: rotate(-24deg);}
60% { -moz-transform: rotate(-24deg);}
68% { -moz-transform: rotate(24deg);}
75% { -moz-transform: rotate(0deg);}
}
@-webkit-keyframes wrenching {
0% { -webkit-transform: rotate(-12deg);}
8% { -webkit-transform: rotate(12deg);}
10% { -webkit-transform: rotate(24deg);}
18% { -webkit-transform: rotate(-24deg);}
20% { -webkit-transform: rotate(-24deg);}
28% { -webkit-transform: rotate(24deg);}
30% { -webkit-transform: rotate(24deg);}
38% { -webkit-transform: rotate(-24deg);}
40% { -webkit-transform: rotate(-24deg);}
48% { -webkit-transform: rotate(24deg);}
50% { -webkit-transform: rotate(24deg);}
58% { -webkit-transform: rotate(-24deg);}
60% { -webkit-transform: rotate(-24deg);}
68% { -webkit-transform: rotate(24deg);}
75% { -webkit-transform: rotate(0deg);}
}
@-o-keyframes wrenching {
0% { -o-transform: rotate(-12deg);}
8% { -o-transform: rotate(12deg);}
10% { -o-transform: rotate(24deg);}
18% { -o-transform: rotate(-24deg);}
20% { -o-transform: rotate(-24deg);}
28% { -o-transform: rotate(24deg);}
30% { -o-transform: rotate(24deg);}
38% { -o-transform: rotate(-24deg);}
40% { -o-transform: rotate(-24deg);}
48% { -o-transform: rotate(24deg);}
50% { -o-transform: rotate(24deg);}
58% { -o-transform: rotate(-24deg);}
60% { -o-transform: rotate(-24deg);}
68% { -o-transform: rotate(24deg);}
75% { -o-transform: rotate(0deg);}
}
@-ms-keyframes wrenching {
0% { -ms-transform: rotate(-12deg);}
8% { -ms-transform: rotate(12deg);}
10% { -ms-transform: rotate(24deg);}
18% { -ms-transform: rotate(-24deg);}
20% { -ms-transform: rotate(-24deg);}
28% { -ms-transform: rotate(24deg);}
30% { -ms-transform: rotate(24deg);}
38% { -ms-transform: rotate(-24deg);}
40% { -ms-transform: rotate(-24deg);}
48% { -ms-transform: rotate(24deg);}
50% { -ms-transform: rotate(24deg);}
58% { -ms-transform: rotate(-24deg);}
60% { -ms-transform: rotate(-24deg);}
68% { -ms-transform: rotate(24deg);}
75% { -ms-transform: rotate(0deg);}
}
@keyframes wrenching {
0% { transform: rotate(-12deg);}
8% { transform: rotate(12deg);}
10% { transform: rotate(24deg);}
18% { transform: rotate(-24deg);}
20% { transform: rotate(-24deg);}
28% { transform: rotate(24deg);}
30% { transform: rotate(24deg);}
38% { transform: rotate(-24deg);}
40% { transform: rotate(-24deg);}
48% { transform: rotate(24deg);}
50% { transform: rotate(24deg);}
58% { transform: rotate(-24deg);}
60% { transform: rotate(-24deg);}
68% { transform: rotate(24deg);}
75% { transform: rotate(0deg);}
}

382
static/css/less/infobox.less Executable file
View File

@@ -0,0 +1,382 @@
/** dashboard info and stats mini boxes **/
.infobox-container {
text-align:center;
font-size:0;
}
.infobox {
display:inline-block;
width:200px; height:52px;
color:#555;
background-color:#FFF;
box-shadow:none;
border-radius:0;
margin:-1px 0 0 -1px;
padding:8px 3px 6px 9px;
border:1px dotted;
border-color:#D8D8D8 !important;
vertical-align:middle;
text-align:left;
position:relative;
> .infobox-icon {
display:inline-block;
vertical-align:top;
width:44px;
> [class*="icon-"] {
display:inline-block;
height:42px;
margin:0;
padding:1px 1px 0 2px;
background-color:transparent;
border:none;
text-align:center;
position:relative;
.border-radius(100%);
.box-shadow(~"1px 1px 0 rgba(0,0,0,0.2)");
&:before {
font-size:24px;
display:block;
padding:6px 0 7px; width:40px; text-align:center;
.border-radius(100%);
color: rgba(255, 255, 255, 0.9);
background-color: rgba(255, 255, 255, 0.2);
text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.14);
}
}
}
.infobox-content {
color:#555;
&:first-child {/* like in small infoboxes that have no number data etc */
font-weight:bold;
}
}
> .infobox-data {
display:inline-block;
border:none;
border-top-width:0;
font-size:13px;
text-align:left;
line-height:21px;
min-width:130px;
padding-left:8px;
position:relative;
top:0;
> .infobox-data-number {
display:block;
font-size:22px;
margin:2px 0 4px;
position:relative;
text-shadow:1px 1px 0 rgba(0, 0, 0, 0.15);
}
> .infobox-text {
display:block;
font-size:16px;
margin:2px 0 4px;
position:relative;
text-shadow:none;
}
}
&.no-border {
border:none !important;
}
}
//infobox color
.infobox-color(@color) {
@infobox-class:~`"infobox-@{color}"`;
@infobox-bg:~`"infobox-@{color}"`;
@infobox-cl:@@infobox-bg;
.@{infobox-class} {
color:@infobox-cl;
border-color:@infobox-cl;
> .infobox-icon > [class*="icon-"] {
background-color:@infobox-cl;
}
&.infobox-dark {
background-color:@infobox-cl;
border-color:@infobox-cl;
}
}
}
.infobox-color(~"purple");
.infobox-color(~"purple2");
.infobox-color(~"pink");
.infobox-color(~"blue");
.infobox-color(~"blue2");
.infobox-color(~"blue3");
.infobox-color(~"red");
.infobox-color(~"brown");
.infobox-color(~"wood");
.infobox-color(~"light-brown");
.infobox-color(~"orange");
.infobox-color(~"orange2");
.infobox-color(~"green");
.infobox-color(~"green2");
.infobox-color(~"grey");
.infobox-color(~"black");
.infobox-dark {
margin:1px 1px 0 0;
border-color:transparent !important;
border:none;
color:#FFF;
padding:4px;
> .infobox-icon > [class*="icon-"] {
& , &:before {
background-color:transparent;
box-shadow:none; text-shadow:none;
border-radius:0;
font-size:30px;
}
&:before {
.opacity(100);
}
}
.infobox-content {
color:#FFF;
}
}
.infobox {
> .infobox-progress {
padding-top:0;
display:inline-block;
vertical-align:top;
width:44px;
}
> .infobox-chart {
padding-top:0;
display:inline-block;
vertical-align:text-bottom;
width:44px;
text-align:center;
> .sparkline {
font-size:24px;
}
canvas {
vertical-align:middle !important;
}
}
/* stat trend indicators and badges */
> .stat {
display:inline-block;
position:absolute; right:20px; top:11px;
text-shadow:none;
color:#ABBAC3;
font-size:13px; font-weight:bold;
padding-right:18px; padding-top:3px;
&:before {
display:inline-block;
content:"";
width:8px; height:11px;
background-color:#ABBAC3;
position:absolute; right:4px; top:7px;
}
&:after {
display:inline-block;
content:"";
position:absolute; right:1px; top:-8px;
border:12px solid transparent;
border-width:8px 7px;
border-bottom-color:#ABBAC3;
}
&.stat-success {/*pointing up*/
color:#77C646;
&:before {
background-color:#77C646;
}
&:after {
border-bottom-color:#77C646;
}
}
&.stat-important {/*pointing down*/
color:#E4564F;
&:before {
background-color:#E4564F;
top:3px;
}
&:after {
border-top-color:#E4564F;
border-bottom-color:transparent;
bottom:-6px; top:auto;
}
}
}
&.infobox-dark > .stat {
color:#FFF;
&:before {
background-color:#E1E5E8;
}
&:after {
border-bottom-color:#E1E5E8;
}
&.stat-success {
color:#FFF;
&:before {
background-color:#D0E29E;
}
&:after {
border-bottom-color:#D0E29E;
}
}
&.stat-important {
color:#FFF;
&:before {
background-color:#FF8482;
top:3px;
}
&:after {
border-top-color:#FF8482;
border-bottom-color:transparent;
bottom:-6px; top:auto;
}
}
}
> .badge {
position:absolute; right:20px; top:11px;
border-radius:0;
text-shadow:none;
color:#FFF;
font-size:11px; font-weight:bold;
line-height:15px; height:16px;
padding:0 1px;
}
&.infobox-dark > .badge {
color:#FFF;
background-color:rgba(255,255,255,0.2) !important;
border:1px solid #F1F1F1;
top:2px; right:2px;
&.badge-success > [class*="icon-"]{
color:#C6E9A1;
}
&.badge-important > [class*="icon-"]{
color:#ECB792;
}
&.badge-warning > [class*="icon-"]{
color:#ECB792;
}
}
}
.infobox-small {
width:125px; height:45px;
text-align:left;
padding-bottom:5px;
> .infobox-icon , > .infobox-chart , > .infobox-progress {
display:inline-block;
width:40px; max-width:40px; height:42px; line-height:38px;
vertical-align:middle;
}
> .infobox-data {
display:inline-block;
text-align:left;
vertical-align:middle;
max-width:72px; min-width:0;
}
> .infobox-chart > .sparkline {
font-size:14px;
margin-left:2px;
}
}
.percentage {
font-size:14px;
font-weight:bold;
display:inline-block;
vertical-align:top;
.infobox-small & {
font-size:13px; font-weight:normal;
margin-top:2px; margin-left:2px;
}
}

292
static/css/less/items.less Executable file
View File

@@ -0,0 +1,292 @@
.dialogs {
padding:9px 9px 0;
position:relative;
}
.itemdiv {
padding-right:3px;
min-height:64px;
position:relative;
> .user {
display:inline-block;
width:42px;
position:absolute;
left:0;
> img {
border-radius:120px;
border:2px solid #5293C4;
max-width:36px;
position:relative;
}
}
> .body {
width:auto;
margin-left:50px;
margin-right:12px;
//padding-left:0;
position:relative;
> .time {
display:block;
font-size:11px;
font-weight:bold;
color:#666;
position:absolute;
right:9px; top:0;
[class*="icon-"] {
font-size:14px;
font-weight:normal;
}
}// .body > .time
> .name {
display:block;
color:#999;
> b { color:#777777; }
}// .body > .name
> .text {
display:block;
padding-bottom:19px; padding-left:7px; margin-top:2px;
font-size:13px;
position:relative;
&:after {
display:block; content:"";
height:1px; font-size:0; overflow:hidden;
position:absolute;
left:16px; right:-12px; margin-top:9px;
border-top:1px solid #E4ECF3;
}
> [class*="icon-quote-"]:first-child {
color:#DCE3ED;
margin-right:4px;
}
}// .body > .text
}
&:last-child > .body > .text {
border-bottom:none;
&:after {
display:none;
}
}
&.dialogdiv {
padding-bottom:14px;
&:before {
position:absolute;
display:block; content:"";
top:0; bottom:0; left:19px;
width:1px; max-width:1px; background-color:#E1E6ED;
border:1px solid #D7DBDD;
border-width:0 1px;
}
&:last-child:before {
display:none;
}
> .user > img {
border-color:#C9D6E5;
}
> .body {
border:1px solid #DDE4ED;
padding:3px 7px 7px;
border-left-width:2px;
margin-right:1px;
&:before{
content:""; display:block;
position:absolute; left:-7px; top:11px;
width:8px; height:8px;
border:2px solid #DDE4ED;
border-width:2px 0 0 2px;
background-color:#FFF;
.rotate(-45deg);
}
> .time {
position:static;
float:right;
}
> .text {
padding-left:0;
padding-bottom:0px;
&:after {display:none;}
}
}
.tooltip > .tooltip-inner {
word-break:break-all;
}
}//end of .itemdiv.dialogdiv
&.memberdiv {
width:175px;
padding:2px;
margin:3px 0;
float:left;
border-bottom:1px solid #E8E8E8;
> .user > img {
border-color:#DCE3ED;
}
> .body {
> .time {
position:static;
}
> .name {
line-height:18px; height:18px;
margin-bottom:0;
> a {
display:inline-block;
max-width:100px; max-height:18px;
overflow:hidden;
text-overflow:ellipsis;
word-break:break-all;
}
}
}
}//.itemdiv.memberdiv
.tools {
width:20px;
position:absolute;
right:4px; bottom:16px;
display:none;
.btn {
border-radius:36px;
margin:1px 0;
}
}
.body .tools {
bottom:4px;
}
&.commentdiv .tools {
right:9px;
}
&:hover .tools{
display:inline-block;
}
}
/* task list */
.item-list {
margin:0;
padding:0;
list-style:none;
> li {
padding:9px;
background-color:#FFF;
margin-top:-1px;
position:relative;
&.selected {
color:#8090A0;
background-color:#F4F9FC;
label , .lbl {
text-decoration:line-through;
color:#8090A0;
}
}
> .checkbox {
display:inline-block;
}
> label.inline {
display:inline-block;
}
label {
font-size:13px;
}
.percentage {
font-size:11px; font-weight:bold;
color:#777;
}
&.ui-sortable-helper {
cursor:move;
}
}
}
@item-list-orange-border:#E8B110;
@item-list-orange2-border:#F79263;
@item-list-red-border:#D53F40;
@item-list-red2-border:#D15B47;
@item-list-green-border:#9ABC32;
@item-list-green2-border:#0490A6;
@item-list-blue-border:@btn-info-hover;
@item-list-blue2-border:#3983C2;
@item-list-blue3-border:#1144EB;
@item-list-pink-border:#CB6FD7;
@item-list-purple-border:#6F3CC4;
@item-list-black-border:#505050;
@item-list-grey-border:#A0A0A0;
@item-list-brown-border:brown;
@item-list-default-border:@btn-default;
li[class*="item-"] {
border:1px solid #DDD;
border-left-width:3px;
}
.item-list-color(@color) {
@item-class:~`"item-@{color}"`;
@item-color:~`"item-list-@{color}-border"`;
@item-cl:@@item-color;
li.@{item-class} {
border-left-color:@item-cl;
}
}
.item-list-color(~'orange');
.item-list-color(~'orange2');
.item-list-color(~'red');
.item-list-color(~'red2');
.item-list-color(~'green');
.item-list-color(~'green2');
.item-list-color(~'blue');
.item-list-color(~'blue2');
.item-list-color(~'blue3');
.item-list-color(~'pink');
.item-list-color(~'purple');
.item-list-color(~'black');
.item-list-color(~'grey');
.item-list-color(~'brown');
.item-list-color(~'default');
/* when dragging */
.ui-sortable-placeholder , .ui-sortable-helper {
& , & > a {
cursor:move !important;
}
}

178
static/css/less/label-badge.less Executable file
View File

@@ -0,0 +1,178 @@
/* labels & badges */
.label {
border-radius:0;
text-shadow:none;
font-size:11px;
font-weight:normal;
padding:1px 5px 3px;
background-color:@label-default !important;
&[class*="span"][class*="arrow"] {
min-height:0;
}
}
.badge {
text-shadow:none;
font-size:12px;
padding-top:1px;
padding-bottom:3px;
font-weight:normal;
line-height:15px;
background-color:@label-default !important;
&.no-radius { border-radius:0; }
&.radius-1 { border-radius:1px; }
&.radius-2 { border-radius:2px; }
&.radius-3 { border-radius:3px; }
&.radius-4 { border-radius:4px; }
&.radius-5 { border-radius:5px; }
&.radius-6 { border-radius:6px; }
}
.label-transparent, .badge-transparent {
background-color:transparent !important;
}
//labels
.label-color(@color) {
@label-class:~`"label-@{color}"`;
@badge-class:~`"badge-@{color}"`;
@label-color:@@label-class;
.@{label-class}, .@{badge-class} {
background-color:@label-color !important;
}
}
.label-arrow(@color) {
@label-class:~`"label-@{color}"`;
@label-color:@@label-class;
.@{label-class}{
&.arrowed:before {
border-right-color:@label-color;
}
&.arrowed-in:before {
border-color:@label-color;
}
&.arrowed-right:after {
border-left-color:@label-color;
}
&.arrowed-in-right:after {
border-color:@label-color;
}
}
}
.label-color(~"grey");
.label-color(~"info");
.label-color(~"primary");
.label-color(~"success");
.label-color(~"important");
.label-color(~"inverse");
.label-color(~"warning");
.label-color(~"pink");
.label-color(~"purple");
.label-color(~"yellow");
.label-color(~"light");
.badge-yellow, .label-yellow {
color:#996633 !important;
border-color:@label-yellow;
}
.badge-light, .label-light {
color:#888 !important;
}
.label.arrowed , .label.arrowed-in {
position:relative;
margin-left:9px;
&:before {
display:inline-block;
content:"";
position:absolute;
left:-14px; top:0;
border:9px solid transparent;
border-width:9px 7px;
border-right-color:@label-default;
}
}
.label.arrowed-in:before {
border-color:@label-default;
border-left-color:transparent !important;
left:-9px;
}
.label.arrowed-right , .label.arrowed-in-right {
position:relative;
margin-right:9px;
&:after {
display:inline-block;
content:"";
position:absolute;
right:-14px; top:0;
border:9px solid transparent;
border-width:9px 7px;
border-left-color:@label-default;
}
}
.label.arrowed-in-right:after {
border-color:@label-default;
border-right-color:transparent !important;
right:-9px;
}
.label-arrow(~"info");
.label-arrow(~"primary");
.label-arrow(~"success");
.label-arrow(~"warning");
.label-arrow(~"important");
.label-arrow(~"inverse");
.label-arrow(~"pink");
.label-arrow(~"purple");
.label-arrow(~"yellow");
.label-arrow(~"light");
.label-arrow(~"grey");
/* label-large */
.label-large{
font-size:13px;
padding:3px 8px 5px;
&.arrowed , &.arrowed-in {
margin-left:12px;
&:before {
left:-16px;
border-width:11px 8px;
}
}
&.arrowed-in:before {
left:-12px;
}
&.arrowed-right , &.arrowed-in-right {
margin-right:11px;
&:after {
right:-16px;
border-width:11px 8px;
}
}
&.arrowed-in-right:after {
right:-12px;
}
}

287
static/css/less/mixins-css3.less Executable file
View File

@@ -0,0 +1,287 @@
// CSS3 PROPERTIES
// --------------------------------------------------
// Border Radius
.border-radius(@radius) {
-webkit-border-radius: @radius;
-moz-border-radius: @radius;
border-radius: @radius;
}
// Single Corner Border Radius
.border-top-left-radius(@radius) {
-webkit-border-top-left-radius: @radius;
-moz-border-radius-topleft: @radius;
border-top-left-radius: @radius;
}
.border-top-right-radius(@radius) {
-webkit-border-top-right-radius: @radius;
-moz-border-radius-topright: @radius;
border-top-right-radius: @radius;
}
.border-bottom-right-radius(@radius) {
-webkit-border-bottom-right-radius: @radius;
-moz-border-radius-bottomright: @radius;
border-bottom-right-radius: @radius;
}
.border-bottom-left-radius(@radius) {
-webkit-border-bottom-left-radius: @radius;
-moz-border-radius-bottomleft: @radius;
border-bottom-left-radius: @radius;
}
// Single Side Border Radius
.border-top-radius(@radius) {
.border-top-right-radius(@radius);
.border-top-left-radius(@radius);
}
.border-right-radius(@radius) {
.border-top-right-radius(@radius);
.border-bottom-right-radius(@radius);
}
.border-bottom-radius(@radius) {
.border-bottom-right-radius(@radius);
.border-bottom-left-radius(@radius);
}
.border-left-radius(@radius) {
.border-top-left-radius(@radius);
.border-bottom-left-radius(@radius);
}
// Drop shadows
.box-shadow(@shadow) {
-webkit-box-shadow: @shadow;
-moz-box-shadow: @shadow;
box-shadow: @shadow;
}
// Transitions
.transition(@transition) {
-webkit-transition: @transition;
-moz-transition: @transition;
-o-transition: @transition;
transition: @transition;
}
.transition-delay(@transition-delay) {
-webkit-transition-delay: @transition-delay;
-moz-transition-delay: @transition-delay;
-o-transition-delay: @transition-delay;
transition-delay: @transition-delay;
}
.transition-duration(@transition-duration) {
-webkit-transition-duration: @transition-duration;
-moz-transition-duration: @transition-duration;
-o-transition-duration: @transition-duration;
transition-duration: @transition-duration;
}
// Transformations
.rotate(@degrees) {
-webkit-transform: rotate(@degrees);
-moz-transform: rotate(@degrees);
-ms-transform: rotate(@degrees);
-o-transform: rotate(@degrees);
transform: rotate(@degrees);
}
.scale(@ratio) {
-webkit-transform: scale(@ratio);
-moz-transform: scale(@ratio);
-ms-transform: scale(@ratio);
-o-transform: scale(@ratio);
transform: scale(@ratio);
}
.translate(@x, @y) {
-webkit-transform: translate(@x, @y);
-moz-transform: translate(@x, @y);
-ms-transform: translate(@x, @y);
-o-transform: translate(@x, @y);
transform: translate(@x, @y);
}
.skew(@x, @y) {
-webkit-transform: skew(@x, @y);
-moz-transform: skew(@x, @y);
-ms-transform: skewX(@x) skewY(@y); // See https://github.com/twitter/bootstrap/issues/4885
-o-transform: skew(@x, @y);
transform: skew(@x, @y);
-webkit-backface-visibility: hidden; // See https://github.com/twitter/bootstrap/issues/5319
}
.translate3d(@x, @y, @z) {
-webkit-transform: translate3d(@x, @y, @z);
-moz-transform: translate3d(@x, @y, @z);
-o-transform: translate3d(@x, @y, @z);
transform: translate3d(@x, @y, @z);
}
// Backface visibility
// Prevent browsers from flickering when using CSS 3D transforms.
// Default value is `visible`, but can be changed to `hidden
// See git pull https://github.com/dannykeane/bootstrap.git backface-visibility for examples
.backface-visibility(@visibility){
-webkit-backface-visibility: @visibility;
-moz-backface-visibility: @visibility;
backface-visibility: @visibility;
}
// Background clipping
// Heads up: FF 3.6 and under need "padding" instead of "padding-box"
.background-clip(@clip) {
-webkit-background-clip: @clip;
-moz-background-clip: @clip;
background-clip: @clip;
}
// Background sizing
.background-size(@size) {
-webkit-background-size: @size;
-moz-background-size: @size;
-o-background-size: @size;
background-size: @size;
}
// Box sizing
.box-sizing(@boxmodel) {
-webkit-box-sizing: @boxmodel;
-moz-box-sizing: @boxmodel;
box-sizing: @boxmodel;
}
// User select
// For selecting text on the page
.user-select(@select) {
-webkit-user-select: @select;
-moz-user-select: @select;
-ms-user-select: @select;
-o-user-select: @select;
user-select: @select;
}
// Resize anything
.resizable(@direction) {
resize: @direction; // Options: horizontal, vertical, both
overflow: auto; // Safari fix
}
// CSS3 Content Columns
.content-columns(@columnCount, @columnGap: @gridGutterWidth) {
-webkit-column-count: @columnCount;
-moz-column-count: @columnCount;
column-count: @columnCount;
-webkit-column-gap: @columnGap;
-moz-column-gap: @columnGap;
column-gap: @columnGap;
}
// Optional hyphenation
.hyphens(@mode: auto) {
word-wrap: break-word;
-webkit-hyphens: @mode;
-moz-hyphens: @mode;
-ms-hyphens: @mode;
-o-hyphens: @mode;
hyphens: @mode;
}
// Opacity
.opacity(@opacity) {
opacity: @opacity / 100;
filter: ~"alpha(opacity=@{opacity})";
}
// BACKGROUNDS
// --------------------------------------------------
// Add an alphatransparency value to any background or border color (via Elyse Holladay)
#translucent {
.background(@color: @white, @alpha: 1) {
background-color: hsla(hue(@color), saturation(@color), lightness(@color), @alpha);
}
.border(@color: @white, @alpha: 1) {
border-color: hsla(hue(@color), saturation(@color), lightness(@color), @alpha);
.background-clip(padding-box);
}
}
// Gradient Bar Colors for buttons and alerts
.gradientBar(@primaryColor, @secondaryColor, @textColor: #fff, @textShadow: 0 -1px 0 rgba(0,0,0,.25)) {
color: @textColor;
text-shadow: @textShadow;
#gradient > .vertical(@primaryColor, @secondaryColor);
border-color: @secondaryColor @secondaryColor darken(@secondaryColor, 15%);
border-color: rgba(0,0,0,.1) rgba(0,0,0,.1) fadein(rgba(0,0,0,.1), 15%);
}
// Gradients
#gradient {
.horizontal(@startColor: #555, @endColor: #333) {
background-color: @endColor;
background-image: -moz-linear-gradient(left, @startColor, @endColor); // FF 3.6+
background-image: -webkit-gradient(linear, 0 0, 100% 0, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+
background-image: -webkit-linear-gradient(left, @startColor, @endColor); // Safari 5.1+, Chrome 10+
background-image: -o-linear-gradient(left, @startColor, @endColor); // Opera 11.10
background-image: linear-gradient(to right, @startColor, @endColor); // Standard, IE10
background-repeat: repeat-x;
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",argb(@startColor),argb(@endColor))); // IE9 and down
}
.vertical(@startColor: #555, @endColor: #333) {
background-color: mix(@startColor, @endColor, 60%);
background-image: -moz-linear-gradient(top, @startColor, @endColor); // FF 3.6+
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+
background-image: -webkit-linear-gradient(top, @startColor, @endColor); // Safari 5.1+, Chrome 10+
background-image: -o-linear-gradient(top, @startColor, @endColor); // Opera 11.10
background-image: linear-gradient(to bottom, @startColor, @endColor); // Standard, IE10
background-repeat: repeat-x;
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@startColor),argb(@endColor))); // IE9 and down
}
.directional(@startColor: #555, @endColor: #333, @deg: 45deg) {
background-color: @endColor;
background-repeat: repeat-x;
background-image: -moz-linear-gradient(@deg, @startColor, @endColor); // FF 3.6+
background-image: -webkit-linear-gradient(@deg, @startColor, @endColor); // Safari 5.1+, Chrome 10+
background-image: -o-linear-gradient(@deg, @startColor, @endColor); // Opera 11.10
background-image: linear-gradient(@deg, @startColor, @endColor); // Standard, IE10
}
.horizontal-three-colors(@startColor: #00b3ee, @midColor: #7a43b6, @colorStop: 50%, @endColor: #c3325f) {
background-color: mix(@midColor, @endColor, 80%);
background-image: -webkit-gradient(left, linear, 0 0, 0 100%, from(@startColor), color-stop(@colorStop, @midColor), to(@endColor));
background-image: -webkit-linear-gradient(left, @startColor, @midColor @colorStop, @endColor);
background-image: -moz-linear-gradient(left, @startColor, @midColor @colorStop, @endColor);
background-image: -o-linear-gradient(left, @startColor, @midColor @colorStop, @endColor);
background-image: linear-gradient(to right, @startColor, @midColor @colorStop, @endColor);
background-repeat: no-repeat;
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@startColor),argb(@endColor))); // IE9 and down, gets no color-stop at all for proper fallback
}
.vertical-three-colors(@startColor: #00b3ee, @midColor: #7a43b6, @colorStop: 50%, @endColor: #c3325f) {
background-color: mix(@midColor, @endColor, 80%);
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), color-stop(@colorStop, @midColor), to(@endColor));
background-image: -webkit-linear-gradient(@startColor, @midColor @colorStop, @endColor);
background-image: -moz-linear-gradient(top, @startColor, @midColor @colorStop, @endColor);
background-image: -o-linear-gradient(@startColor, @midColor @colorStop, @endColor);
background-image: linear-gradient(@startColor, @midColor @colorStop, @endColor);
background-repeat: no-repeat;
filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@startColor),argb(@endColor))); // IE9 and down, gets no color-stop at all for proper fallback
}
.radial(@innerColor: #555, @outerColor: #333) {
background-color: @outerColor;
background-image: -webkit-gradient(radial, center center, 0, center center, 460, from(@innerColor), to(@outerColor));
background-image: -webkit-radial-gradient(circle, @innerColor, @outerColor);
background-image: -moz-radial-gradient(circle, @innerColor, @outerColor);
background-image: -o-radial-gradient(circle, @innerColor, @outerColor);
background-repeat: no-repeat;
}
.striped(@color: #555, @angle: 45deg) {
background-color: @color;
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,.15)), color-stop(.75, rgba(255,255,255,.15)), color-stop(.75, transparent), to(transparent));
background-image: -webkit-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
background-image: -moz-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
background-image: -o-linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
background-image: linear-gradient(@angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
}
}
// Reset filters for IE
.reset-filter() {
filter: e(%("progid:DXImageTransform.Microsoft.gradient(enabled = false)"));
}

33
static/css/less/mixins.less Executable file
View File

@@ -0,0 +1,33 @@
//transform
.transform(@transformation) {
-moz-transform:@transformation;
-webkit-transform:@transformation;
-o-transform:@transformation;
-ms-transform:@transformation;
transform:@transformation;
}
.transform-origin(@origin) {
-moz-transform-origin:@origin;
-webkit-transform-origin:@origin;
-o-transform-origin:@origin;
-ms-transform-origin:@origin;
transform-origin:@origin;
}
//animation
.animation(@params) {
-moz-animation:@params;
-webkit-animation:@params;
-o-animation:@params;
-ms-animation:@params;
animation:@params;
}
.animation-duration(@duration:1s) {
-moz-animation-duration:@duration;
-webkit-animation-duration:@duration;
-o-animation-duration:@duration;
-ms-animation-duration:@duration;
animation-duration:@duration;
}

189
static/css/less/other.less Executable file
View File

@@ -0,0 +1,189 @@
@ace-settings-box-border:#FFB34B;
@datepicker-active-bg:#2283C5;
@datepicker-disabled-bg:#8B9AA3;
@datepicker-active-bg2:#7D8893;//inside .well
/* other page sections */
.ace-settings-container {
position:absolute;
right:0; top:50px;
z-index:12;
.breadcrumbs-fixed & {
top:50px - (@breadcrumb-height) - 1;
}
}
.btn.ace-settings-btn {
float:left;
display:inline-block;
width:42px !important;
text-align:center;
.border-radius(~"6px 0 0 6px") !important;
.opacity(55);
vertical-align:top;
margin:0;
&:hover , &.open {
.opacity(100);
}
}
.ace-settings-box {
display:none;
float:left;
width:140px; padding:0 14px;
background-color:#FFF;
border:2px solid @ace-settings-box-border;
&.open {
display:inline-block;
}
> div {
margin:6px 0;
color:#444;
max-height:24px;
> label {
font-size:13px;
}
}
}
.btn-scroll-up {
border:none;
position:absolute; right:2px; bottom:2px;
z-index:11;
line-height:20px;
padding-bottom:4px;
}
.grid2, .grid3, .grid4 {
.box-sizing(border-box);
display:block;
margin:0;
float:left;
border-left:1px solid #E3E3E3;
&:first-child {
border-left:none;
}
}
.grid2 {
width:48%;
padding:0 2%;
}
.grid3 {
width:33%;
padding:0 2%;
}
.grid4 {
width:23%;
margin:0 1%; padding:0 1%;
}
.draggable-placeholder { /* for when dragging items around */
border:2px dashed #D9D9D9 !important;
background-color:#F7F7F7 !important;
}
/* scrollbar */
.slimScrollBar { .border-radius(0) !important; }
.slimScrollRail { .border-radius(0) !important; }
/* date & time picker */
.datepicker , .daterangepicker {
td , th { .border-radius(0) !important; }
td.active {
& , &:hover { background:@datepicker-active-bg !important; }
&.disabled {
& , &:hover { background:@datepicker-disabled-bg !important; }
}
}
}
.datepicker-months .month.active , .datepicker-years .year.active {
& , &:hover , &:focus, &:active {
background-image:none !important;
background-color:@datepicker-active-bg !important;
border-radius:0 !important;
}
}
.bootstrap-timepicker-widget table td a:hover {
.border-radius(0);
}
.well .datepicker table tr td.day:hover {
background-color:@datepicker-active-bg2;
color:#FFF;
}
/* a few small third party css files put here to reduce http file requests */
/* jquery.easy-pie-chart.css */
.easyPieChart {
position: relative;
text-align: center;
canvas {
position: absolute;
top: 0;
left: 0;
}
}
.knob-container {
direction:ltr;
text-align:left;
}
/* ie8/9 specific */
.navbar .navbar-inner , .navbar .btn-navbar {
filter:progid:DXImageTransform.Microsoft.gradient(enabled=false) !important;
}
.dropdown-menu li > a,
.dropdown-submenu > a {
filter:progid:DXImageTransform.Microsoft.gradient(enabled=false) !important;
}
.btn {
filter:progid:DXImageTransform.Microsoft.gradient(enabled=false) !important;
}
.progress , .progress .bar {
filter:progid:DXImageTransform.Microsoft.gradient(enabled=false) !important;
}

View File

@@ -0,0 +1,6 @@
/* error pages*/
.error-container {
margin:20px;
padding:0;
background:#FFF;
}

686
static/css/less/page.inbox.less Executable file
View File

@@ -0,0 +1,686 @@
.inbox-tabs.nav-tabs {
> li {
> a {
background-color:#FAFAFA;
}
&.active:not(.open) > a {
& , &:hover, &:focus {
background-color:#F1F5FA;
box-shadow:0 -2px 3px 0 rgba(0, 0, 0, 0.1);
color:#48768E;
}
}
> a.btn-new-mail {
background-color:transparent;
border:none !important;
padding:0 !important;
> .btn {
border-width:0 !important;
border-radius:3px !important;
padding:0 6px !important;
position:relative;
transition:none !important;
}
}
&.active > a.btn-new-mail {
box-shadow:none !important;
> .btn:before {
content:"";
display:block;
position:absolute; top:100%; left:35%; left:~"calc(50% - 6px)";
border-width:6px 8px;
border-style:solid;
border-color:transparent;
border-top-color:inherit;
}
}
}
&.tab-size-bigger > li {
> a {
padding:6px 15px;
font-size:14px;
> [class*="icon-"]:first-child {
margin-bottom:5px;
}
&.btn-new-mail > .btn{
padding:5px 10px !important;
border-radius:7px !important;
}
}
&.active > a.btn-new-mail {
margin-top:0 !important;
top:1px;
}
&.active > a.btn-new-mail > .btn:before {
left:35%; left:~"calc(50% - 8px)";
border-width:8px 10px;
}
}
}
@media only screen and (max-width: 475px) {
.inbox-tabs > .li-new-mail {
display:block;
text-align:right;
margin-bottom:8px !important;
float:none !important;
}
.inbox-tabs > .li-new-mail > .btn-new-mail {
display:inline-block;
width:auto;
}
}
.message-container {
position:relative;
}
.message-list {
position:relative;
}
.message-item {
border:1px solid #EAEDF1;
border-bottom-width:0;
padding:12px 12px 14px;
line-height:18px;
position:relative;
background-color:#FFF;
&:first-child {
border-top-width:0;
}
&:hover {
border-color:#E2EAF2;
background-color:#F2F6F9;
+ .message-item {
border-top-color:#E2EAF2;
&.selected {
border-top-color:#FFF;
}
}
}
&.selected {
background-color:#EFF4F7;
border-color:#FFF #E2EAF2;
+ .message-item{
border-top-color:#FFF;
&:hover + .message-item {
border-top-color:#FFF;
}
}
}
}
.message-item {
.sender {
margin:0 6px 0 4px;
vertical-align:middle;
color:#467287;
display:inline-block;
width:110px; height:18px;
text-overflow:ellipsis;
overflow:hidden;
white-space: nowrap;
cursor:pointer;
}
&.message-unread .sender {
color:#6A9CBA; font-weight:bold;
}
.summary {
vertical-align:middle;
display:inline-block;
position:relative;
margin-left:30px;
max-width:250px;
max-width:~"calc(100% - 300px)";
min-width:200px;
white-space: nowrap;
.text {
color:#555;
vertical-align:middle;
display:inline-block;
width:auto;
max-width:100%;
height:18px;
text-overflow:ellipsis;
overflow:hidden;
white-space: nowrap;
cursor:pointer;
&:hover {
text-decoration:underline;
}
}
.message-flags {
display:block;
position:absolute;
right:101%;
right:~"calc(100% + 4px)";
height:18px;
white-space: nowrap;
}
}
&.message-unread .summary .text {
color:#609FC4;
font-weight:bold;
}
.time {
float:right;
width:60px;
height:18px;
text-overflow:ellipsis;
overflow:hidden;
white-space: nowrap;
color:#666;
}
&.message-unread .time {
font-weight:bold;
color:#609FC4;
}
.attachment{
color:#999;
font-size:18px;
vertical-align:middle;
float:right;
margin:0 12px;
position:relative;
}
&.message-unread .attachment{
color:#4F99C6;
}
}
.message-content .time {
font-weight:normal;
}
.message-star{
vertical-align:middle;
margin:2px 4px 0 6px;
font-size:15px;
cursor:pointer;
&:hover {
color:@ace-orange2 !important;
text-decoration:none;
}
}
.mail-tag:empty {
display:inline-block;
width:8px; height:8px;
padding:0; line-height:normal;
vertical-align:middle;
margin:0 1px 0 0;
}
.badge.mail-tag{
border-radius:2px;
}
@media only screen and (max-width: 979px) {
.message-item .summary {
min-width:0;
}
.message-item .sender {
width:100px;
}
}
@media only screen and (max-width: 550px) {
.message-item .summary {
margin:8px 0 0 32px;
max-width:95%;
min-width:0;
display:block;
}
.message-item .sender {
width:auto;
max-width:150px;
}
.message-item .summary .text {
max-width:95%;
}
}
.btn-message , .btn-message:hover {
background-color:#FFF !important;
border:1px solid #94B9CE !important;
color:#7CA3BA !important;
text-shadow:none !important;
}
.message-content {
padding:16px 12px;
border:1px solid #E9E9E9;
.box-shadow(~"0 0 1px 1px rgba(0,0,0,0.02)");
background-color:rgba(255,255,255,0.8);
border-top-width:0;
.message-item & {
margin-top:16px;
border-top-width:1px;
}
}
.message-body {
padding:0 9px;
color:#6A7177;
}
.message-navbar {
line-height:24px;
padding:10px 12px;
border:1px solid #D6E1EA;
border-color:#D6E1EA transparent;
background-color:#F1F5FA;
position:relative;
}
.message-navbar , .message-content {
.dropdown-toggle {
color:#777;
&:hover, &:focus {
text-decoration:none;
color:#2283C5;
}
}
}
.message-bar {
display:inline-block;
min-height:28px;
}
@media only screen and (max-width: 480px) {
.message-bar {
display:block;
min-height:60px;
}
}
.message-footer {
background-color:#F1F1F1;
padding:12px 16px;
border:1px solid #E6E6E6;
border-width:1px 0;
border-top:1px solid #E4E9EE;
.pagination {
margin:0;
> li {
margin:0;
padding:0;
> a , > span {
color:#777;
padding-left:2px;
padding-right:2px;
margin-left:3px;
margin-right:3px;
}
&.disabled > span {
color:#BBBBBB;
cursor:default;
}
> a:hover {
color:#2283C5;
text-decoration:none;
}
}
}
input[type=text] {
font-size:12px;
width:20px; height:14px; line-height:10px;
margin-bottom:0;
padding:3px;
vertical-align:middle; text-align:center;
}
}
.message-footer-style2 .pagination > li {
> a , > span {
border:1px solid #B5B5B5;
border-radius:100%;
width:24px; height:24px; line-height:22px;
display:inline-block;
text-align:center;
padding:0;
}
> span {
border-color:#CCC;
}
> a:hover {
border-color:#84AFC9;
background-color:#F7F7F7;
}
}
.message-item.message-inline-open {
background-color:#F2F6F9;
border:1px solid #DDD;
border-bottom-color:#CCC;
&:first-child {
border-top-color:#EEE;
}
&:last-child {
border-bottom-color:#DDD;
}
+ .message-item {
border-bottom-color:transparent;
}
}
.message-loading {
position:absolute; z-index:14;
left:0; right:0; top:0; bottom:0;
background-color:rgba(255,255,255,0.5);
text-align:center;
> [class*="icon-"] {
position:relative; top:25%;
}
}
.message-content {
.sender {
color:#6A9CBA;
font-weight:bold;
width:auto;
text-overflow:inherit;
vertical-align:middle;
margin:0;
}
.time {
width:auto;
text-overflow:inherit;
white-space:normal;
float:none;
vertical-align:middle;
}
}
ul.attachment-list {
margin:6px 0 4px 8px;
> li{
margin-bottom:3px;
}
}
.message-attachment {
padding-left:10px;
padding-right:10px;
}
.attached-file {
color:#777;
width:200px;
> [class*="icon-"] {
display:inline-block;
width:16px;
margin-right:2px;
}
&:hover {
text-decoration:none;
color:#438EB9;
.attached-name {
color:#2283C5;
}
}
.attached-name {
display:inline-block;
max-width:175px;
text-overflow:ellipsis;
overflow:hidden;
white-space: nowrap;
}
}
.messagebar-item-left , .messagebar-item-right {
position:absolute;
bottom:14px;
left:12px;
text-align:left;
}
.messagebar-item-right {
right:12px;
left:auto;
}
.message-navbar .nav-search {
right:auto;
left:60px;
top:auto;
bottom:11px;
}
.message-form {
border:1px solid #ddd;
border-top:none;
padding-top:22px;
}
@media only screen and (min-width: 481px) {
.message-form .control-label{
width:110px;
color:#777;
}
.message-form .controls{
margin-left:125px;
}
.message-form .control-group {
margin-left:20px;
margin-right:20px;
}
}
@media only screen and (max-width: 480px) {
.message-form {
padding-left:16px;
padding-right:16px;
}
}
.message-form {
.form-actions {
margin-bottom:0;
}
.wysiwyg-editor {
overflow:auto;
min-height:150px;
max-height:250px;
height:auto;
}
}
.btn-send-message {
position:relative;
top:6px;
}
.btn-back-message-list {
color:#777;
&:hover {
color:#478FCA;
text-decoration:none;
}
}
.message-condensed {
.message-item {
padding-top:8px;
padding-bottom:9px;
}
.message-navbar , .message-footer {
padding-top:7px;
padding-bottom:7px;
}
.messagebar-item-left , .messagebar-item-right {
bottom:9px;
}
.message-navbar .nav-search {
bottom:7px;
}
}
@media only screen and (max-width: 480px) {
.message-condensed .message-bar {
min-height:42px;
}
}
//alternative to tabs
.inbox-folders .btn-block {
margin-top:0;
}
@media only screen and (max-width: 767px) {
.inbox-folders.responsive .btn-block {
width:24%;
}
}
@media only screen and (max-width: 600px) {
.inbox-folders.responsive .btn-block {
width:48%;
}
}
@media only screen and (max-width: 320px) {
.inbox-folders.responsive .btn-block {
width:99%;
}
}
.inbox-folders .btn-lighter , .inbox-folders .btn-lighter.active {
background-color:#F4F4F4 !important;
text-shadow:none !important;
color:#7C8395 !important;
border:1px solid #FFF !important;
padding:5px 11px;
}
.inbox-folders .btn-lighter.active {
background-color:#EDF2F8 !important;
color:#53617C !important;
}
.inbox-folders .btn-lighter:hover {
background-color:#EFEFEF !important;
color:#6092C4 !important;
}
.inbox-folders .btn > [class*="icon-"]:first-child {
display:inline-block;
width:14px;
text-align:left;
}
.inbox-folders .btn-lighter + .btn-lighter {
border-top-width:0 !important;
}
.inbox-folders .btn.active:before{
display:block;
content:"";
position:absolute;
top:1px; bottom:1px; left:-1px;
border-left:3px solid #4F99C6;
}
.inbox-folders .btn.active:after{
display:none;
}
.inbox-folders .btn .counter {
border-radius:3px;
position:absolute;
right: 8px;
top:8px;
padding-left:6px; padding-right:6px;
opacity:0.75;
}
.inbox-folders .btn:hover .badge{
opacity:1;
}

View File

@@ -0,0 +1,17 @@
/* invoice */
.invoice-info {
line-height:24px !important;
color:#444444;
vertical-align:bottom;
margin-left:9px; margin-right:9px;
}
.invoice-info-label {
display:inline-block;
max-width:100px;
text-align:right;
font-size:14px;
}
.invoice-box .label-large[class*="arrowed"]{
margin-left:11px !important;
max-width:95%;
}

183
static/css/less/page.login.less Executable file
View File

@@ -0,0 +1,183 @@
/* login pages */
.login-container {
width:375px;
margin:0 auto;
}
.login-layout {
background:#1D2024;
&:before {
display:none;
}
.main-content {
margin-left:0;
min-height:100%;
}
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"] {
line-height:32px;
height:32px; max-height:32px;
margin-bottom:4px;/* default is 10 */
}
label {
margin-bottom:11px;
}
.widget-box {
visibility:hidden;
position:absolute;
overflow:hidden;
width:100%;
border-bottom:none;
box-shadow:none;
padding:6px;
background-color:#394557;
.transform(~"scale(0,1) translate(-150px)");
&.visible {
visibility:visible;
.transform(~"scale(1,1) translate(0)");
.transition(~"all .3s ease");
-o-transition: none;/* too slow */
-webkit-transition: none;/* works in chrome but not in safari, never scales back to 1! */
}
.widget-main {
padding:16px 36px 36px;
background:#F7F7F7;
form {
margin:0;
}
}
.widget-body .toolbar > div > a {
font-size:15px;
font-weight:400;
text-shadow:1px 0px 1px rgba(0,0,0,0.25);
}
}
}
.login-box {
.forgot-password-link { color:#FE9; }
.user-signup-link { color:#CF7; }
.toolbar {
background:#5090C1;
border-top:2px solid #597597;
> div {
width:50%;
display:inline-block;
padding:9px 0 11px;
&:first-child {//the first link
float:left;
text-align:left;
> a {
margin-left:11px;
}
+ div {//the next one
float:right;
text-align:right;
> a {
margin-right:11px;
}
}
}
}
}
}
.forgot-box .toolbar {
background:#C16050;
border-top:2px solid #976559;
padding:9px 18px;
}
.signup-box .toolbar {
background:#76B774;
border-top:2px solid #759759;
padding:9px 18px;
}
.forgot-box .back-to-login-link , .signup-box .back-to-login-link{
color:#FE9;
font-size:14px;
font-weight:bold;
text-shadow:1px 0px 1px rgba(0,0,0,0.25);
}
/* social login */
.login-layout .login-box .widget-main {
padding-bottom:16px;
}
.login-box {
.social-or-login {
margin-top:4px;
position:relative; z-index:1;
:first-child {
display:inline-block;
background: #F7F7F7;
padding: 0 8px;
color: #5090C1; font-size: 13px;
}
&:before {
content:""; display:block;
position:absolute; z-index:-1;
top:50%; left:0; right:0;
border-top:1px dotted #A6C4DB;
}
}
.social-login {
margin-top:12px;
a {
border-radius:100%;
width:42px; height:42px; line-height:46px;
padding:0;
margin:0 1px;
border:none;
> [class*="icon-"] {
font-size:24px;
}
}
}
}

105
static/css/less/page.pricing.less Executable file
View File

@@ -0,0 +1,105 @@
/* pricing table */
.pricing-box {
.price{
font-size:22px;
line-height:20px; height:28px;
text-align:center;
color:#555;
small { font-size:14px; }
}
.btn { font-size:16px; } /* the purchase button */
.widget-header {/* the title */
text-align:center;
padding-left:0;
}
}
.pricing-table-header {
padding-top:0;
margin-top:0;
text-align:left;
> li {
padding:7px 0 7px 11px;
font-size:13px;
}
}
.pricing-table {
margin-top:0;
> li {
text-align:center;
padding:7px 0;
font-size:13px;
}
}
.list-striped {
> li {
&:nth-child(odd) {
background-color:#FFF;
}
&:nth-child(even) {
background-color:#F2F3EB;
}
}
&.pricing-table-header > li:nth-child(even) {
background-color:#EEE;
}
}
.pricing-box-small {
box-shadow:none;
margin-left:-2px;
background-color:#FFF;
position:relative;
z-index:100;
.price {
line-height:20px; height:28px;
text-align:center;
.label {
&:before, &:after {
margin-top:-2px;
.opacity(90);
}
}
}
&:hover {
box-shadow:0 0 4px 2px rgba(0,0,0,0.15);
z-index:101;
.scale(1.04);
-webkit-transform:none;/*chrome blurs when scaled, so disable it!*/
.price > .label {
.scale(0.96);
-webkit-transform:none;
}
}
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
.pricing-box-small:hover {
-webkit-transform:none;
zoom:1.04;
left:-1px; top:-3px;
}
}
.pricing-span[class*="span"] {
margin:0;
max-width:150px !important;
float:left !important;
}

348
static/css/less/page.profile.less Executable file
View File

@@ -0,0 +1,348 @@
.profile-user-info {
margin:0 12px;
}
.profile-info-row {
position:relative;
}
.profile-info-name {
position:absolute;
width:110px;
text-align:right;
padding:6px 10px 6px 0;
left:0;
top:0; bottom:0;
font-weight:normal;
color:#667E99;
background-color:transparent;
border-top:1px dotted #D5E4F1;
}
.profile-info-value {
padding:6px 4px 6px 6px;
margin-left:120px;
border-top:1px dotted #D5E4F1;
> span + span:before{/* for a list of values (such as location city & country) put a comma between them */
display:inline;
content:",";
margin-left:1px;
margin-right:3px;
color:#666;
border-bottom:1px solid #FFF;
}
> span + span.editable-container:before {
display:none;
}
}
.profile-info-row {
&:first-child .profile-info-name {
border-top:none;
}
&:first-child .profile-info-value {
border-top:none;
}
}
.profile-user-info-striped {
border:1px solid #DCEBF7;
.profile-info-name {
color:#336199;
background-color:#EDF3F4;
border-top:1px solid #F7FBFF;
}
.profile-info-value {
border-top:1px dotted #DCEBF7;
padding-left:12px;
}
}
.profile-picture {
border:1px solid #CCC;
background-color:#FFF;
padding:4px;
display:inline-block;
max-width:100%;
-moz-box-sizing:border-box;
box-shadow:1px 1px 1px rgba(0,0,0,0.15);
}
.profile-activity {
padding:10px 4px;
border-bottom:1px dotted #D0D8E0;
position:relative;
border-left:1px dotted #FFF;
border-right:1px dotted #FFF;
&:first-child {
border-top:1px dotted transparent;
&:hover {
border-top-color:#D0D8E0;
}
}
&:hover {
background-color:#F4F9FD;
border-left:1px dotted #D0D8E0;
border-right:1px dotted #D0D8E0;
}
img {
border:2px solid #C9D6E5;
border-radius:100%;
max-width:36px;
margin-right:10px;
margin-left:0px;
box-shadow:none;
}
.thumbicon {
background-color:#74ABD7;
display:inline-block;
width:40px; height:40px;
border-radius:100%;
color:#FFF; font-size:18px;
text-align:center; line-height:40px;
margin-right:10px; margin-left:0px;
text-shadow:none !important;
}
.time {
display:block;
margin-top:4px;
color:#777;
}
a.user {
font-weight:bold;
color:#9585BF;
}
.tools {
position:absolute;
right: 12px;
bottom:8px;
display:none;
}
&:hover .tools {
display:block;
}
}
.user-profile .ace-thumbnails li {
border:1px solid #CCC;
padding:3px;
margin:6px;
.tools {
left:3px; right:3px;
}
&:hover .tools {
bottom:3px;
}
}
.user-profile .user-title-label {
&:hover {
text-decoration:none;
}
+ .dropdown-menu {
margin-left:-12px;
}
}
.profile-contact-links {
padding: 4px 2px 5px;
border: 1px solid #E0E2E5;
background-color: #F8FAFC;
}
.profile-contact-info .btn-link{
&:hover > [class*="icon-"] , &:focus > [class*="icon-"]{
text-decoration:none;
}
}
.profile-social-links > a {
text-decoration:none;
margin:0 1px;
&:hover > [class*="icon-"] {
text-decoration:none;
}
}
.profile-skills .progress {
height: 24px;
margin-bottom: 2px;
background-color:transparent;
.bar {
line-height:24px;
font-size:13px; font-weight:bold;
font-family:"Open Sans";
padding:0 8px;
}
}
.profile-users {
.user {
display:block;
position:static;
text-align:center;
width:auto;
img {
padding:2px;
.border-radius(100%);
border:1px solid #AAA;
max-width:none;
width:64px;
.transition(~"all 0.1s");
&:hover {
.box-shadow(~"0 0 1px 1px rgba(0,0,0,0.33)");
}
}
}
.memberdiv {
background-color:#FFF;
width:100px;
.box-sizing(border-box);
border:none;
text-align:center;
margin:0 8px 24px;
.name a:hover [class*="icon-"] {
text-decoration:none;
}
.body {
display:inline-block;
margin:8px 0 0 0;
}
.popover {
visibility:hidden;
min-width: 150px;
margin-left:0;
margin-right:0;
top:-5%;
left:auto; right:auto;
z-index:-1;
opacity:0;
display:none;
.transition(~"visibility 0s linear 0.2s, z-index 0s linear 0.2s, opacity 0.2s linear 0s");
&.right {
left:100%;
right:auto;
display:block;
}
&.left {
left:auto;
right:100%;
display:block;
}
}
> :first-child:hover .popover {
visibility:visible;
opacity:1;
z-index:@zindexPopover;
-webkit-transition-delay:0s;
-moz-transition-delay:0s;
-o-transition-delay:0s;
transition-delay:0s;
}
.tools {
position:static;
display:block;
width:100%;
margin-top:2px;
> a {
margin:0 2px;
&:hover {
text-decoration:none;
}
}
}
}
}
.user-status {
display:inline-block;
width:5px; height:5px;
background-color:#FFF;
border:3px solid #AAA;
.border-radius(100%);
vertical-align:middle;
margin-right:1px;
&.status-online{
border-color:#8AC16C;
}
&.status-busy{
border-color:#E07F69;
}
&.status-idle{
border-color:#FFB752;
}
}
.tab-content.profile-edit-tab-content {
border:1px solid #DDD;
padding:8px 32px 32px;
.box-shadow(~"1px 1px 0 0 rgba(0, 0, 0, 0.2)");
background-color: #FFF;
}
.user-profile .form-horizontal {
.control-label {
width:125px;
}
.controls {
margin-left:140px;
}
}

View File

@@ -0,0 +1,275 @@
.timeline-container {
position:relative;
padding-top:4px;
margin-bottom:32px;
&:last-child {
margin-bottom:0;
}
&:before {
/* the vertical line running through icons */
content:"";
display:block;
position:absolute;
left:28px;
top:0;
bottom:0;
border:1px solid #E2E3E7;
background-color:#E7EAEF;
width:2px;
border-width:0 1px;
}
&:first-child:before {
border-top-width:1px;
}
&:last-child:before {
border-bottom-width:1px;
}
}
.timeline-item {
position:relative;
margin-bottom:8px;
.widget-box {
background-color:#F2F6F9;
color:#595C66;
}
.transparent.widget-box {
border-left:3px solid #DAE1E5;
}
.transparent {
.widget-header {
background-color:#ECF1F4;
border-bottom:none;
> :first-child {
margin-left:8px;
}
}
}
&:nth-child(even) .widget-box {
background-color:#F3F3F3;
color:#616161;
&.transparent {
border-left-color:#DBDBDB !important;
.widget-header {
background-color:#EEE !important;
}
}
}
}
.timeline-item {
.widget-box {
margin:0;
position:relative;
max-width:none;
border-bottom:none;
margin-left:60px;
}
.widget-main {
margin:0;
position:relative;
max-width:none;
border-bottom:none;
}
.widget-body {
background-color:transparent;
}
.widget-toolbox {
padding:4px 8px 0 !important;
background-color:transparent !important;
border:0 solid #CCC !important;
border-top:none !important;
margin:0 0px !important;
}
}
.timeline-info {
float:left;
width:60px;
text-align:center;
position:relative;
img {
border-radius:100%;
max-width:36px;
}
.label , .badge {
font-size:12px;
}
}
.timeline-container:not(.timeline-style2) .timeline-indicator {
opacity:1;
border-radius: 100%;
display: inline-block;
font-size: 16px;
height: 30px;
line-height: 30px;
text-align: center;
width: 30px;
text-shadow: none !important;
padding:0;
cursor:default;
border:3px solid #FFF !important;
img& {
border-color:#FFF !important;
padding:3px;
width:auto; height:auto; line-height:auto;
max-width:32px;
}
}
.timeline-label {
display:block;
clear:both;
margin:0 0 18px;
margin-left:34px;
}
.timeline-item img {
border:1px solid #AAA;
padding:2px;
background-color:#FFF;
}
.timeline-style2 {
&:before {
display:none;
}
.timeline-item {
padding-bottom:22px;
margin-bottom:0;
&:last-child {
padding-bottom:0;
}
&:before {
content:"";
display:block;
position:absolute;
left:90px; top:5px; bottom:-5px;
border-width:0;
background-color:#DDD;
width:2px;
max-width:2px;
}
&:last-child:before {
display:none;
}
&:first-child:before {
display:block;
}
}
}
.timeline-style2 {
.timeline-item .transparent .widget-header {
background-color:transparent !important;
}
.timeline-item .transparent.widget-box {
background-color:transparent !important;
border-left:none !important;
}
.timeline-info {
width:100px;
}
.timeline-indicator {
font-size: 0;
height: 8px;
line-height: 8px;
width: 8px;
border-width: 1px !important;
background-color: #FFFFFF !important;
position:absolute;
left:86px; top:3px;
opacity:1;
border-radius: 100%;
display: inline-block;
padding:0;
}
.timeline-date {
display:inline-block;
width:72px;
text-align:right;
margin-right:25px;
color:#777;
}
.timeline-item .widget-box {
margin-left:112px;
}
.timeline-label {
width:75px;
text-align:center;
margin-left:0; margin-bottom:10px;
text-align:right;
color:#666;
font-size:14px;
}
}
.timeline-time {
text-align:center;
position:static;
}

141
static/css/less/progressbar.less Executable file
View File

@@ -0,0 +1,141 @@
/* progressbar */
.progress {
border-radius:0;
height:18px;
box-shadow:none;
background:#DADADA;
.bar {
box-shadow:none;
line-height:18px;
}
&[data-percent] {
position:relative;
&:after {
display:inline-block;
content:attr(data-percent);
color:#FFF;
position:absolute;
left:0; right:0; top:0; bottom:0; line-height:16px;
text-align:center;
font-size:12px; font-family:Verdana;
}
}
&.progress-yellow[data-percent]:after {
color:#996633;
}
&.progress-small {
height:12px;
.bar {
line-height:10px;
font-size:11px;
}
&[data-percent]:after {
line-height:10px;
font-size:11px;
}
}
&.progress-mini {
height:9px;
.bar {
line-height:8px;
font-size:11px;
}
&[data-percent]:after {
line-height:8px;
font-size:11px;
}
}
}
.progress .bar {
background-image:none;
background-color:#2A91D8;
}
.progress-danger .bar, .progress .bar-danger {
background-image:none;
background-color:#CA5952;
}
.progress-success .bar, .progress .bar-success {
background-image:none;
background-color:#59A84B;
}
.progress-warning .bar, .progress .bar-warning {
background-image:none;
background-color:#F2BB46;
}
.progress-pink .bar, .progress .bar-pink {
background-image:none;
background-color:#D6487E;
}
.progress-purple .bar, .progress .bar-purple {
background-image:none;
background-color:#9585BF;
}
.progress-yellow .bar, .progress .bar-yellow {
background-image:none;
background-color:#FFD259;
}
.progress-inverse .bar, .progress .bar-inverse {
background-image:none;
background-color:#404040;
}
.progress-grey .bar, .progress .bar-grey {
background-image:none;
background-color:#8A8A8A;
}
.progress .bar + .bar {
box-shadow:none;
}
.progress-danger.progress-striped .bar, .progress-striped .bar-danger {
background-color:#CC4942;
}
.progress-warning.progress-striped .bar, .progress-striped .bar-warning {
background-color:#EBA450;
}
.progress-success.progress-striped .bar, .progress-striped .bar-success {
background-color:#55B83B;
}
.progress-info.progress-striped .bar, .progress-striped .bar-info {
background-color:#148BCF;
}
.progress-pink.progress-striped .bar, .progress-striped .bar-pink {
#gradient > .striped(#D6487E);
}
.progress-purple.progress-striped .bar, .progress-striped .bar-purple {
#gradient > .striped(#9585BF);
}
.progress-yellow.progress-striped .bar, .progress-striped .bar-yellow {
#gradient > .striped(#FFD259);
}
.progress-inverse.progress-striped .bar, .progress-striped .bar-inverse {
#gradient > .striped(#404040);
}
.progress-grey.progress-striped .bar, .progress-striped .bar-grey {
#gradient > .striped(#8A8A8A);
}
.progress {
position:relative;
}
.progress:before {
display:inline-block;
content:"";
position:absolute;
left:0; right:0;
top:0; bottom:0;
background:radial-gradient(9px 9px 0deg, circle cover, aqua 0%, rgba(0, 0, 255, 0) 100%, blue 95%);
}

1966
static/css/less/rtl.less Executable file

File diff suppressed because it is too large Load Diff

192
static/css/less/searchbox.less Executable file
View File

@@ -0,0 +1,192 @@
//some searchbox variables
@search-border:#6FB3E0;
@search-color:#666;
@search-color-focus:#656A72;
@search-width:120px;
@sb-search-width:130px;
@search-border-radius:4px;
/* searchbox */
.nav-search {
position:absolute;
top:6px; right:22px;
line-height:24px;
.form-search {
margin-bottom:0;
}
.nav-search-input {
border-color:@search-border;
border-width:1px;
width:@search-width;
height:18px !important;
.border-radius(@search-border-radius) !important;
font-size:13px;
color:@search-color !important;
z-index:11;
.transition(~"width ease .15s");
& + .dropdown-menu { /* the typeahead menu*/
min-width:0;
left:0; right:0;
}
&:focus , &:hover{
border-color:@search-border;
}
}
//.nav-search-btn {
// border-radius:0;
// }
.nav-search-icon {
color:@search-border !important;
font-size:14px !important;
line-height:24px !important;
}
&.minimized {
.nav-search-input {
width:0; opacity:0;
max-width:0; /* for safari only */
}
&:hover .nav-search-input ,
.nav-search-btn:active + .nav-search-input ,
.nav-search-input:focus, .nav-search-input:hover, .nav-search-input:active
{
opacity:1;
width:120px;
max-width:120px; /* for safari only */
}
.nav-search-icon {
border:1px solid;
border-radius:100%;
background-color:#FFF;
padding:0 5px;
}
&:hover .nav-search-icon ,
.nav-search-input:focus ~ .nav-search-icon,
.nav-search-input:hover ~ .nav-search-icon,
.nav-search-input:active ~ .nav-search-icon
{
border:none;
border-radius:0;
padding:0 3px;
}
}
}
.nav_search_icon_active() {
border:none;
border-radius:0;
padding:0 3px;
}
.nav-search-icon {
.nav_search_icon_active();
}
/* nav-search inside sidebar */
.sidebar > .nav-search {
position:static;
background-color:#FAFAFA;
border-bottom:1px solid #DDD;
text-align:center;
height:35px;
padding-top:6px;
.nav-search-input {
width:@sb-search-width !important;
border-radius:0 !important;
max-width:@sb-search-width !important;
.opacity(100) !important;
& + .dropdown-menu { text-align:left; }
}
}//nav-search inside sidebar
/* sidebar when minimized */
.searchbox_inside_min_menu() {
.nav-search {
.form-search {
position:absolute; left:5px;
z-index:14;
}
.nav_search_input_active() {
width:@sb-search-width !important;
max-width:@sb-search-width !important;
.opacity(100) !important;
}
.nav-search-input {
width:0 !important;
max-width:0 !important;
.opacity(0) !important;
&:hover, &:focus, &:active {
.nav_search_input_active();
~ #nav-search-icon {
.nav_search_icon_active();
}
}
}
&:hover .nav-search-input {
.nav_search_input_active();
~ .nav-search-icon {
.nav_search_icon_active();
}
}
.nav-search-icon {/* inside minimized sidebar */
border:1px solid;
border-radius:32px;
background-color:#FFF;
padding:0 5px;
}
}
}
.sidebar.menu-min {
.searchbox_inside_min_menu();
}
/**
@media only screen and (max-width: 979px) {
.sidebar.responsive-min {
.searchbox_inside_min_menu();
}
}
*/

218
static/css/less/sidebar-min.less Executable file
View File

@@ -0,0 +1,218 @@
.menu_min() {
&.sidebar {
width:@sidebar-min-width;
&:before {
width:@sidebar-min-width;
}
+ .main-content {
margin-left:(@sidebar-min-width + 1);
.breadcrumbs.fixed , .breadcrumbs.breadcrumbs-fixed { left:(@sidebar-min-width + 1); }
}
}
.nav-list a {
.badge , .label {
position:relative;
top:-1px;
right:auto;
left:4px;
}
}
.nav-list .submenu .submenu a {
.badge , .label {
top:0;
}
}
.nav-list > li {
> a {
position:relative;
> .menu-text {
display:none;
position:absolute;
left:(@sidebar-min-width - 1); top:-2px;
width:(@sidebar-width - 31); height:39px;
line-height:38px;
background-color:@menumin-bg;
z-index:121;
.box-shadow(@menumin-shadow);
border:1px solid @menumin-border;
padding-left:12px;
}
&.dropdown-toggle > .menu-text {
.box-shadow(none);
border:none;
top:-1px; left:@sidebar-min-width;
width:(@sidebar-width - 26);
border-bottom:1px solid @menumin-text-border;
}
.arrow {
display:none;
}
&:hover:before {/* the right side border on hover */
width:2px;
}
}
&:hover > a {
color:@menu-focus-color;
> .menu-text {
display:block;
}
}
&.active > a > .menu-text {
border-left-color:@menu-focus-color;
}
&.open > a {
background-color:@menu-open-bg;
color:@menu-color;
}
&.open.active > a {
background-color:@menu-active-bg;
}
&.open:hover > a {
color:@menu-focus-color;
}
&.active > a {
color:@menu-active-color;
}
&.active > a:after { /* the caret */
border-width:10px 6px;
top:8px;
}
&.active.open > a:after {
display:block;
}
&.active.open li.active > a:after {
display:none;
}
> .submenu {
background:@submenu-bg;
position:absolute; z-index:120;
left:(@sidebar-min-width - 1); top:-2px;
width:(@sidebar-width - 14);
border:1px solid @menumin-border;
.box-shadow(@menumin-shadow);
padding-top:40px;
padding-bottom:2px;
display:none !important;
&:before {
/* hide the tree like submenu in minimized mode */
display:none;
}
li {
&:before {
display:none;
}
> a {
//border-left:none;
margin-left:0;
padding-left:24px;
> [class*="icon-"]:first-child {
left:4px;
}
}
}
}
&:hover > .submenu {
display:block !important;
}
&.active > .submenu {
border-left-color:@menu-focus-color;
}
}
//sidebar shortcuts
.sidebar-shortcuts {
position:relative;
}
.sidebar-shortcuts-mini {
display:block;
}
.sidebar-shortcuts-large {
display:none;
position:absolute; left:@sidebar-min-width; top:-1px;
width:(@sidebar-width - 14);
z-index:20;
background-color:@submenu-bg;
.box-shadow(@menumin-shadow);
border:1px solid @menumin-border;
padding:0 2px 3px;
}
.sidebar-shortcuts:hover .sidebar-shortcuts-large{
display:block;
}
.sidebar-collapse { /* minimized collapse button */
&:before {
left:5px; right:5px;
}
> [class*="icon-"] {
font-size:13px;
padding:0 4px;
line-height:15px;
border-width:1px;
border-color:darken(@menumin-icon-border, 5%);
}
}
.nav-list > li > .submenu {
li > .submenu > li {
> a {/*3rd level*/
margin-left:0px;
padding-left:30px;
}
> .submenu > li > a {/*4th level*/
margin-left:0px;
padding-left:45px;
}
}
li.active > a:after {
display:none;
}
}
.nav-list li.active.open > .submenu > li.active > a:after {
display: none;
}
}
.menu-min {
.menu_min();
}

628
static/css/less/sidebar.less Executable file
View File

@@ -0,0 +1,628 @@
//some sidebar variables
@sidebar-bg:#F2F2F2;
@sidebar-border-right:#CCC;
//@menu-active-color:#0B6CBC;
@menu-active-color:#2B7DBC;
@menu-bg:#F9F9F9;
@menu-color:#585858;
@menu-focus-color:#1963AA;
@menu-hover-indicator:#3382AF;
@menu-subarrow-color:#666;
@menu-open-bg:#FAFAFA;
@menu-active-bg:#FFF;
@submenu-border:#E5E5E5;
@submenu-bg:#FFF;
@submenu-item-color:#616161;
@submenu-item-border:#E4E4E4;
@submenu-item-hover:#4B88B7;
@submenu-item-active-icon:#C86139;
@submenu-left-border:mix(#BCCFE0 , #7EAACB);
@submenu-active-left-border:mix(mix(#BCCFE0 , #7EAACB) , #7EAACB);
@3rd-level-icon-color:#6A7D87;
@submenu-left-border-style:dotted;
//@submenu-left-border:#CCD7E2;
//@submenu-active-left-border:#BCCFE0;
@menumin-btn-bg:#F3F3F3;
@menumin-btn-border:#E0E0E0;
@menumin-icon-color:#AAA;
@menumin-icon-border:#BBB;
@menumin-icon-bg:#FFF;
@menumin-bg:#F5F5F5;
@menumin-border:#CCC;
@menumin-text-border:#DDD;
@menumin-shadow:~"2px 1px 2px 0 rgba(0,0,0,0.2)";
@shortcuts-bg:#FAFAFA;
@shortcuts-border:#DDD;
.sidebar {
width:@sidebar-width;
position:relative;
float:left;
border-right:1px solid @sidebar-border-right;
background-color:@sidebar-bg;
&:before {/* the grey background of sidebar */
content:""; display:block;
width:@sidebar-width;
position:fixed; bottom:0px; top:0px;
z-index:-1;
background-color:@sidebar-bg;
border-right:1px solid @sidebar-border-right;
}
&.fixed , &.sidebar-fixed {
position:fixed;
z-index:@zindexFixedNavbar - 1;
top:@navbar-mh;
left:0;
&:before {
left:0;
right:auto;
}
}
}
/* side navigation */
li [class^="icon-"], li [class*=" icon-"]{
& , .nav-list & {
width:auto;
}
}
.nav-list {
margin:0; padding:0;
list-style:none;
}
.nav-list > li > a, .nav-list .nav-header {
margin:0;
}
.nav-list > li {
display:block;
padding:0;
margin:0;
border:none;
border-top:1px solid #FCFCFC;
border-bottom:1px solid #E5E5E5;
position:relative;
&:first-child {
border-top:none;
}
}
.nav-list > li {
> a {
display:block;
height:38px; line-height:36px;
padding:0 16px 0 7px;
background-color:@menu-bg;
color:@menu-color;
text-shadow:none !important;
font-size:13px;
text-decoration:none;
> [class*="icon-"]:first-child {
display:inline-block;
vertical-align:middle;
min-width:30px;
text-align:center;
font-size:18px;
font-weight:normal;
}
&:focus {
background-color:@menu-bg;
color:@menu-focus-color;
}
&:hover {
background-color:#FFF;
color:@menu-focus-color;
&:before {
display:block; content:"";
position:absolute;
top:-1px; bottom:0; left:0;
width:3px; max-width:3px; overflow:hidden;
background-color:@menu-hover-indicator;
}
}
}
/* the submenu indicator arrow */
a > .arrow {
display:inline-block;
width:14px !important; height:14px;
line-height:14px;
text-shadow:none;
font-size:18px;
position:absolute;
right:9px; top:11px;
padding:0;
color:@menu-subarrow-color;
}
a:hover > .arrow , &.active > a > .arrow , &.open > a > .arrow {
color:@menu-focus-color;
}
&.separator {
height:3px;
background-color:transparent;
position:static;
margin:1px 0;
.box-shadow(none);
}
/* menu active/open states */
&.open > a {
background-color:@menu-open-bg;
color:@menu-focus-color;
}
&.active {
background-color:@menu-active-bg;
> a
{
& , &:hover, &:focus, &:active {
background-color:@menu-active-bg;
color:@menu-active-color;
font-weight:bold;
font-size:13px;
}
> [class*="icon-"] {
font-weight:normal;
}
&:hover:before {/* no left side menu item border on active state */
display:none;
}
}
//////
&:after {/* the border on right of active item */
display:inline-block; content:"";
position:absolute;
right:-2px; top:-1px; bottom:0;
border-right:2px solid @menu-active-color;
}
}
/* submenu */
&.open {
border-bottom-color:@submenu-border;
}
&.active .submenu {
display:block;
}
.submenu {
display:none;
list-style:none;
margin:0; padding:0;
position:relative;
background-color:@submenu-bg;
border-top:1px solid @submenu-border;
> li {
margin-left:0;
position:relative;
> a {
display:block;
position:relative;
color:@submenu-item-color;
padding:7px 0 8px 37px;
margin:0;
border-top:1px dotted @submenu-item-border;
&:focus {
text-decoration:none;
}
&:hover{
text-decoration:none;
color:@submenu-item-hover;
}
}
&.active > a {
color:@menu-active-color;
}
/* optional icon before each item */
a > [class*="icon-"]:first-child {
display:none;
font-size:12px; font-weight:normal;
width:18px; height:auto; line-height:12px; text-align:center;
position:absolute; left:10px; top:11px; z-index:1;
background-color:#FFF;
}
&.active > a > [class*="icon-"]:first-child,
&:hover > a > [class*="icon-"]:first-child {
display:inline-block;
}
&.active > a > [class*="icon-"]:first-child {
color:@submenu-item-active-icon;
}
}// > li
}//end of submenu
> .submenu {//the first level submenu
> li {
//tree like menu
&:before {
/* the horizontal line */
content:""; display:inline-block;
position:absolute;
width:7px;
left:20px; top:17px;
border-top:1px @submenu-left-border-style @submenu-left-border;
}
&:first-child > a {
border-top:1px solid #FAFAFA;
}
}
&:before {
content:"";
display:block;
position:absolute; z-index:1;
left:18px;
top:0; bottom:0;
border-left:1px @submenu-left-border-style @submenu-left-border;
}
}
&.active {
> .submenu {
> li {
&:before {
border-top-color:@submenu-active-left-border;
}
}
&:before {
border-left-color:@submenu-active-left-border;
}
}
}
}//end of .nav-list > li
//.nav-list li
.nav-list li {
.active_state_caret() {
display:block;
content:"";
position:absolute !important;
right:0; top:4px;
border:8px solid transparent;
border-width:14px 10px;
border-right-color:@menu-active-color;
}
.submenu {
/* needed for webkit based browsers to slideToggle without problem */
overflow:hidden;
}
&.active > a:after {
.active_state_caret();
}
&.open > a:after {/* no caret for open menu item */ //we put this after .active > a:after to override it
display:none;
}
&.active.open > .submenu > li.active.open > a.dropdown-toggle:after {
/* don't display caret on active open item who is open and has children */
display: none;
}
&.active > .submenu > li.active > a:after {
/** don't display caret on active item whose parent is not open
useful for hiding the caret when submenu is sliding up */
display: none;
}
&.active.open > .submenu > li.active > a:after {
/* display caret on active item whose parent is open */
display: block;
}
&.active.no-active-child {
> a:after {/* show caret for active menu item with childs which is not open(i.e. no submenu item is active) */
display:inline-block !important;
}
}
}//end of .nav-list li
.nav-list a {
.badge , .label {
font-size:12px;
padding-left:6px; padding-right:6px;
position:absolute;
top:9px; right:11px;
opacity:0.88;
[class*="icon-"] {
vertical-align:middle;
margin:0;
}
}
&.dropdown-toggle {
.badge , .label {
right:28px;
}
}
&:hover {
.badge , .label {
opacity:1;
}
}
}
.nav-list .submenu .submenu a {
.badge , .label {
top:6px;
}
}
/* side menu minimizer icon */
.sidebar-collapse {
border-bottom:1px solid @menumin-btn-border;
background-color:@menumin-btn-bg;
text-align:center;
padding:3px 0;
position:relative;
> [class*="icon-"]{
display:inline-block;
cursor:pointer;
font-size:14px;
color:@menumin-icon-color;
border:1px solid @menumin-icon-border;
padding:0 5px;
line-height:18px;
border-radius:16px;
background-color:@menumin-icon-bg;
position:relative;
}
&:before {
content:"";
display:inline-block;
height:0;
border-top:1px solid @menumin-btn-border;
position:absolute;
left:15px; right:15px; top:13px;
}
}
/* sidebar shortcuts icon */
.sidebar-shortcuts {
background-color:@shortcuts-bg;
border-bottom:1px solid @shortcuts-border;
text-align:center;
line-height:37px; max-height:40px;
margin-bottom:0;
}
.sidebar-shortcuts-large {
padding-bottom:4px;
> .btn > [class*="icon-"] { font-size:110%; }
}
.sidebar-shortcuts-mini {
display:none;
font-size:0;
width:42px;
line-height:18px;
padding-top:2px; padding-bottom:2px;
background-color:@submenu-bg;
> .btn{
border-width:0 !important;
font-size:0;
line-height:0;
padding:8px !important;
margin:0 1px;
border-radius:0 !important;
.opacity(85);
}
}
//3rd & 4th level menu
.nav-list > li > .submenu {
li > .submenu {
border-top:none;
background-color:transparent;
display:none;
}
li.active > .submenu {
display:block;
}
a > .arrow {
right:11px; top:10px;
font-size:16px;
color:#6B828E;
}
li > .submenu > li > a > .arrow {
right:12px;
top:9px;
}
li > .submenu > li {
line-height:16px;
&:before {//the tree like menu
display:none;
}
> a {/*3rd level*/
margin-left:20px;
padding-left:22px;
}
> .submenu > li > a {/*4th level*/
margin-left:20px;
padding-left:38px;
}
a > [class*="icon-"]:first-child {
display:inline-block;
color:inherit;
font-size:14px;
position:static;
background-color:transparent;
}
a {
font-size:13px;
color:#777;
&:hover {
color:desaturate(@menu-focus-color, 25%);
text-decoration:underline;
[class*="icon-"] {
text-decoration:none;
color:desaturate(@menu-focus-color, 25%);
}
}
}
}
li.open > a {
color:desaturate(@menu-focus-color, 12%);
> [class*="icon-"]:first-child {
display:inline-block;
}
.arrow {
color:desaturate(@menu-focus-color, 12%);
}
}
li > .submenu li.open > a {
color:desaturate(@menu-focus-color, 12%);
> [class*="icon-"]:first-child {
display:inline-block;
color:@menu-focus-color;
}
.arrow {
color:desaturate(@menu-focus-color, 12%);
}
}
li > .submenu li.active > a {
color:desaturate(@menu-active-color, 8%);
> [class*="icon-"]:first-child {
display:inline-block;
color:desaturate(@menu-active-color, 8%);
}
}
}//.nav-list > li > .submenu
.nav-list > li {
&.active.open li.active > a:after {
top:2px;
border-width:14px 8px;
}
&.active.open li.active.open li.active > a:after {
top:0;
}
}
@import "sidebar-min.less";//minimized sidebar mode
/* side menu toggler in mobile view */
.menu-toggler {
display:none;
}

View File

@@ -0,0 +1,538 @@
@accordion-border:#CDD8E3;
@accordion-header-text:@ace-blue;
@accordion-header-text-hover:#6EA6CC;
@accordion-header-hover-bg:#F1F8FD;
@accordion-active-bg:#EEF4F9;
.tab-content {
border:1px solid @tab-border;
padding:16px 12px;
position:relative; z-index:11;
}
.tab-content.no-padding {
padding:0;
}
.tab-content.no-border {
border:none;
padding:12px;
}
.tab-content {
.tab-paddingX (@index) when (@index >= 0) {
&.padding-@{index} { padding:unit(@index,px) unit(ceil(@index * 0.75),px); }
&.no-border.padding-@{index} { padding:unit(@index,px); }
.tab-paddingX(@index - 2);
}
.tab-paddingX(32);
}
.nav-tabs {
.navtab-paddingX (@index) when (@index > 0) {
&.padding-@{index} { padding-left:unit(@index,px); }
.tabs-right > &.padding-@{index} , .tabs-left > &.padding-@{index} { padding-left:0; padding-top:unit(@index,px); }
.navtab-paddingX(@index - 2);
}
.navtab-paddingX(32);
}
.nav-tabs {
border-color:#C5D0DC;
margin-bottom:0;
position:relative;
top:1px;
> li {
> a {
&,&:focus {
border-radius:0 !important;
background-color:#F9F9F9;
color:#999;
margin-right:-1px;
line-height:16px;
position:relative; z-index:11;
border-color:@tab-border;
}
&:hover {
background-color:#FFF;
color:@tab-hover-color;
border-color:@tab-border;
}
&:active, &:focus {
outline:none !important;
}
}//a
&:first-child > a {
margin-left:0;
}
&.active > a{
&,&:hover,&:focus {
color:@tab-active-color;
border-color:@tab-border;
border-top:2px solid @tab-active-border;
border-bottom-color:transparent;
background-color:#FFF;
z-index:12; line-height:16px;
margin-top:-1px;
box-shadow: 0 -2px 3px 0 rgba(0,0,0,0.15);
}
}
}
.tabs-below > & {
/* tabs below */
top:auto;
margin-bottom:0;
margin-top:-1px;
border-color:@tab-border;
> li {
> a {
&,&:hover,&:focus {
border-color:@tab-border;
}
}
&.active > a {
&,&:hover,&:focus {
border-color:@tab-border;
border-top-width:1px;
border-bottom:2px solid @tab-active-border;
border-top-color:transparent;
margin-top:0;
box-shadow: 0 2px 3px 0 rgba(0,0,0,0.15);
}
}
}
}
.tabs-left > & > li > a, .tabs-right > & > li > a {
/* tabs left */
min-width:60px;
}
.tabs-left > & {
top:auto;
margin-bottom:0;
margin-right:-1px;
border-color:@tab-border;
> li {
> a {
&,&:focus,&:hover {
border-color:@tab-border;
margin:0 -1px 0 0;
}
}
&.active {
> a {
&,&:focus,&:hover {
border-color:@tab-border;
border-top-width:1px;
border-left:2px solid @tab-active-border;
border-right-color:transparent;
margin:0 -1px 0 -1px;
box-shadow: -2px 0 3px 0 rgba(0,0,0,0.15);
}
}
}
}
}
.tabs-right > & {
/* tabs right */
top:auto;
margin-bottom:0;
margin-left:-1px;
border-color:@tab-border;
> li {
> a {
&,&:focus,&:hover {
border-color:@tab-border;
margin:0 0 0 -1px;
}
}
&.active {
> a {
&,&:focus,&:hover {
border-color:@tab-border;
border-top-width:1px;
border-right:2px solid @tab-active-border;
border-left-color:transparent;
margin:0 -1px 0 -1px;
box-shadow: 2px 0 3px 0 rgba(0,0,0,0.15);
}
}
}
}
}
> li > a {
/* icon and badges */
> .badge {
padding:0 4px;
line-height:15px;
opacity:0.7;
}
> [class*="icon-"] { opacity:0.75; }
}
> li.active > a {
> .badge , > [class*="icon-"] {
opacity:1;
}
}
li [class*=" icon-"] , li [class^="icon-"]{
width:1.25em;
display:inline-block;
text-align:center;
}
> li.open .dropdown-toggle {
/* dropdown in tabs */
background-color: #4F99C6;
border-color: #4F99C6;
color: #FFF;
> [class*="icon-"] {
color:#FFF !important;
}
.caret {
margin-top:7px;
}
}
.dropdown-toggle .caret { margin-top:7px; }
}
.nav-pills .open .dropdown-toggle, .nav > li.dropdown.open.active > a:hover, .nav > li.dropdown.open.active > a:focus {
background-color: #4F99C6;
border-color: #4F99C6;
color: #FFFFFF;
> [class*="icon-"] {
color:#FFF !important;
}
}
/* bigger tab buttons */
.nav-tabs > li:not(.active):not(.open) > a:not(:hover) > [class*="icon-"]:first-child.disabled {
color:#909090 !important;
}
/* bigger tab buttons */
.nav-tabs.tab-size-bigger > li > a {
padding-left:14px;
padding-right:14px;
> [class*="icon-"]:first-child {
display:block;
margin-bottom:6px;
width:auto;
}
}
//some tab customizations
/* spaced tabs (top & bottom) */
.nav-tabs.tab-space-1 > li > a {
margin-right:1px;
}
.nav-tabs.tab-space-2 > li > a {
margin-right:2px;
}
.nav-tabs.tab-space-3 > li > a {
margin-right:3px;
}
.nav-tabs.tab-space-4 > li > a {
margin-right:4px;
}
/* blue tabs*/
.nav-tabs.background-blue {
padding-top:6px;
background-color:#EFF3F8;
border:1px solid #C5D0DC;
}
@tab-color-blue:#7DB4D8;
//@tab-color-green:#87B87F;
//@tab-color-orange:#F39C12;
.nav-tabs[class*="tab-color-"] > li > a {
& , &:focus, &:hover {
color:#FFF;
border-color:transparent;
margin-right:3px;
}
> .badge {
border-radius:2px;
}
}
.nav-tabs[class*="tab-color-"] > li:not(.active) > a {
&:hover {
opacity:0.85;
border-color:rgba(0,0,0,0.15);
border-bottom-color:transparent;
}
> [class*="icon-"]:first-child{
color:#FFF !important;
}
> .badge{
color:rgba(0,0,0,0.4) !important;
background-color:#FFF !important;
border-radius:2px;
}
}
.nav-tabs.tab-color-blue > li > a {
& , &:focus {
background-color:@tab-color-blue;
}
}
.nav-tabs[class*="tab-color-"] > li.active > a {
& , &:focus, &:hover {
background-color:#FFF;
color:darken(desaturate(@tab-color-blue, 20%), 20%);
box-shadow:none;
}
}
.nav-tabs.tab-color-blue > li.active > a {
& , &:focus, &:hover {
color:darken(desaturate(@tab-color-blue, 25%), 25%);
}
}
.nav-tabs.tab-color-blue > li.active > a {
& , &:focus, &:hover {
border-color:@tab-color-blue @tab-color-blue transparent;
}
}
.nav-tabs.tab-color-blue {
border-bottom-color:#C5D0DC;
}
/** accordion */
.accordion-group {
border-radius:0;
border-color:@accordion-border;
background-color:#FFF;
&:last-child {
border-bottom-width:1px;
}
}
.collapse {
background-color:#FFF;
}
.accordion-heading .accordion-toggle {
color:@tab-hover-color;
background-color:@accordion-active-bg;
position:relative;
font-weight:bold;
&.collapsed {
color:@accordion-header-text;
font-weight:normal;
background-color:#F9F9F9;
}
&:hover {
color:@accordion-header-text-hover;
background-color:@accordion-header-hover-bg;
text-decoration:none;
}
&:after{
display:inline-block;
content:"\f107";
font-family:FontAwesome;
font-size:16px;
color:@tab-hover-color;
position:absolute; right:6px;
width:14px; line-height:18px;
text-align:center;
}
&.collapsed:after{
content:"\f104";
color:#679;
}
&.collapsed:hover:after{
color:@tab-hover-color;
}
&:focus,&:active {
outline:none;
text-decoration:none;
}
> [class*="icon-"]:first-child{
width:16px;
}
&:hover > [class*="icon-"]:first-child{
text-decoration:none;
}
}
.accordion-inner {
& , .collapse.in > & {
border-top:1px solid @accordion-border;
}
&.no-padding {
padding:0;
}
}
//style2, used in faq, etc...
.accordion-style2 {
.accordion-group {
border-width:0;
margin-bottom:4px;
}
.accordion-heading .accordion-toggle {
background-color:#EDF3F7;
font-weight:bold;
padding-top:10px;
padding-bottom:10px;
padding-left:30px;
border:2px solid #6EAED1;
border-width:0 0 0 2px;
&:hover {
text-decoration:none;
}
&.collapsed {
background-color:#F3F3F3;
color:#606060;
font-weight:normal;
border-width:0 0 0 1px;
border-color:#D9D9D9;
&:hover {
background-color:#F6F6F6;
color:#438EB9;
text-decoration:none;
}
}
> [class*="icon-"]:first-child {
display:inline-block;
width:18px;
text-align:center;
margin-right:6px;
}
&:after {
content:"\f078";
font-size:11px;
font-weight:bold;
color:#62A8D1;
position:absolute;
left:8px; right:auto;
top:8px; bottom:8px;
width:16px;
line-height:24px;
text-align:center;
}
&.collapsed:after {
content:"\f054";
}
&:after {
color:inherit;
}
&:hover:after {
color:inherit;
}
}
.accordion-inner, .collapse.in > .accordion-inner {
border-top:none;
}
}
/* nested questions */
.accordion-style2 .accordion-style2 {
.accordion-group {
border-bottom:1px dotted #D9D9D9;
&:last-child {
border-bottom:none;
}
.accordion-heading .accordion-toggle {
background-color:transparent;
border-width:0;
padding-top:6px; padding-bottom:6px;
font-size:13px;
&:after {
line-height:18px;
}
}
}
}

1
static/css/less/tables.less Executable file
View File

@@ -0,0 +1 @@
@table-header-bg:@widget-blue;

View File

@@ -0,0 +1,180 @@
/* full calendar */
.fc-header-title > h2 {
font-size:22px;
color:#65A0CE;
}
.fc-widget-header,
.fc-widget-content {
border: 1px solid #BCD4E5;
}
.fc-state-highlight {
background: #FFC;
}
.fc-event-skin {
border:none !important; /* default BORDER color */
background-color:#ABBAC3;
padding:0 0 1px 2px;
.label-yellow & { color:#996633; }
.label-light & { color:#888; }
[class*="label-"] > & , [class*="label-"] > & > .fc-event-skin.fc-event-head {
background-color: inherit;
}
&.ui-draggable-dragging {
cursor:move;
}
&.fc-event-vert , .fc-event-vert > &
{
padding:0 0 1px;
}
}
.fc-grid .fc-day-number {
color:#2E6589;
}
.fc-widget-header {
background:#ECF2F7;
color:#8090A0;
}
//
//.fc-grid th , th.fc-widget-header{
// height:28px;
// vertical-align:middle !important;
//}
.fc-event-hori , .fc-event-vert {
border-radius:0 !important;
border-color:transparent;
}
.fc-event-vert {
.fc-event-content {
padding-left:1px;
padding-right:1px;
}
.fc-event-time {
padding:0;
}
}
.fc-state-default {
& , & .fc-button-inner {
border:none;
background-color:#ABBAC3;
color:#FFF;
background-image:none;
box-shadow:none;
text-shadow:none;
border-radius:0 !important;
margin-left:2px;
}
border:none;
.fc-button-effect {
display:none;
}
}
.fc-state-disabled {
& , & .fc-button-inner {
.opacity(75);
color:#DDD;
}
}
.fc-state-active {
& , & .fc-button-inner {
border-color:#4F99C6;
background-color:#6FB3E0;
}
}
.fc-state-hover {
& , & .fc-button-inner {
background-color:#8B9AA3;
}
}
.external-event {
margin:6px 0;
padding:0;
cursor:default;
display:block;
color:#FFF;
background-color:#ABBAC3;
font-size:13px; line-height:28px;
&:hover {
.opacity(100);
}
&.ui-draggable-dragging {
cursor:move;
}
> [class*="icon-"]:first-child { /* the move & drag icon */
display:inline-block; height:32px; width:32px;
text-align:center;
line-height:30px;
margin-right:5px;
font-size:15px;
border-right:1px solid #FFF;
}
}
/* calendar inside widget-box --- not complete yet */
.widget-main {
.fc {
position:relative;
top:-40px;
> .fc-header {
position:relative;
z-index:10;
}
.fc-header-space {
padding-left:2px;
}
}
.fc-header-title > h2 {
font-size:18px;
line-height:36px;
}
.fc-content {
top:-14px;
z-index:11;
}
.fc-button-content {
height:37px;
line-height:36px;
}
}

View File

@@ -0,0 +1,278 @@
.chosen-container + .help-inline {
vertical-align:middle;
}
/** chosen select boxes -- replace sprite icons with FontAwesome icons */
.chosen-select {
display:inline !important; /* for validation plugin to work it must be displayed */
visibility:hidden;
opacity:0;
position:absolute;
z-index:-1;
}
.chosen-container , [class*="chosen-container"]{
vertical-align:middle;
> .chosen-single {
line-height:26px;
height:26px;
box-shadow:none;
background:#FAFAFA;
}
}
.chosen-choices {
box-shadow:none !important;
}
.chosen-container-single .chosen-single abbr {
background: none;
}
.chosen-container-single .chosen-single abbr:after {
content:"\f00d";
display: inline-block;
color:#888;
font-family:FontAwesome;
font-size:13px;
position: absolute;
right: 0; top: -7px;
}
.chosen-container-single .chosen-single abbr:hover:after {
color:#464646;
}
.chosen-container-single.chosen-disabled .chosen-single abbr:hover:after {
color:#464646;
}
.chosen-single div b {
background: none !important;
&:before {
content:"\f0d7";
display:inline-block;
color:#888;
font-family:FontAwesome;
font-size:12px;
position:relative; top:-1px; left:1px;
}
}
.chosen-container-active.chosen-with-drop .chosen-single div b:before {
content:"\f0d8";
}
.chosen-container-single {
.chosen-search {
position:relative;
input[type="text"] {
background:none;
border-radius:0;
line-height:28px;
height:28px;
}
&:after{
content:"\f002";
display:inline-block;
color:#888;
font-family:FontAwesome;
font-size:14px;
position:absolute; top:8px; right:12px;
}
}
}
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
background:none;
&:before {
content:"\f00d";
display: inline-block;
color:#888;
font-family:FontAwesome;
font-size:13px;
position: absolute;
right: 2px; top: -1px;
}
&:hover {
text-decoration:none;
}
&:hover:before {
color:#464646;
}
}
.chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close:before {
color:#464646;
}
.chosen-container .chosen-results-scroll-down ,
.chosen-container .chosen-results-scroll-up {
span {
background: none;
&:before{
content:"\f0d7";
display:inline-block;
color:#888;
font-family:FontAwesome;
font-size:12px;
position:relative; top:-1px; left:1px;
}
}
}
.chosen-container .chosen-results-scroll-up span:before {
content:"\f0d8";
}
.chosen-container-active .chosen-single-with-drop div b:before {
content:"\f0d8";
}
.chosen-rtl .chosen-search {
input[type="text"] {
background: none;
}
&:after {
content:"";
display:none;
}
&:before {
content:"\f002";
display:inline-block;
color:#888;
font-family:FontAwesome;
font-size:14px;
position:absolute; top:9px; left:12px;
}
}
/** chosen - etc */
.chosen-container-single .chosen-single {
border-radius:0;
}
.chosen-container .chosen-results li.highlighted {
background:#86BD6F;/* green */
background:#4492C9;/* blue1 */
background:#316AC5;
color: #FFF;
}
.chosen-container-single .chosen-drop {
border-radius:0;
border-bottom:3px solid #4492C9;
border-color:#4492C9;
}
.chosen-single.chosen-single-with-drop , .chosen-container-active .chosen-single{
border-color:#4492C9;
}
.chosen-single {
.control-group.error & {
border-color:@error-state-border !important;
}
.control-group.info & {
border-color:@info-state-border !important;
}
.control-group.warning & {
border-color:@warning-state-border !important;
}
.control-group.success & {
border-color:@success-state-border !important;
}
}
.chosen-rtl .chosen-container-single-nosearch .chosen-search { left: -9999px; }
.chosen-rtl .chosen-drop { left: -9999px; }
.chosen-container-active.chosen-with-drop .chosen-single {
border-color:#4492C9;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-resolution: 144dpi) {
.chosen-rtl .chosen-search input[type="text"], .chosen-container-single .chosen-single abbr, .chosen-container-single .chosen-single div b, .chosen-container-single .chosen-search input[type="text"], .chosen-container-multi .chosen-choices li.search-choice .search-choice-close, .chosen-container .chosen-results-scroll-down span, .chosen-container .chosen-results-scroll-up span {
background-image: none !important;
background-repeat: no-repeat !important;
background-size: auto !important;
}
}
/* a second style (like tag inpit) */
.tag-input-style + .chosen-container-multi {
.chosen-choices li.search-choice {
background-image:none;
background-color:@tag-bg;
color: #FFFFFF;
display: inline-block;
font-size: 13px;
font-weight: normal;
margin-bottom: 3px;
margin-right: 0;
padding: 6px 22px 7px 9px;
position: relative;
text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
transition: all 0.2s ease 0s;
vertical-align: baseline;
white-space: nowrap;
border:none;
.box-shadow(none);
.border-radius(0);
.search-choice-close {
position:absolute;
top:0; bottom:0;
right:0;
width:18px;
height:auto;
line-height:25px;
text-align:center;
&:before {
color:#FFF;
position:static;
font-size:11px;
}
&:hover {
background-color:rgba(0,0,0,0.2);
&:before {
color:#FFF;
}
}
}
}
}
.tag-input-style + .chosen-container-multi.chosen-rtl {
.chosen-choices li.search-choice {
padding: 6px 9px 7px 22px;
margin-left: 0;
margin-right:3px;
.search-choice-close {
right:auto;
left:0;
}
}
}

View File

@@ -0,0 +1,97 @@
/* colorbox used in gallery page */
#colorbox:focus , #colorbox:active {
outline:none;
}
#cboxTopLeft, #cboxTopCenter, #cboxTopRight,
#cboxMiddleLeft, #cboxMiddleRight,
#cboxBottomLeft, #cboxBottomCenter, #cboxBottomRight
{
background:none !important;
opacity:0;
}
#cboxContent {
border:12px solid #000;
background-color:#FFF;
padding:7px;
}
#cboxOverlay {
background:rgba(0,0,0,0.95);
background:#000;
}
#cboxCurrent {
left:61px;
margin-bottom:5px;
}
#cboxTitle {
margin-bottom:4px;
}
#cboxNext , #cboxPrevious , #cboxClose {
background:none;
text-indent:0;
width:20px; height:20px; line-height:14px;
padding:0 4px;
text-align:center;
border:2px solid #999;
border-radius:16px;
color:#666;
font-size:12px;
margin-left:7px;
margin-bottom:7px;
}
#cboxNext:hover , #cboxPrevious:hover {
color:#333;
border-color:#666;
}
#cboxContent {
overflow:visible;
}
#cboxClose {
background-color: #000000;
color: #FFFFFF;
border: 2px solid #FFFFFF;
border-radius: 32px;
font-size: 20px;
height: 24px; width: 24px;
padding-bottom: 2px;
right: -14px;
top: -14px;
margin-left: 0;
}
#cboxLoadingOverlay {
background:none !important;
}
#cboxLoadingGraphic {
background:#FFF none !important;
text-align:center;
> [class*="icon-"] {
display:inline-block;
background-color:#FFF;
border-radius:8px;
width:32px; height:32px;
position:relative; top:48%;
text-align:center;
vertical-align:middle;
.animation(~"spin 1.5s infinite linear");
font-size:24px;
color:#FE7E3E;
}
}

View File

@@ -0,0 +1,89 @@
.dropzone {
.border-radius(0);
border: 1px solid rgba(0, 0, 0, 0.06);
.dz-default.dz-message {
background-image:none;
font-size:24px;
text-align:center;
line-height:32px;
left:0;
width:100%;
margin-left:auto;
span {
display:inline;
color:#555;
.upload-icon {
.opacity(70);
margin-top:8px;
cursor:pointer;
&:hover {
.opacity(100);
}
}
}
}
}
.dropzone .dz-preview .dz-error-mark,
.dropzone-previews .dz-preview .dz-error-mark,
.dropzone .dz-preview .dz-success-mark,
.dropzone-previews .dz-preview .dz-success-mark {
background-image:none;
background-color:rgba(255,255,255,0.8);
border-radius:100%;
text-align:center;
line-height:35px;
}
.dropzone .dz-preview .dz-error-mark:before,
.dropzone-previews .dz-preview .dz-error-mark:before{
font-family:FontAwesome;
font-size:30px;
color:#DB6262;
content:"\f00d";
}
.dropzone .dz-preview .dz-success-mark:before,
.dropzone-previews .dz-preview .dz-success-mark:before{
font-family:FontAwesome;
font-size:30px;
color:#6DA552;
content:"\f00c";
}
.dropzone a.dz-remove, .dropzone-previews a.dz-remove {
border:none;
border-radius:0;
color:#FFF;
background:#D15B47;
cursor:pointer;
&:hover {
color:#FFF;
background:#B74635;
}
}
.dropzone .progress ,
.dropzone-previews .progress
{
margin-bottom:0;
}
.dropzone .dz-preview.dz-success .progress,
.dropzone-previews .dz-preview.dz-success .progress ,
.dropzone .dz-preview.dz-error .progress,
.dropzone-previews .dz-preview.dz-error .progress
{
display:none;
}

View File

@@ -0,0 +1,129 @@
.editable-container .popover-title {
color:#438EB9;
}
.editable-click {
border-bottom:1px dashed #BBB;
cursor:pointer;
font-weight:normal;
img& {
border:1px dotted #BBB;
}
&:hover {
border-color:#0088CC;
color:#0088CC;
img& {.opacity(75);}
}
}
.editable-buttons , .editable-input {
display:inline-block;
}
.editable-buttons {
margin-left:1px;
.btn {
padding:0;
width:28px;
line-height:24px;
border-width:3px;
font-size:12px;
margin:0 1px 0 0;
> [class*="icon-"] {
margin:0;
}
}
}
.editable-clear-x {
cursor:pointer;
color:#888;
background:none;
&:hover {
color:#D15B47;
}
&:before {
display:inline-block;
content:"\f057";
font-family:FontAwesome;font-size:15px;
position:absolute;
margin-top:-9px;
width:16px; height:30px; line-height:30px;
text-align:center;
}
}
.editable-input .ace-spinner {
margin-right:8px;
}
.editable-inline .editable-slider {
margin-top:10px;
margin-right:4px;
}
.editable-popup .editable-slider {
display:block;
margin-bottom:16px;
margin-top:4px;
}
.editable-slider input{
display:none;
}
.editable-input .ace-file-input {
display:block;
}
.editable-image .ace-file-multiple label.selected {
border-color:transparent;
}
.editable-image + .editable-buttons , .editable-wysiwyg + .editable-buttons {
display:block;
text-align:center;
margin-top:8px;
}
.editable-wysiwyg {
width:95%;
.wysiwyg-editor {
height:auto;
overflow-y:hidden;
}
}
.editableform {
.input-append.dropdown-menu {
display:none;
}
.open .input-append.dropdown-menu {
display:block;
}
}
.editable-container .editableform {
margin-bottom:10px;
}
.editable-inline .editableform {
margin-bottom:0;
}
.editableform-loading {
background:none;
[class*="icon-"] , .progress{
position:relative;
top:35%;
}
}

View File

@@ -0,0 +1,407 @@
@wizard-step-border:#CED1D6;
@wizard-step-color:#546474;
@wizard-step-active-border:#5293C4;
@wizard-step-complete-color:#87BA21;
@wizard-step-title-color:#949EA7;
@wizard-step-active-title-color:#2B3D53;
/* spinner */
.ace-spinner {
display:inline-block;
.spinner-buttons {
min-width:18px;
> .btn {
.border-radius(0) !important;
font-size:10px;
padding:0;
width:18px;
height:14px;
line-height:14px;
&:first-child {
margin-top:0;
}
> [class*="icon-"] {
font-size:10px;
margin:0; padding:0;
}
}
> button.btn {
&:active { left:auto; top:auto; }
}
}
.spinner-input {
text-align:center;
height:19px; line-height:19px;
color:#777;
}
}
/* wizard */
.wizard-steps {
list-style:none;
display:block;
width:100%;
padding:0;
margin:0;
position:relative;
li {
display:block;
text-align:center;
float:left;
.step {
border:5px solid @wizard-step-border;
color:@wizard-step-color;
font-size:15px;
border-radius:100%;
background-color:#FFF;
position:relative;
z-index:2;
display:inline-block;
width:30px; height:30px;
line-height:30px;
text-align:center;
}
&:before {/* the line running through each step*/
display:block;
content:"";
width:100%;
height:1px; font-size:0; overflow:hidden;
border-top:4px solid #CED1D6;
position:relative; top:21px;
z-index:1;
}
&:last-child:before {
max-width:50%;
width:50%;
}
&:first-child:before {
max-width:51%;
left:50%;
}
&.active, &.complete {
&:before, .step {
border-color:@wizard-step-active-border;
}
}
&.complete {
.step {
cursor:default;
color:#FFF;
&:before {
display:block;
position:absolute;
top:0; left:0; bottom:0; right:0;
line-height:30px; text-align:center;
border-radius:100%;
content:"\f00c";
background-color:#FFF;
z-index:3;
font-family:FontAwesome;
font-size:17px;
color:@wizard-step-complete-color;
}
.transition(~"transform ease 0.1s");
}
&:hover {
.step {
.transform(~"scale(1.1)");
border-color:lighten(@wizard-step-active-border , 12%);
}
&:before {
border-color:lighten(@wizard-step-active-border , 12%);
}
}
}
.title{
display:block;
margin-top:4px;
max-width:100%;
color:@wizard-step-title-color;
font-size:14px;
z-index:104;
text-align:center;
table-layout:fixed;
word-wrap:break-word;
}
&.complete .title , &.active .title{
color:@wizard-step-active-title-color;
}
}
}
.step-content .step-pane {
display: none;
min-height:200px;
padding:4px 8px 12px;
}
.step-content .active {
display: block;
}
.wizard-actions {
text-align:right;
}
/* tree control */
@tree-border-color:#67B2DD;
.tree {
padding-left:9px;
overflow-x: hidden; overflow-y: auto;
position: relative;
&:before {
display:inline-block; content:"";
position:absolute; top:-20px; bottom:16px; left:0;
border:1px dotted @tree-border-color;
border-width: 0 0 0 1px;
z-index:1;
}
.tree-folder {
width: auto;
min-height: 20px;
cursor: pointer;
.tree-folder-header {
position: relative;
height: 20px;
line-height:20px;
&:hover {
background-color: #F0F7FC;
}
}
}
.tree-folder .tree-folder-header .tree-folder-name , .tree-item .tree-item-name {
display:inline;
z-index:2;
}
.tree-folder .tree-folder-header > [class*="icon-"]:first-child ,
.tree-item > [class*="icon-"]:first-child {
display:inline-block;
position:relative;
z-index:2;
top:-1px;
}
.tree-folder {
.tree-folder-header {
.tree-folder-name {
margin-left:2px;
}
> [class*="icon-"]:first-child {
margin:-2px 0 0 -2px;
}
}
&:last-child:after {
display:inline-block; content:"";
position:absolute; z-index:1;
top:15px; bottom:0; left:-15px;
border-left:1px solid #FFF;
}
.tree-folder-content {
margin-left: 23px;
position:relative;
&:before {
display:inline-block; content:"";
position:absolute; z-index:1;
top:-14px; bottom:16px; left:-14px;
border:1px dotted @tree-border-color;
border-width:0 0 0 1px;
}
}
}
.tree-item {
position: relative;
height: 20px;
line-height:20px;
cursor: pointer;
&:hover {
background-color: #F0F7FC;
}
.tree-item-name {
margin-left:3px;
> [class*="icon-"]:first-child {
margin-right:3px;
}
}
> [class*="icon-"]:first-child {
margin-top:-1px;
}
}
.tree-folder , .tree-item {
position:relative;
&:before {
display:inline-block; content:"";
position:absolute;
top:14px; left:-13px; width:18px;
height:0;
border-top:1px dotted @tree-border-color;
z-index:1;
}
}
.tree-selected {
background-color: rgba(98, 168, 209 , 0.1);
color:#6398B0;
&:hover {
background-color: rgba(98, 168, 209 , 0.1);
}
}
.tree-item , .tree-folder {
border:1px solid #FFF;
}
.tree-folder .tree-folder-header {
border-radius:0;
}
.tree-item , .tree-folder .tree-folder-header {
margin:0;
padding:5px;
color:#4D6878;
}
.tree-item > [class*="icon-"]:first-child {
color:#F9E8CE;
border:1px solid #CCC;
width:13px; height:13px; line-height:13px;
font-size:11px;
text-align:center;
border-radius:3px;
background-color: #FAFAFA;
border: 1px solid #CCC;
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.tree-selected > [class*="icon-"]:first-child {
background-color: #F9A021;
border-color: #F9A021;
color: #FFF;
}
.icon-plus[class*="icon-"]:first-child , .icon-minus[class*="icon-"]:first-child {
border:1px solid #DDD;
vertical-align:middle;
height:11px; width:11px;
text-align:center;
border:1px solid #8BAEBF;
line-height:10px;
background-color:#FFF;
position:relative;
z-index:1;
}
.icon-plus[class*="icon-"]:first-child:before {
display:block;
content:"+";
font-family:"Open Sans";
font-size:16px;
position:relative; z-index:1;
}
.icon-minus[class*="icon-"]:first-child:before {
content: "";
display:block;
width:7px; height:0;
border-top:1px solid #4D6878;
position:absolute;
top:5px;
left:2px;
}
.tree-unselectable .tree-item > [class*="icon-"]:first-child {
color:#5084A0;
border:none;
width:13px; height:13px; line-height:13px;
font-size:10px;
text-align:center;
border-radius:0;
background-color: transparent;
border: none;
box-shadow:none;
}
[class*="icon-"][class*="-down"] {
transform:rotate(-45deg);
}
.icon-spin {
height:auto;
}
.tree-loading {
margin-left:36px;
}
img {
display:inline;
veritcal-align:middle;
}
}

View File

@@ -0,0 +1,103 @@
/* jquery gritter */
.gritter-item-wrapper {
background-image:none !important;
box-shadow:0 2px 10px rgba(50, 50, 50, 0.5);
background:rgba(50,50,50,0.92);
&.gritter-info {
background:rgba(49, 81, 133, 0.92);
}
&.gritter-error {
background:rgba(153, 40, 18, 0.92);
}
&.gritter-success {
background:rgba(89, 131, 75, 0.92);
}
&.gritter-warning {
background:rgba(190, 112, 31, 0.92);
}
&.gritter-light {
background:rgba(245,245,245,0.95);
border:1px solid #BBB;
&.gritter-info {
background:rgba(232, 242, 255, 0.95);
.gritter-item { color:#4A577D; }
}
&.gritter-error {
background:rgba(255, 235, 235, 0.95);
.gritter-item { color:#894A38; }
}
&.gritter-success {
background:rgba(239, 250, 227, 0.95);
.gritter-item { color:#416131; }
}
&.gritter-warning {
background:rgba(252, 248, 227, 0.95);
.gritter-item { color:#946446; }
}
}
}
.gritter-top , .gritter-bottom , .gritter-item {
background-image:none;
}
.gritter-close {
left:auto; right:3px;
background-image:none;
width:18px; height:18px; line-height:17px;
text-align:center;
border:2px solid transparent;
border-radius:16px;
color:#E17B67;
&:before {
font-family:FontAwesome;
font-size:16px;
content:"\f00d";
}
}
.gritter-info .gritter-close {
color:#FFA500;
}
.gritter-error , .gritter-success , .gritter-warning {
.gritter-close {
color:#FFEA07;
}
}
.gritter-close:hover{
color:#FFF !important;
}
.gritter-title {
text-shadow:none;
}
.gritter-light {
.gritter-item , .gritter-bottom , .gritter-top , .gritter-close {
background-image: none;
color: #444;
}
.gritter-title {
text-shadow: none;
}
.gritter-close:hover {
color:#8A3104 !important;
}
}
.gritter-center {
position:fixed;
left:33%; right:33%; top:33%;
}

Some files were not shown because too many files have changed in this diff Show More