From 6804dc9b19ea10dd8323e73f7e6ce5eb6d4249c2 Mon Sep 17 00:00:00 2001 From: "anshul.bansal" Date: Sat, 9 Nov 2019 15:32:22 +0200 Subject: [PATCH] Apache tapestry - Initial commit --- apache-tapestry/pom.xml | 149 + .../baeldung/tapestry/components/Layout.java | 45 + .../com/baeldung/tapestry/pages/About.java | 18 + .../com/baeldung/tapestry/pages/Contact.java | 5 + .../com/baeldung/tapestry/pages/Error404.java | 5 + .../com/baeldung/tapestry/pages/Index.java | 68 + .../com/baeldung/tapestry/pages/Login.java | 54 + .../baeldung/tapestry/services/AppModule.java | 141 + .../tapestry/services/DevelopmentModule.java | 36 + .../baeldung/tapestry/services/QaModule.java | 43 + .../baeldung/tapestry/components/Layout.tml | 67 + .../com/baeldung/tapestry/logback.xml | 13 + .../com/baeldung/tapestry/pages/About.tml | 23 + .../com/baeldung/tapestry/pages/Contact.tml | 7 + .../com/baeldung/tapestry/pages/Error404.tml | 11 + .../baeldung/tapestry/pages/Index.properties | 1 + .../com/baeldung/tapestry/pages/Index.tml | 46 + .../com/baeldung/tapestry/pages/Login.tml | 16 + .../src/main/resources/log4j.properties | 44 + .../src/main/webapp/WEB-INF/app.properties | 4 + .../src/main/webapp/WEB-INF/web.xml | 54 + apache-tapestry/src/main/webapp/favicon.ico | Bin 0 -> 1150 bytes .../src/main/webapp/images/tapestry.png | Bin 0 -> 34547 bytes .../mybootstrap/css/bootstrap-theme.css | 476 ++ .../main/webapp/mybootstrap/css/bootstrap.css | 6588 +++++++++++++++++ .../fonts/glyphicons-halflings-regular.eot | Bin 0 -> 35366 bytes .../fonts/glyphicons-halflings-regular.svg | 288 + .../fonts/glyphicons-halflings-regular.ttf | Bin 0 -> 57865 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 0 -> 42775 bytes .../fonts/glyphicons-halflings-regular.woff2 | Bin 0 -> 840 bytes .../src/main/webapp/mybootstrap/js/affix.js | 162 + .../src/main/webapp/mybootstrap/js/alert.js | 94 + .../src/main/webapp/mybootstrap/js/button.js | 116 + .../main/webapp/mybootstrap/js/carousel.js | 237 + .../main/webapp/mybootstrap/js/collapse.js | 211 + .../main/webapp/mybootstrap/js/dropdown.js | 161 + .../src/main/webapp/mybootstrap/js/modal.js | 339 + .../src/main/webapp/mybootstrap/js/popover.js | 108 + .../main/webapp/mybootstrap/js/scrollspy.js | 172 + .../src/main/webapp/mybootstrap/js/tab.js | 153 + .../src/main/webapp/mybootstrap/js/tooltip.js | 476 ++ .../main/webapp/mybootstrap/js/transition.js | 59 + apache-tapestry/src/site/apt/index.apt | 9 + apache-tapestry/src/site/site.xml | 17 + apache-tapestry/src/test/conf/testng.xml | 8 + apache-tapestry/src/test/conf/webdefault.xml | 278 + 46 files changed, 10802 insertions(+) create mode 100644 apache-tapestry/pom.xml create mode 100644 apache-tapestry/src/main/java/com/baeldung/tapestry/components/Layout.java create mode 100644 apache-tapestry/src/main/java/com/baeldung/tapestry/pages/About.java create mode 100644 apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Contact.java create mode 100644 apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Error404.java create mode 100644 apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Index.java create mode 100644 apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Login.java create mode 100644 apache-tapestry/src/main/java/com/baeldung/tapestry/services/AppModule.java create mode 100644 apache-tapestry/src/main/java/com/baeldung/tapestry/services/DevelopmentModule.java create mode 100644 apache-tapestry/src/main/java/com/baeldung/tapestry/services/QaModule.java create mode 100644 apache-tapestry/src/main/resources/com/baeldung/tapestry/components/Layout.tml create mode 100644 apache-tapestry/src/main/resources/com/baeldung/tapestry/logback.xml create mode 100644 apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/About.tml create mode 100644 apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Contact.tml create mode 100644 apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Error404.tml create mode 100644 apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Index.properties create mode 100644 apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Index.tml create mode 100644 apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Login.tml create mode 100644 apache-tapestry/src/main/resources/log4j.properties create mode 100644 apache-tapestry/src/main/webapp/WEB-INF/app.properties create mode 100644 apache-tapestry/src/main/webapp/WEB-INF/web.xml create mode 100644 apache-tapestry/src/main/webapp/favicon.ico create mode 100644 apache-tapestry/src/main/webapp/images/tapestry.png create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/css/bootstrap-theme.css create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/css/bootstrap.css create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.eot create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.svg create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.ttf create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.woff create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.woff2 create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/js/affix.js create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/js/alert.js create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/js/button.js create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/js/carousel.js create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/js/collapse.js create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/js/dropdown.js create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/js/modal.js create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/js/popover.js create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/js/scrollspy.js create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/js/tab.js create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/js/tooltip.js create mode 100644 apache-tapestry/src/main/webapp/mybootstrap/js/transition.js create mode 100644 apache-tapestry/src/site/apt/index.apt create mode 100644 apache-tapestry/src/site/site.xml create mode 100644 apache-tapestry/src/test/conf/testng.xml create mode 100644 apache-tapestry/src/test/conf/webdefault.xml diff --git a/apache-tapestry/pom.xml b/apache-tapestry/pom.xml new file mode 100644 index 0000000000..1e3813290f --- /dev/null +++ b/apache-tapestry/pom.xml @@ -0,0 +1,149 @@ + + 4.0.0 + com.baeldung + apache-tapestry + 0.0.1-SNAPSHOT + war + apache-tapestry Tapestry 5 Application + + + + org.apache.tapestry + tapestry-core + ${tapestry-release-version} + + + + + org.slf4j + slf4j-log4j12 + ${slf4j-release-version} + + + + + org.apache.tapestry + tapestry-webresources + ${tapestry-release-version} + + + + + + + + org.testng + testng + ${testng-release-version} + test + + + + org.apache.tapestry + tapestry-test + ${tapestry-release-version} + test + + + + + javax.servlet + servlet-api + ${servlet-api-release-version} + provided + + + + + org.apache.tapestry + tapestry-javadoc + ${tapestry-release-version} + provided + + + + + apache-tapestry + + + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + 1.6 + 1.6 + true + + + + + org.apache.maven.plugins + maven-surefire-plugin + 2.7.2 + + + Qa + + + + + + + org.mortbay.jetty + maven-jetty-plugin + 6.1.16 + + + + + true + + + + tapestry.execution-mode + development + + + + + + + + + + + + + jboss + http://repository.jboss.org/nexus/content/groups/public/ + + + + + apache-staging + https://repository.apache.org/content/groups/staging/ + + + + + 5.4.5 + 2.5 + 6.8.21 + 1.7.19 + + + diff --git a/apache-tapestry/src/main/java/com/baeldung/tapestry/components/Layout.java b/apache-tapestry/src/main/java/com/baeldung/tapestry/components/Layout.java new file mode 100644 index 0000000000..8737ee8c5c --- /dev/null +++ b/apache-tapestry/src/main/java/com/baeldung/tapestry/components/Layout.java @@ -0,0 +1,45 @@ +package com.baeldung.tapestry.components; + +import org.apache.tapestry5.BindingConstants; +import org.apache.tapestry5.ComponentResources; +import org.apache.tapestry5.SymbolConstants; +import org.apache.tapestry5.annotations.Import; +import org.apache.tapestry5.annotations.Parameter; +import org.apache.tapestry5.annotations.Property; +import org.apache.tapestry5.ioc.annotations.Inject; +import org.apache.tapestry5.ioc.annotations.Symbol; + +/** + * Layout component for pages of application test-project. + */ +@Import(module = "bootstrap/collapse") +public class Layout { + + @Inject + private ComponentResources resources; + + /** + * The page title, for the element and the + * <h1>element. + */ + @Property + @Parameter(required = true, defaultPrefix = BindingConstants.LITERAL) + private String title; + + @Property + private String pageName; + + @Property + @Inject + @Symbol(SymbolConstants.APPLICATION_VERSION) + private String appVersion; + + public String getClassForPageName() { + return resources.getPageName().equalsIgnoreCase(pageName) ? "active" : null; + } + + public String[] getPageNames() { + return new String[] { "Index", "About", "Contact" }; + } + +} diff --git a/apache-tapestry/src/main/java/com/baeldung/tapestry/pages/About.java b/apache-tapestry/src/main/java/com/baeldung/tapestry/pages/About.java new file mode 100644 index 0000000000..c769375e28 --- /dev/null +++ b/apache-tapestry/src/main/java/com/baeldung/tapestry/pages/About.java @@ -0,0 +1,18 @@ +package com.baeldung.tapestry.pages; + +import org.apache.tapestry5.annotations.PageActivationContext; + +public class About { + + @PageActivationContext + private String learn; + + public String getLearn() { + return learn; + } + + public void setLearn(String learn) { + this.learn = learn; + } + +} diff --git a/apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Contact.java b/apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Contact.java new file mode 100644 index 0000000000..9bb7291000 --- /dev/null +++ b/apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Contact.java @@ -0,0 +1,5 @@ +package com.baeldung.tapestry.pages; + +public class Contact { + +} diff --git a/apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Error404.java b/apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Error404.java new file mode 100644 index 0000000000..c629b82d01 --- /dev/null +++ b/apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Error404.java @@ -0,0 +1,5 @@ +package com.baeldung.tapestry.pages; + +public class Error404 { + +} diff --git a/apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Index.java b/apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Index.java new file mode 100644 index 0000000000..16ff974fc6 --- /dev/null +++ b/apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Index.java @@ -0,0 +1,68 @@ +package com.baeldung.tapestry.pages; + + +import org.apache.tapestry5.Block; +import org.apache.tapestry5.EventContext; +import org.apache.tapestry5.SymbolConstants; +import org.apache.tapestry5.annotations.InjectPage; +import org.apache.tapestry5.annotations.Log; +import org.apache.tapestry5.annotations.Property; +import org.apache.tapestry5.ioc.annotations.Inject; +import org.apache.tapestry5.ioc.annotations.Symbol; +import org.apache.tapestry5.services.HttpError; +import org.apache.tapestry5.services.ajax.AjaxResponseRenderer; +import org.slf4j.Logger; + +import java.util.Date; + +/** + * Start page of application apache-tapestry. + */ +public class Index { + @Inject + private Logger logger; + + @Inject + private AjaxResponseRenderer ajaxResponseRenderer; + + @Property + @Inject + @Symbol(SymbolConstants.TAPESTRY_VERSION) + private String tapestryVersion; + + @InjectPage + private About about; + + @Inject + private Block block; + + // Handle call with an unwanted context + Object onActivate(EventContext eventContext) { + return eventContext.getCount() > 0 ? + new HttpError(404, "Resource not found") : + null; + } + + Object onActionFromLearnMore() { + about.setLearn("LearnMore"); + + return about; + } + + @Log + void onComplete() { + logger.info("Complete call on Index page"); + } + + @Log + void onAjax() { + logger.info("Ajax call on Index page"); + + ajaxResponseRenderer.addRender("middlezone", block); + } + + public Date getCurrentTime() { + return new Date(); + } + +} diff --git a/apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Login.java b/apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Login.java new file mode 100644 index 0000000000..72572b2584 --- /dev/null +++ b/apache-tapestry/src/main/java/com/baeldung/tapestry/pages/Login.java @@ -0,0 +1,54 @@ +package com.baeldung.tapestry.pages; + +import org.apache.tapestry5.alerts.AlertManager; +import org.apache.tapestry5.annotations.InjectComponent; +import org.apache.tapestry5.annotations.Property; +import org.apache.tapestry5.corelib.components.Form; +import org.apache.tapestry5.corelib.components.PasswordField; +import org.apache.tapestry5.corelib.components.TextField; +import org.apache.tapestry5.ioc.annotations.Inject; +import org.slf4j.Logger; + +public class Login { + @Inject + private Logger logger; + + @Inject + private AlertManager alertManager; + + @InjectComponent + private Form login; + + @InjectComponent("email") + private TextField emailField; + + @InjectComponent("password") + private PasswordField passwordField; + + @Property + private String email; + + @Property + private String password; + + void onValidateFromLogin() { + if (!email.equals("users@tapestry.apache.org")) + login.recordError(emailField, "Try with user: users@tapestry.apache.org"); + + if ( !password.equals("Tapestry5")) + login.recordError(passwordField, "Try with password: Tapestry5"); + } + + Object onSuccessFromLogin() { + logger.info("Login successful!"); + alertManager.success("Welcome aboard!"); + + return Index.class; + } + + void onFailureFromLogin() { + logger.warn("Login error!"); + alertManager.error("I'm sorry but I can't log you in!"); + } + +} diff --git a/apache-tapestry/src/main/java/com/baeldung/tapestry/services/AppModule.java b/apache-tapestry/src/main/java/com/baeldung/tapestry/services/AppModule.java new file mode 100644 index 0000000000..3e400c9ce3 --- /dev/null +++ b/apache-tapestry/src/main/java/com/baeldung/tapestry/services/AppModule.java @@ -0,0 +1,141 @@ +package com.baeldung.tapestry.services; + +import java.io.IOException; + +import org.apache.tapestry5.*; +import org.apache.tapestry5.ioc.MappedConfiguration; +import org.apache.tapestry5.ioc.OrderedConfiguration; +import org.apache.tapestry5.ioc.ServiceBinder; +import org.apache.tapestry5.ioc.annotations.Contribute; +import org.apache.tapestry5.ioc.annotations.Local; +import org.apache.tapestry5.ioc.services.ApplicationDefaults; +import org.apache.tapestry5.ioc.services.SymbolProvider; +import org.apache.tapestry5.services.*; +import org.apache.tapestry5.services.javascript.JavaScriptStack; +import org.apache.tapestry5.services.javascript.StackExtension; +import org.apache.tapestry5.services.javascript.StackExtensionType; +import org.slf4j.Logger; + +/** + * This module is automatically included as part of the Tapestry IoC Registry, it's a good place to + * configure and extend Tapestry, or to place your own service definitions. + */ +public class AppModule +{ + public static void bind(ServiceBinder binder) + { + // binder.bind(MyServiceInterface.class, MyServiceImpl.class); + + // Make bind() calls on the binder object to define most IoC services. + // Use service builder methods (example below) when the implementation + // is provided inline, or requires more initialization than simply + // invoking the constructor. + } + + public static void contributeFactoryDefaults( + MappedConfiguration<String, Object> configuration) + { + // The values defined here (as factory default overrides) are themselves + // overridden with application defaults by DevelopmentModule and QaModule. + + // The application version is primarily useful as it appears in + // any exception reports (HTML or textual). + configuration.override(SymbolConstants.APPLICATION_VERSION, "0.0.1-SNAPSHOT"); + + // This is something that should be removed when going to production, but is useful + // in the early stages of development. + configuration.override(SymbolConstants.PRODUCTION_MODE, false); + } + + public static void contributeApplicationDefaults( + MappedConfiguration<String, Object> configuration) + { + // Contributions to ApplicationDefaults will override any contributions to + // FactoryDefaults (with the same key). Here we're restricting the supported + // locales to just "en" (English). As you add localised message catalogs and other assets, + // you can extend this list of locales (it's a comma separated series of locale names; + // the first locale name is the default when there's no reasonable match). + configuration.add(SymbolConstants.SUPPORTED_LOCALES, "en"); + + // You should change the passphrase immediately; the HMAC passphrase is used to secure + // the hidden field data stored in forms to encrypt and digitally sign client-side data. + configuration.add(SymbolConstants.HMAC_PASSPHRASE, "change this immediately"); + } + + /** + * Use annotation or method naming convention: <code>contributeApplicationDefaults</code> + */ + @Contribute(SymbolProvider.class) + @ApplicationDefaults + public static void setupEnvironment(MappedConfiguration<String, Object> configuration) + { + // Support for jQuery is new in Tapestry 5.4 and will become the only supported + // option in 5.5. + configuration.add(SymbolConstants.JAVASCRIPT_INFRASTRUCTURE_PROVIDER, "jquery"); + configuration.add(SymbolConstants.BOOTSTRAP_ROOT, "context:mybootstrap"); + } + + + /** + * This is a service definition, the service will be named "TimingFilter". The interface, + * RequestFilter, is used within the RequestHandler service pipeline, which is built from the + * RequestHandler service configuration. Tapestry IoC is responsible for passing in an + * appropriate Logger instance. Requests for static resources are handled at a higher level, so + * this filter will only be invoked for Tapestry related requests. + * + * + * Service builder methods are useful when the implementation is inline as an inner class + * (as here) or require some other kind of special initialization. In most cases, + * use the static bind() method instead. + * + * + * If this method was named "build", then the service id would be taken from the + * service interface and would be "RequestFilter". Since Tapestry already defines + * a service named "RequestFilter" we use an explicit service id that we can reference + * inside the contribution method. + */ + public RequestFilter buildTimingFilter(final Logger log) + { + return new RequestFilter() + { + public boolean service(Request request, Response response, RequestHandler handler) + throws IOException + { + long startTime = System.currentTimeMillis(); + + try + { + // The responsibility of a filter is to invoke the corresponding method + // in the handler. When you chain multiple filters together, each filter + // received a handler that is a bridge to the next filter. + + return handler.service(request, response); + } finally + { + long elapsed = System.currentTimeMillis() - startTime; + + log.info("Request time: {} ms", elapsed); + } + } + }; + } + + /** + * This is a contribution to the RequestHandler service configuration. This is how we extend + * Tapestry using the timing filter. A common use for this kind of filter is transaction + * management or security. The @Local annotation selects the desired service by type, but only + * from the same module. Without @Local, there would be an error due to the other service(s) + * that implement RequestFilter (defined in other modules). + */ + @Contribute(RequestHandler.class) + public void addTimingFilter(OrderedConfiguration<RequestFilter> configuration, + @Local + RequestFilter filter) + { + // Each contribution to an ordered configuration has a name, When necessary, you may + // set constraints to precisely control the invocation order of the contributed filter + // within the pipeline. + + configuration.add("Timing", filter); + } +} diff --git a/apache-tapestry/src/main/java/com/baeldung/tapestry/services/DevelopmentModule.java b/apache-tapestry/src/main/java/com/baeldung/tapestry/services/DevelopmentModule.java new file mode 100644 index 0000000000..d73848e492 --- /dev/null +++ b/apache-tapestry/src/main/java/com/baeldung/tapestry/services/DevelopmentModule.java @@ -0,0 +1,36 @@ +package com.baeldung.tapestry.services; + +import java.io.IOException; + +import org.apache.tapestry5.*; +import org.apache.tapestry5.ioc.MappedConfiguration; +import org.apache.tapestry5.ioc.OrderedConfiguration; +import org.apache.tapestry5.ioc.ServiceBinder; +import org.apache.tapestry5.ioc.annotations.Local; +import org.apache.tapestry5.services.Request; +import org.apache.tapestry5.services.RequestFilter; +import org.apache.tapestry5.services.RequestHandler; +import org.apache.tapestry5.services.Response; +import org.slf4j.Logger; + +/** + * This module is automatically included as part of the Tapestry IoC Registry if <em>tapestry.execution-mode</em> + * includes <code>development</code>. + */ +public class DevelopmentModule +{ + public static void contributeApplicationDefaults( + MappedConfiguration<String, Object> configuration) + { + // The factory default is true but during the early stages of an application + // overriding to false is a good idea. In addition, this is often overridden + // on the command line as -Dtapestry.production-mode=false + configuration.add(SymbolConstants.PRODUCTION_MODE, false); + + // The application version number is incorprated into URLs for some + // assets. Web browsers will cache assets because of the far future expires + // header. If existing assets are changed, the version number should also + // change, to force the browser to download new versions. + configuration.add(SymbolConstants.APPLICATION_VERSION, "0.0.1-SNAPSHOT-DEV"); + } +} diff --git a/apache-tapestry/src/main/java/com/baeldung/tapestry/services/QaModule.java b/apache-tapestry/src/main/java/com/baeldung/tapestry/services/QaModule.java new file mode 100644 index 0000000000..53e964385e --- /dev/null +++ b/apache-tapestry/src/main/java/com/baeldung/tapestry/services/QaModule.java @@ -0,0 +1,43 @@ +package com.baeldung.tapestry.services; + +import java.io.IOException; + +import org.apache.tapestry5.*; +import org.apache.tapestry5.ioc.MappedConfiguration; +import org.apache.tapestry5.ioc.OrderedConfiguration; +import org.apache.tapestry5.ioc.ServiceBinder; +import org.apache.tapestry5.ioc.annotations.Local; +import org.apache.tapestry5.services.Request; +import org.apache.tapestry5.services.RequestFilter; +import org.apache.tapestry5.services.RequestHandler; +import org.apache.tapestry5.services.Response; +import org.slf4j.Logger; + +/** + * This module is automatically included as part of the Tapestry IoC Registry if <em>tapestry.execution-mode</em> + * includes <code>qa</code> ("quality assurance"). + */ +public class QaModule +{ + public static void bind(ServiceBinder binder) + { + // Bind any services needed by the QA team to produce their reports + // binder.bind(MyServiceMonitorInterface.class, MyServiceMonitorImpl.class); + } + + + public static void contributeApplicationDefaults( + MappedConfiguration<String, Object> configuration) + { + // The factory default is true but during the early stages of an application + // overriding to false is a good idea. In addition, this is often overridden + // on the command line as -Dtapestry.production-mode=false + configuration.add(SymbolConstants.PRODUCTION_MODE, false); + + // The application version number is incorprated into URLs for some + // assets. Web browsers will cache assets because of the far future expires + // header. If existing assets are changed, the version number should also + // change, to force the browser to download new versions. + configuration.add(SymbolConstants.APPLICATION_VERSION, "0.0.1-SNAPSHOT-QA"); + } +} diff --git a/apache-tapestry/src/main/resources/com/baeldung/tapestry/components/Layout.tml b/apache-tapestry/src/main/resources/com/baeldung/tapestry/components/Layout.tml new file mode 100644 index 0000000000..ad1bf1e487 --- /dev/null +++ b/apache-tapestry/src/main/resources/com/baeldung/tapestry/components/Layout.tml @@ -0,0 +1,67 @@ +<!DOCTYPE html> +<html lang="en" xmlns="http://www.w3.org/1999/xhtml" + xmlns:t="http://tapestry.apache.org/schema/tapestry_5_4.xsd" + > +<head> + <meta charset="utf-8"/> + <title>${title} + + + + + + + + + + + +
+
+
+ +
+
+
+ +
+ + + +
+ +
+

© Your Company 2015

+
+ +
+ + + diff --git a/apache-tapestry/src/main/resources/com/baeldung/tapestry/logback.xml b/apache-tapestry/src/main/resources/com/baeldung/tapestry/logback.xml new file mode 100644 index 0000000000..2997ecb099 --- /dev/null +++ b/apache-tapestry/src/main/resources/com/baeldung/tapestry/logback.xml @@ -0,0 +1,13 @@ + + + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + + + + + + + + + diff --git a/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/About.tml b/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/About.tml new file mode 100644 index 0000000000..d460024cc2 --- /dev/null +++ b/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/About.tml @@ -0,0 +1,23 @@ + + +
+
+

About apache-tapestry application ...

+
+
+ + +
+
+

+ To learn more go to + Tapestry home + and start typing... +

+
+
+
+ + diff --git a/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Contact.tml b/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Contact.tml new file mode 100644 index 0000000000..70b897d227 --- /dev/null +++ b/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Contact.tml @@ -0,0 +1,7 @@ + + +

Contact com.baeldung ...

+ + diff --git a/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Error404.tml b/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Error404.tml new file mode 100644 index 0000000000..b18492221e --- /dev/null +++ b/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Error404.tml @@ -0,0 +1,11 @@ + + +
+
+

Requested page not found!

+
+
+ + diff --git a/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Index.properties b/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Index.properties new file mode 100644 index 0000000000..bc49edd53f --- /dev/null +++ b/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Index.properties @@ -0,0 +1 @@ +greeting=Welcome to Tapestry 5! We hope that this project template will get you going in style. diff --git a/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Index.tml b/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Index.tml new file mode 100644 index 0000000000..625a3c2fcc --- /dev/null +++ b/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Index.tml @@ -0,0 +1,46 @@ + + + + + +
+

+ ${message:greeting} +

+

${message:greeting}

+

The current time is: ${currentTime}

+

+ This is a template for a simple marketing or informational website. It includes a large callout called + the hero unit and three supporting pieces of content. Use it as a starting point to create something + more unique. +

+

Learn more »

+
+ + +
+
+

Normal link

+

Clink the bottom link and the page refresh with event complete

+

Complete»

+
+ + + +
+

Ajax link

+

Click the bottom link to update just the middle column with Ajax call with event ajax

+

Ajax»

+
+
+ + +

Ajax updated

+

I'v been updated through AJAX call

+

The current time is: ${currentTime}

+
+ + diff --git a/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Login.tml b/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Login.tml new file mode 100644 index 0000000000..75c07549eb --- /dev/null +++ b/apache-tapestry/src/main/resources/com/baeldung/tapestry/pages/Login.tml @@ -0,0 +1,16 @@ + + +
+
+ +

Please sign in

+ + + +
+
+
+ + diff --git a/apache-tapestry/src/main/resources/log4j.properties b/apache-tapestry/src/main/resources/log4j.properties new file mode 100644 index 0000000000..bd90a762ca --- /dev/null +++ b/apache-tapestry/src/main/resources/log4j.properties @@ -0,0 +1,44 @@ +# Default to info level output; this is very handy if you eventually use Hibernate as well. +log4j.rootCategory=info, A1 + +# A1 is set to be a ConsoleAppender. +log4j.appender.A1=org.apache.log4j.ConsoleAppender + +# A1 uses PatternLayout. +log4j.appender.A1.layout=org.apache.log4j.PatternLayout +log4j.appender.A1.layout.ConversionPattern=[%p] %c{2} %m%n + +# Service category names are the name of the defining module class +# and then the service id. +log4j.category.com.baeldung.tapestry.services.AppModule.TimingFilter=info + +# Outputs a list of pages, components and mixins at startup. +log4j.category.org.apache.tapestry5.modules.TapestryModule.ComponentClassResolver=info + +# Outputs startup statistics; elapsed time to setup and initialize the registry, a list of +# available services, and a launch banner that includes the Tapestry version number. +log4j.category.org.apache.tapestry5.TapestryFilter=info + + +# Turning on debug mode for a page's or component's transformer logger +# will show all of the code changes that occur when the +# class is loaded. + +# log4j.category.tapestry.transformer.com.baeldung.tapestry.pages.Index=debug + +# Turning on debug mode for a component's events logger will show all the events triggered on the +# component, and which component methods are invoked as a result. + +# log4j.category.tapestry.events.com.baeldung.tapestry.pages.Index=debug + +# Turning on trace mode for a page's render logger provides extended information about every step +# in rendering (this is not generally helpful). Turning on debug mode will add a one-line +# summary that includes the elapsed render time, which can be useful in tracking down +# performance issues. + +# log4j.category.tapestry.render.com.baeldung.tapestry.pages.Index=debug + +# Turn on some verbose debugging about everything in the application. This is nice initially, +# while getting everything set up. You'll probably want to remove this once you are +# up and running, replacing it with more selective debugging output. +log4j.category.com.baeldung.tapestry=debug diff --git a/apache-tapestry/src/main/webapp/WEB-INF/app.properties b/apache-tapestry/src/main/webapp/WEB-INF/app.properties new file mode 100644 index 0000000000..1c299311bb --- /dev/null +++ b/apache-tapestry/src/main/webapp/WEB-INF/app.properties @@ -0,0 +1,4 @@ +# This is where global application properties go. +# You can also have individual message catalogs for each page and each +# component that override these defaults. +# The name of this file is based on the element in web. \ No newline at end of file diff --git a/apache-tapestry/src/main/webapp/WEB-INF/web.xml b/apache-tapestry/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000000..c5bdfd415c --- /dev/null +++ b/apache-tapestry/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,54 @@ + + + + + apache-tapestry Tapestry 5 Application + + + tapestry.app-package + com.baeldung.tapestry + + + + + tapestry.development-modules + + com.baeldung.tapestry.services.DevelopmentModule + + + + tapestry.qa-modules + + com.baeldung.tapestry.services.QaModule + + + + + + + app + org.apache.tapestry5.TapestryFilter + + + + app + /* + REQUEST + ERROR + + + + 404 + /error404 + + + \ No newline at end of file diff --git a/apache-tapestry/src/main/webapp/favicon.ico b/apache-tapestry/src/main/webapp/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..b9715a2aed5813613f6523136ca7adecce80ff66 GIT binary patch literal 1150 zcma)5eJs>*82|mw8L~zlwziT@v(%IfrEup^x>(-2NGUR_ElEeaN{+nL4$Dj0oj+K~ zS#`+U8Lm@ArSw9jA}*#{N!FW4zo+N-<4jw%p5H#-m*;stpWmME_xTb8iJz${fuj|% zk4+F31VJoEpbI_Iew+vbV;tjYF#CTGH_ zx8A+PG5{Wacm-S4XTYuYB*m*v2A(3}xxm(iJ_K@3og`b73*wK*lHMS)ClC)Uv_1%a}9iJ9qJ7z_RJZjUv z@f)O+utf#~Uq)c)>nQALF9v?26!@wP;MYiiUw#A}QbU4}Gq<0ZyLVR}@8#B|ffs6= z>aL^GyKBJ{xm-Md_bSQQh6{0;Wl>(<$eoAK-2q`a(?9m7!VmGVU)*a_V0Wt=!dv9v zT7KfK%Z2zVTTy^Na_Byp<>7j+(S9?x(zt$Zg&2e?>6gf=oK|~rNGST}BS@0XBCPjr zn#-A88!cKuui17-1H7GbBP8~*0sKVO`N){uboxpEx3P^4^cSqMG(rL^s=3HwfBQxH mp8sf5_$sGN2;w_dr9~t&Fa7t_WZYh#ffnOh%pc<-2k{FrL~ptP literal 0 HcmV?d00001 diff --git a/apache-tapestry/src/main/webapp/images/tapestry.png b/apache-tapestry/src/main/webapp/images/tapestry.png new file mode 100644 index 0000000000000000000000000000000000000000..eba58883c668d2847b60d10213e10db466a2e7e9 GIT binary patch literal 34547 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 literal 0 HcmV?d00001 diff --git a/apache-tapestry/src/main/webapp/mybootstrap/css/bootstrap-theme.css b/apache-tapestry/src/main/webapp/mybootstrap/css/bootstrap-theme.css new file mode 100644 index 0000000000..374a7e314a --- /dev/null +++ b/apache-tapestry/src/main/webapp/mybootstrap/css/bootstrap-theme.css @@ -0,0 +1,476 @@ +/*! + * Bootstrap v3.3.4 (http://getbootstrap.com) + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ + +.btn-default, +.btn-primary, +.btn-success, +.btn-info, +.btn-warning, +.btn-danger { + text-shadow: 0 -1px 0 rgba(0, 0, 0, .2); + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); +} +.btn-default:active, +.btn-primary:active, +.btn-success:active, +.btn-info:active, +.btn-warning:active, +.btn-danger:active, +.btn-default.active, +.btn-primary.active, +.btn-success.active, +.btn-info.active, +.btn-warning.active, +.btn-danger.active { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn-default .badge, +.btn-primary .badge, +.btn-success .badge, +.btn-info .badge, +.btn-warning .badge, +.btn-danger .badge { + text-shadow: none; +} +.btn:active, +.btn.active { + background-image: none; +} +.btn-default { + text-shadow: 0 1px 0 #fff; + background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%); + background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0)); + background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #dbdbdb; + border-color: #ccc; +} +.btn-default:hover, +.btn-default:focus { + background-color: #e0e0e0; + background-position: 0 -15px; +} +.btn-default:active, +.btn-default.active { + background-color: #e0e0e0; + border-color: #dbdbdb; +} +.btn-default.disabled, +.btn-default:disabled, +.btn-default[disabled] { + background-color: #e0e0e0; + background-image: none; +} +.btn-primary { + background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#265a88)); + background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #245580; +} +.btn-primary:hover, +.btn-primary:focus { + background-color: #265a88; + background-position: 0 -15px; +} +.btn-primary:active, +.btn-primary.active { + background-color: #265a88; + border-color: #245580; +} +.btn-primary.disabled, +.btn-primary:disabled, +.btn-primary[disabled] { + background-color: #265a88; + background-image: none; +} +.btn-success { + background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%); + background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641)); + background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #3e8f3e; +} +.btn-success:hover, +.btn-success:focus { + background-color: #419641; + background-position: 0 -15px; +} +.btn-success:active, +.btn-success.active { + background-color: #419641; + border-color: #3e8f3e; +} +.btn-success.disabled, +.btn-success:disabled, +.btn-success[disabled] { + background-color: #419641; + background-image: none; +} +.btn-info { + background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); + background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2)); + background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #28a4c9; +} +.btn-info:hover, +.btn-info:focus { + background-color: #2aabd2; + background-position: 0 -15px; +} +.btn-info:active, +.btn-info.active { + background-color: #2aabd2; + border-color: #28a4c9; +} +.btn-info.disabled, +.btn-info:disabled, +.btn-info[disabled] { + background-color: #2aabd2; + background-image: none; +} +.btn-warning { + background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); + background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316)); + background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #e38d13; +} +.btn-warning:hover, +.btn-warning:focus { + background-color: #eb9316; + background-position: 0 -15px; +} +.btn-warning:active, +.btn-warning.active { + background-color: #eb9316; + border-color: #e38d13; +} +.btn-warning.disabled, +.btn-warning:disabled, +.btn-warning[disabled] { + background-color: #eb9316; + background-image: none; +} +.btn-danger { + background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%); + background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a)); + background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #b92c28; +} +.btn-danger:hover, +.btn-danger:focus { + background-color: #c12e2a; + background-position: 0 -15px; +} +.btn-danger:active, +.btn-danger.active { + background-color: #c12e2a; + border-color: #b92c28; +} +.btn-danger.disabled, +.btn-danger:disabled, +.btn-danger[disabled] { + background-color: #c12e2a; + background-image: none; +} +.thumbnail, +.img-thumbnail { + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); + box-shadow: 0 1px 2px rgba(0, 0, 0, .075); +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + background-color: #e8e8e8; + background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); + background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); + background-repeat: repeat-x; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + background-color: #2e6da4; + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); + background-repeat: repeat-x; +} +.navbar-default { + background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%); + background-image: -o-linear-gradient(top, #fff 0%, #f8f8f8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f8f8f8)); + background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .active > a { + background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); + background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dbdbdb), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0); + background-repeat: repeat-x; + -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); + box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); +} +.navbar-brand, +.navbar-nav > li > a { + text-shadow: 0 1px 0 rgba(255, 255, 255, .25); +} +.navbar-inverse { + background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%); + background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222)); + background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; +} +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .active > a { + background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%); + background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f)); + background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0); + background-repeat: repeat-x; + -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); + box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); +} +.navbar-inverse .navbar-brand, +.navbar-inverse .navbar-nav > li > a { + text-shadow: 0 -1px 0 rgba(0, 0, 0, .25); +} +.navbar-static-top, +.navbar-fixed-top, +.navbar-fixed-bottom { + border-radius: 0; +} +@media (max-width: 767px) { + .navbar .navbar-nav .open .dropdown-menu > .active > a, + .navbar .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #fff; + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); + background-repeat: repeat-x; + } +} +.alert { + text-shadow: 0 1px 0 rgba(255, 255, 255, .2); + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); +} +.alert-success { + background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); + background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc)); + background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0); + background-repeat: repeat-x; + border-color: #b2dba1; +} +.alert-info { + background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%); + background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0)); + background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0); + background-repeat: repeat-x; + border-color: #9acfea; +} +.alert-warning { + background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); + background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0)); + background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0); + background-repeat: repeat-x; + border-color: #f5e79e; +} +.alert-danger { + background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); + background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3)); + background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0); + background-repeat: repeat-x; + border-color: #dca7a7; +} +.progress { + background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); + background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5)); + background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar { + background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#286090)); + background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-success { + background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%); + background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44)); + background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-info { + background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); + background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5)); + background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-warning { + background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); + background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f)); + background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-danger { + background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%); + background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c)); + background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-striped { + background-image: -webkit-linear-gradient(45deg, 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(45deg, 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(45deg, 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); +} +.list-group { + border-radius: 4px; + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); + box-shadow: 0 1px 2px rgba(0, 0, 0, .075); +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + text-shadow: 0 -1px 0 #286090; + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2b669a)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0); + background-repeat: repeat-x; + border-color: #2b669a; +} +.list-group-item.active .badge, +.list-group-item.active:hover .badge, +.list-group-item.active:focus .badge { + text-shadow: none; +} +.panel { + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05); + box-shadow: 0 1px 2px rgba(0, 0, 0, .05); +} +.panel-default > .panel-heading { + background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); + background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); + background-repeat: repeat-x; +} +.panel-primary > .panel-heading { + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); + background-repeat: repeat-x; +} +.panel-success > .panel-heading { + background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); + background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6)); + background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0); + background-repeat: repeat-x; +} +.panel-info > .panel-heading { + background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); + background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3)); + background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0); + background-repeat: repeat-x; +} +.panel-warning > .panel-heading { + background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); + background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc)); + background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0); + background-repeat: repeat-x; +} +.panel-danger > .panel-heading { + background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%); + background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc)); + background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0); + background-repeat: repeat-x; +} +.well { + background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); + background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5)); + background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0); + background-repeat: repeat-x; + border-color: #dcdcdc; + -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); +} + diff --git a/apache-tapestry/src/main/webapp/mybootstrap/css/bootstrap.css b/apache-tapestry/src/main/webapp/mybootstrap/css/bootstrap.css new file mode 100644 index 0000000000..057ff46dae --- /dev/null +++ b/apache-tapestry/src/main/webapp/mybootstrap/css/bootstrap.css @@ -0,0 +1,6588 @@ +/*! + * Bootstrap v3.3.4 (http://getbootstrap.com) + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ + +/*! normalize.css v3.0.2 | MIT License | git.io/normalize */ +html { + font-family: sans-serif; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} +body { + margin: 0; +} +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section, +summary { + display: block; +} +audio, +canvas, +progress, +video { + display: inline-block; + vertical-align: baseline; +} +audio:not([controls]) { + display: none; + height: 0; +} +[hidden], +template { + display: none; +} +a { + background-color: transparent; +} +a:active, +a:hover { + outline: 0; +} +abbr[title] { + border-bottom: 1px dotted; +} +b, +strong { + font-weight: bold; +} +dfn { + font-style: italic; +} +h1 { + margin: .67em 0; + font-size: 2em; +} +mark { + color: #000; + background: #ff0; +} +small { + font-size: 80%; +} +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} +sup { + top: -.5em; +} +sub { + bottom: -.25em; +} +img { + border: 0; +} +svg:not(:root) { + overflow: hidden; +} +figure { + margin: 1em 40px; +} +hr { + height: 0; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +pre { + overflow: auto; +} +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} +button, +input, +optgroup, +select, +textarea { + margin: 0; + font: inherit; + color: inherit; +} +button { + overflow: visible; +} +button, +select { + text-transform: none; +} +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; + cursor: pointer; +} +button[disabled], +html input[disabled] { + cursor: default; +} +button::-moz-focus-inner, +input::-moz-focus-inner { + padding: 0; + border: 0; +} +input { + line-height: normal; +} +input[type="checkbox"], +input[type="radio"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + padding: 0; +} +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} +input[type="search"] { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + -webkit-appearance: textfield; +} +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +fieldset { + padding: .35em .625em .75em; + margin: 0 2px; + border: 1px solid #c0c0c0; +} +legend { + padding: 0; + border: 0; +} +textarea { + overflow: auto; +} +optgroup { + font-weight: bold; +} +table { + border-spacing: 0; + border-collapse: collapse; +} +td, +th { + padding: 0; +} +/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ +@media print { + *, + *:before, + *:after { + color: #000 !important; + text-shadow: none !important; + background: transparent !important; + -webkit-box-shadow: none !important; + box-shadow: none !important; + } + a, + a:visited { + text-decoration: underline; + } + a[href]:after { + content: " (" attr(href) ")"; + } + abbr[title]:after { + content: " (" attr(title) ")"; + } + a[href^="#"]:after, + a[href^="javascript:"]:after { + content: ""; + } + pre, + blockquote { + border: 1px solid #999; + + page-break-inside: avoid; + } + thead { + display: table-header-group; + } + tr, + img { + page-break-inside: avoid; + } + img { + max-width: 100% !important; + } + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + h2, + h3 { + page-break-after: avoid; + } + select { + background: #fff !important; + } + .navbar { + display: none; + } + .btn > .caret, + .dropup > .btn > .caret { + border-top-color: #000 !important; + } + .label { + border: 1px solid #000; + } + .table { + border-collapse: collapse !important; + } + .table td, + .table th { + background-color: #fff !important; + } + .table-bordered th, + .table-bordered td { + border: 1px solid #ddd !important; + } +} +@font-face { + font-family: 'Glyphicons Halflings'; + + src: url('../fonts/glyphicons-halflings-regular.eot'); + src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); +} +.glyphicon { + position: relative; + top: 1px; + display: inline-block; + font-family: 'Glyphicons Halflings'; + font-style: normal; + font-weight: normal; + line-height: 1; + + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +.glyphicon-asterisk:before { + content: "\2a"; +} +.glyphicon-plus:before { + content: "\2b"; +} +.glyphicon-euro:before, +.glyphicon-eur:before { + content: "\20ac"; +} +.glyphicon-minus:before { + content: "\2212"; +} +.glyphicon-cloud:before { + content: "\2601"; +} +.glyphicon-envelope:before { + content: "\2709"; +} +.glyphicon-pencil:before { + content: "\270f"; +} +.glyphicon-glass:before { + content: "\e001"; +} +.glyphicon-music:before { + content: "\e002"; +} +.glyphicon-search:before { + content: "\e003"; +} +.glyphicon-heart:before { + content: "\e005"; +} +.glyphicon-star:before { + content: "\e006"; +} +.glyphicon-star-empty:before { + content: "\e007"; +} +.glyphicon-user:before { + content: "\e008"; +} +.glyphicon-film:before { + content: "\e009"; +} +.glyphicon-th-large:before { + content: "\e010"; +} +.glyphicon-th:before { + content: "\e011"; +} +.glyphicon-th-list:before { + content: "\e012"; +} +.glyphicon-ok:before { + content: "\e013"; +} +.glyphicon-remove:before { + content: "\e014"; +} +.glyphicon-zoom-in:before { + content: "\e015"; +} +.glyphicon-zoom-out:before { + content: "\e016"; +} +.glyphicon-off:before { + content: "\e017"; +} +.glyphicon-signal:before { + content: "\e018"; +} +.glyphicon-cog:before { + content: "\e019"; +} +.glyphicon-trash:before { + content: "\e020"; +} +.glyphicon-home:before { + content: "\e021"; +} +.glyphicon-file:before { + content: "\e022"; +} +.glyphicon-time:before { + content: "\e023"; +} +.glyphicon-road:before { + content: "\e024"; +} +.glyphicon-download-alt:before { + content: "\e025"; +} +.glyphicon-download:before { + content: "\e026"; +} +.glyphicon-upload:before { + content: "\e027"; +} +.glyphicon-inbox:before { + content: "\e028"; +} +.glyphicon-play-circle:before { + content: "\e029"; +} +.glyphicon-repeat:before { + content: "\e030"; +} +.glyphicon-refresh:before { + content: "\e031"; +} +.glyphicon-list-alt:before { + content: "\e032"; +} +.glyphicon-lock:before { + content: "\e033"; +} +.glyphicon-flag:before { + content: "\e034"; +} +.glyphicon-headphones:before { + content: "\e035"; +} +.glyphicon-volume-off:before { + content: "\e036"; +} +.glyphicon-volume-down:before { + content: "\e037"; +} +.glyphicon-volume-up:before { + content: "\e038"; +} +.glyphicon-qrcode:before { + content: "\e039"; +} +.glyphicon-barcode:before { + content: "\e040"; +} +.glyphicon-tag:before { + content: "\e041"; +} +.glyphicon-tags:before { + content: "\e042"; +} +.glyphicon-book:before { + content: "\e043"; +} +.glyphicon-bookmark:before { + content: "\e044"; +} +.glyphicon-print:before { + content: "\e045"; +} +.glyphicon-camera:before { + content: "\e046"; +} +.glyphicon-font:before { + content: "\e047"; +} +.glyphicon-bold:before { + content: "\e048"; +} +.glyphicon-italic:before { + content: "\e049"; +} +.glyphicon-text-height:before { + content: "\e050"; +} +.glyphicon-text-width:before { + content: "\e051"; +} +.glyphicon-align-left:before { + content: "\e052"; +} +.glyphicon-align-center:before { + content: "\e053"; +} +.glyphicon-align-right:before { + content: "\e054"; +} +.glyphicon-align-justify:before { + content: "\e055"; +} +.glyphicon-list:before { + content: "\e056"; +} +.glyphicon-indent-left:before { + content: "\e057"; +} +.glyphicon-indent-right:before { + content: "\e058"; +} +.glyphicon-facetime-video:before { + content: "\e059"; +} +.glyphicon-picture:before { + content: "\e060"; +} +.glyphicon-map-marker:before { + content: "\e062"; +} +.glyphicon-adjust:before { + content: "\e063"; +} +.glyphicon-tint:before { + content: "\e064"; +} +.glyphicon-edit:before { + content: "\e065"; +} +.glyphicon-share:before { + content: "\e066"; +} +.glyphicon-check:before { + content: "\e067"; +} +.glyphicon-move:before { + content: "\e068"; +} +.glyphicon-step-backward:before { + content: "\e069"; +} +.glyphicon-fast-backward:before { + content: "\e070"; +} +.glyphicon-backward:before { + content: "\e071"; +} +.glyphicon-play:before { + content: "\e072"; +} +.glyphicon-pause:before { + content: "\e073"; +} +.glyphicon-stop:before { + content: "\e074"; +} +.glyphicon-forward:before { + content: "\e075"; +} +.glyphicon-fast-forward:before { + content: "\e076"; +} +.glyphicon-step-forward:before { + content: "\e077"; +} +.glyphicon-eject:before { + content: "\e078"; +} +.glyphicon-chevron-left:before { + content: "\e079"; +} +.glyphicon-chevron-right:before { + content: "\e080"; +} +.glyphicon-plus-sign:before { + content: "\e081"; +} +.glyphicon-minus-sign:before { + content: "\e082"; +} +.glyphicon-remove-sign:before { + content: "\e083"; +} +.glyphicon-ok-sign:before { + content: "\e084"; +} +.glyphicon-question-sign:before { + content: "\e085"; +} +.glyphicon-info-sign:before { + content: "\e086"; +} +.glyphicon-screenshot:before { + content: "\e087"; +} +.glyphicon-remove-circle:before { + content: "\e088"; +} +.glyphicon-ok-circle:before { + content: "\e089"; +} +.glyphicon-ban-circle:before { + content: "\e090"; +} +.glyphicon-arrow-left:before { + content: "\e091"; +} +.glyphicon-arrow-right:before { + content: "\e092"; +} +.glyphicon-arrow-up:before { + content: "\e093"; +} +.glyphicon-arrow-down:before { + content: "\e094"; +} +.glyphicon-share-alt:before { + content: "\e095"; +} +.glyphicon-resize-full:before { + content: "\e096"; +} +.glyphicon-resize-small:before { + content: "\e097"; +} +.glyphicon-exclamation-sign:before { + content: "\e101"; +} +.glyphicon-gift:before { + content: "\e102"; +} +.glyphicon-leaf:before { + content: "\e103"; +} +.glyphicon-fire:before { + content: "\e104"; +} +.glyphicon-eye-open:before { + content: "\e105"; +} +.glyphicon-eye-close:before { + content: "\e106"; +} +.glyphicon-warning-sign:before { + content: "\e107"; +} +.glyphicon-plane:before { + content: "\e108"; +} +.glyphicon-calendar:before { + content: "\e109"; +} +.glyphicon-random:before { + content: "\e110"; +} +.glyphicon-comment:before { + content: "\e111"; +} +.glyphicon-magnet:before { + content: "\e112"; +} +.glyphicon-chevron-up:before { + content: "\e113"; +} +.glyphicon-chevron-down:before { + content: "\e114"; +} +.glyphicon-retweet:before { + content: "\e115"; +} +.glyphicon-shopping-cart:before { + content: "\e116"; +} +.glyphicon-folder-close:before { + content: "\e117"; +} +.glyphicon-folder-open:before { + content: "\e118"; +} +.glyphicon-resize-vertical:before { + content: "\e119"; +} +.glyphicon-resize-horizontal:before { + content: "\e120"; +} +.glyphicon-hdd:before { + content: "\e121"; +} +.glyphicon-bullhorn:before { + content: "\e122"; +} +.glyphicon-bell:before { + content: "\e123"; +} +.glyphicon-certificate:before { + content: "\e124"; +} +.glyphicon-thumbs-up:before { + content: "\e125"; +} +.glyphicon-thumbs-down:before { + content: "\e126"; +} +.glyphicon-hand-right:before { + content: "\e127"; +} +.glyphicon-hand-left:before { + content: "\e128"; +} +.glyphicon-hand-up:before { + content: "\e129"; +} +.glyphicon-hand-down:before { + content: "\e130"; +} +.glyphicon-circle-arrow-right:before { + content: "\e131"; +} +.glyphicon-circle-arrow-left:before { + content: "\e132"; +} +.glyphicon-circle-arrow-up:before { + content: "\e133"; +} +.glyphicon-circle-arrow-down:before { + content: "\e134"; +} +.glyphicon-globe:before { + content: "\e135"; +} +.glyphicon-wrench:before { + content: "\e136"; +} +.glyphicon-tasks:before { + content: "\e137"; +} +.glyphicon-filter:before { + content: "\e138"; +} +.glyphicon-briefcase:before { + content: "\e139"; +} +.glyphicon-fullscreen:before { + content: "\e140"; +} +.glyphicon-dashboard:before { + content: "\e141"; +} +.glyphicon-paperclip:before { + content: "\e142"; +} +.glyphicon-heart-empty:before { + content: "\e143"; +} +.glyphicon-link:before { + content: "\e144"; +} +.glyphicon-phone:before { + content: "\e145"; +} +.glyphicon-pushpin:before { + content: "\e146"; +} +.glyphicon-usd:before { + content: "\e148"; +} +.glyphicon-gbp:before { + content: "\e149"; +} +.glyphicon-sort:before { + content: "\e150"; +} +.glyphicon-sort-by-alphabet:before { + content: "\e151"; +} +.glyphicon-sort-by-alphabet-alt:before { + content: "\e152"; +} +.glyphicon-sort-by-order:before { + content: "\e153"; +} +.glyphicon-sort-by-order-alt:before { + content: "\e154"; +} +.glyphicon-sort-by-attributes:before { + content: "\e155"; +} +.glyphicon-sort-by-attributes-alt:before { + content: "\e156"; +} +.glyphicon-unchecked:before { + content: "\e157"; +} +.glyphicon-expand:before { + content: "\e158"; +} +.glyphicon-collapse-down:before { + content: "\e159"; +} +.glyphicon-collapse-up:before { + content: "\e160"; +} +.glyphicon-log-in:before { + content: "\e161"; +} +.glyphicon-flash:before { + content: "\e162"; +} +.glyphicon-log-out:before { + content: "\e163"; +} +.glyphicon-new-window:before { + content: "\e164"; +} +.glyphicon-record:before { + content: "\e165"; +} +.glyphicon-save:before { + content: "\e166"; +} +.glyphicon-open:before { + content: "\e167"; +} +.glyphicon-saved:before { + content: "\e168"; +} +.glyphicon-import:before { + content: "\e169"; +} +.glyphicon-export:before { + content: "\e170"; +} +.glyphicon-send:before { + content: "\e171"; +} +.glyphicon-floppy-disk:before { + content: "\e172"; +} +.glyphicon-floppy-saved:before { + content: "\e173"; +} +.glyphicon-floppy-remove:before { + content: "\e174"; +} +.glyphicon-floppy-save:before { + content: "\e175"; +} +.glyphicon-floppy-open:before { + content: "\e176"; +} +.glyphicon-credit-card:before { + content: "\e177"; +} +.glyphicon-transfer:before { + content: "\e178"; +} +.glyphicon-cutlery:before { + content: "\e179"; +} +.glyphicon-header:before { + content: "\e180"; +} +.glyphicon-compressed:before { + content: "\e181"; +} +.glyphicon-earphone:before { + content: "\e182"; +} +.glyphicon-phone-alt:before { + content: "\e183"; +} +.glyphicon-tower:before { + content: "\e184"; +} +.glyphicon-stats:before { + content: "\e185"; +} +.glyphicon-sd-video:before { + content: "\e186"; +} +.glyphicon-hd-video:before { + content: "\e187"; +} +.glyphicon-subtitles:before { + content: "\e188"; +} +.glyphicon-sound-stereo:before { + content: "\e189"; +} +.glyphicon-sound-dolby:before { + content: "\e190"; +} +.glyphicon-sound-5-1:before { + content: "\e191"; +} +.glyphicon-sound-6-1:before { + content: "\e192"; +} +.glyphicon-sound-7-1:before { + content: "\e193"; +} +.glyphicon-copyright-mark:before { + content: "\e194"; +} +.glyphicon-registration-mark:before { + content: "\e195"; +} +.glyphicon-cloud-download:before { + content: "\e197"; +} +.glyphicon-cloud-upload:before { + content: "\e198"; +} +.glyphicon-tree-conifer:before { + content: "\e199"; +} +.glyphicon-tree-deciduous:before { + content: "\e200"; +} +.glyphicon-cd:before { + content: "\e201"; +} +.glyphicon-save-file:before { + content: "\e202"; +} +.glyphicon-open-file:before { + content: "\e203"; +} +.glyphicon-level-up:before { + content: "\e204"; +} +.glyphicon-copy:before { + content: "\e205"; +} +.glyphicon-paste:before { + content: "\e206"; +} +.glyphicon-alert:before { + content: "\e209"; +} +.glyphicon-equalizer:before { + content: "\e210"; +} +.glyphicon-king:before { + content: "\e211"; +} +.glyphicon-queen:before { + content: "\e212"; +} +.glyphicon-pawn:before { + content: "\e213"; +} +.glyphicon-bishop:before { + content: "\e214"; +} +.glyphicon-knight:before { + content: "\e215"; +} +.glyphicon-baby-formula:before { + content: "\e216"; +} +.glyphicon-tent:before { + content: "\26fa"; +} +.glyphicon-blackboard:before { + content: "\e218"; +} +.glyphicon-bed:before { + content: "\e219"; +} +.glyphicon-apple:before { + content: "\f8ff"; +} +.glyphicon-erase:before { + content: "\e221"; +} +.glyphicon-hourglass:before { + content: "\231b"; +} +.glyphicon-lamp:before { + content: "\e223"; +} +.glyphicon-duplicate:before { + content: "\e224"; +} +.glyphicon-piggy-bank:before { + content: "\e225"; +} +.glyphicon-scissors:before { + content: "\e226"; +} +.glyphicon-bitcoin:before { + content: "\e227"; +} +.glyphicon-btc:before { + content: "\e227"; +} +.glyphicon-xbt:before { + content: "\e227"; +} +.glyphicon-yen:before { + content: "\00a5"; +} +.glyphicon-jpy:before { + content: "\00a5"; +} +.glyphicon-ruble:before { + content: "\20bd"; +} +.glyphicon-rub:before { + content: "\20bd"; +} +.glyphicon-scale:before { + content: "\e230"; +} +.glyphicon-ice-lolly:before { + content: "\e231"; +} +.glyphicon-ice-lolly-tasted:before { + content: "\e232"; +} +.glyphicon-education:before { + content: "\e233"; +} +.glyphicon-option-horizontal:before { + content: "\e234"; +} +.glyphicon-option-vertical:before { + content: "\e235"; +} +.glyphicon-menu-hamburger:before { + content: "\e236"; +} +.glyphicon-modal-window:before { + content: "\e237"; +} +.glyphicon-oil:before { + content: "\e238"; +} +.glyphicon-grain:before { + content: "\e239"; +} +.glyphicon-sunglasses:before { + content: "\e240"; +} +.glyphicon-text-size:before { + content: "\e241"; +} +.glyphicon-text-color:before { + content: "\e242"; +} +.glyphicon-text-background:before { + content: "\e243"; +} +.glyphicon-object-align-top:before { + content: "\e244"; +} +.glyphicon-object-align-bottom:before { + content: "\e245"; +} +.glyphicon-object-align-horizontal:before { + content: "\e246"; +} +.glyphicon-object-align-left:before { + content: "\e247"; +} +.glyphicon-object-align-vertical:before { + content: "\e248"; +} +.glyphicon-object-align-right:before { + content: "\e249"; +} +.glyphicon-triangle-right:before { + content: "\e250"; +} +.glyphicon-triangle-left:before { + content: "\e251"; +} +.glyphicon-triangle-bottom:before { + content: "\e252"; +} +.glyphicon-triangle-top:before { + content: "\e253"; +} +.glyphicon-console:before { + content: "\e254"; +} +.glyphicon-superscript:before { + content: "\e255"; +} +.glyphicon-subscript:before { + content: "\e256"; +} +.glyphicon-menu-left:before { + content: "\e257"; +} +.glyphicon-menu-right:before { + content: "\e258"; +} +.glyphicon-menu-down:before { + content: "\e259"; +} +.glyphicon-menu-up:before { + content: "\e260"; +} +* { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +*:before, +*:after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +html { + font-size: 10px; + + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} +body { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 1.42857143; + color: #333; + background-color: #fff; +} +input, +button, +select, +textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} +a { + color: #337ab7; + text-decoration: none; +} +a:hover, +a:focus { + color: #23527c; + text-decoration: underline; +} +a:focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +figure { + margin: 0; +} +img { + vertical-align: middle; +} +.img-responsive, +.thumbnail > img, +.thumbnail a > img, +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + display: block; + max-width: 100%; + height: auto; +} +.img-rounded { + border-radius: 6px; +} +.img-thumbnail { + display: inline-block; + max-width: 100%; + height: auto; + padding: 4px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: all .2s ease-in-out; + -o-transition: all .2s ease-in-out; + transition: all .2s ease-in-out; +} +.img-circle { + border-radius: 50%; +} +hr { + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #eee; +} +.sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + border: 0; +} +.sr-only-focusable:active, +.sr-only-focusable:focus { + position: static; + width: auto; + height: auto; + margin: 0; + overflow: visible; + clip: auto; +} +[role="button"] { + cursor: pointer; +} +h1, +h2, +h3, +h4, +h5, +h6, +.h1, +.h2, +.h3, +.h4, +.h5, +.h6 { + font-family: inherit; + font-weight: 500; + line-height: 1.1; + color: inherit; +} +h1 small, +h2 small, +h3 small, +h4 small, +h5 small, +h6 small, +.h1 small, +.h2 small, +.h3 small, +.h4 small, +.h5 small, +.h6 small, +h1 .small, +h2 .small, +h3 .small, +h4 .small, +h5 .small, +h6 .small, +.h1 .small, +.h2 .small, +.h3 .small, +.h4 .small, +.h5 .small, +.h6 .small { + font-weight: normal; + line-height: 1; + color: #777; +} +h1, +.h1, +h2, +.h2, +h3, +.h3 { + margin-top: 20px; + margin-bottom: 10px; +} +h1 small, +.h1 small, +h2 small, +.h2 small, +h3 small, +.h3 small, +h1 .small, +.h1 .small, +h2 .small, +.h2 .small, +h3 .small, +.h3 .small { + font-size: 65%; +} +h4, +.h4, +h5, +.h5, +h6, +.h6 { + margin-top: 10px; + margin-bottom: 10px; +} +h4 small, +.h4 small, +h5 small, +.h5 small, +h6 small, +.h6 small, +h4 .small, +.h4 .small, +h5 .small, +.h5 .small, +h6 .small, +.h6 .small { + font-size: 75%; +} +h1, +.h1 { + font-size: 36px; +} +h2, +.h2 { + font-size: 30px; +} +h3, +.h3 { + font-size: 24px; +} +h4, +.h4 { + font-size: 18px; +} +h5, +.h5 { + font-size: 14px; +} +h6, +.h6 { + font-size: 12px; +} +p { + margin: 0 0 10px; +} +.lead { + margin-bottom: 20px; + font-size: 16px; + font-weight: 300; + line-height: 1.4; +} +@media (min-width: 768px) { + .lead { + font-size: 21px; + } +} +small, +.small { + font-size: 85%; +} +mark, +.mark { + padding: .2em; + background-color: #fcf8e3; +} +.text-left { + text-align: left; +} +.text-right { + text-align: right; +} +.text-center { + text-align: center; +} +.text-justify { + text-align: justify; +} +.text-nowrap { + white-space: nowrap; +} +.text-lowercase { + text-transform: lowercase; +} +.text-uppercase { + text-transform: uppercase; +} +.text-capitalize { + text-transform: capitalize; +} +.text-muted { + color: #777; +} +.text-primary { + color: #337ab7; +} +a.text-primary:hover { + color: #286090; +} +.text-success { + color: #3c763d; +} +a.text-success:hover { + color: #2b542c; +} +.text-info { + color: #31708f; +} +a.text-info:hover { + color: #245269; +} +.text-warning { + color: #8a6d3b; +} +a.text-warning:hover { + color: #66512c; +} +.text-danger { + color: #a94442; +} +a.text-danger:hover { + color: #843534; +} +.bg-primary { + color: #fff; + background-color: #337ab7; +} +a.bg-primary:hover { + background-color: #286090; +} +.bg-success { + background-color: #dff0d8; +} +a.bg-success:hover { + background-color: #c1e2b3; +} +.bg-info { + background-color: #d9edf7; +} +a.bg-info:hover { + background-color: #afd9ee; +} +.bg-warning { + background-color: #fcf8e3; +} +a.bg-warning:hover { + background-color: #f7ecb5; +} +.bg-danger { + background-color: #f2dede; +} +a.bg-danger:hover { + background-color: #e4b9b9; +} +.page-header { + padding-bottom: 9px; + margin: 40px 0 20px; + border-bottom: 1px solid #eee; +} +ul, +ol { + margin-top: 0; + margin-bottom: 10px; +} +ul ul, +ol ul, +ul ol, +ol ol { + margin-bottom: 0; +} +.list-unstyled { + padding-left: 0; + list-style: none; +} +.list-inline { + padding-left: 0; + margin-left: -5px; + list-style: none; +} +.list-inline > li { + display: inline-block; + padding-right: 5px; + padding-left: 5px; +} +dl { + margin-top: 0; + margin-bottom: 20px; +} +dt, +dd { + line-height: 1.42857143; +} +dt { + font-weight: bold; +} +dd { + margin-left: 0; +} +@media (min-width: 768px) { + .dl-horizontal dt { + float: left; + width: 160px; + overflow: hidden; + clear: left; + text-align: right; + text-overflow: ellipsis; + white-space: nowrap; + } + .dl-horizontal dd { + margin-left: 180px; + } +} +abbr[title], +abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #777; +} +.initialism { + font-size: 90%; + text-transform: uppercase; +} +blockquote { + padding: 10px 20px; + margin: 0 0 20px; + font-size: 17.5px; + border-left: 5px solid #eee; +} +blockquote p:last-child, +blockquote ul:last-child, +blockquote ol:last-child { + margin-bottom: 0; +} +blockquote footer, +blockquote small, +blockquote .small { + display: block; + font-size: 80%; + line-height: 1.42857143; + color: #777; +} +blockquote footer:before, +blockquote small:before, +blockquote .small:before { + content: '\2014 \00A0'; +} +.blockquote-reverse, +blockquote.pull-right { + padding-right: 15px; + padding-left: 0; + text-align: right; + border-right: 5px solid #eee; + border-left: 0; +} +.blockquote-reverse footer:before, +blockquote.pull-right footer:before, +.blockquote-reverse small:before, +blockquote.pull-right small:before, +.blockquote-reverse .small:before, +blockquote.pull-right .small:before { + content: ''; +} +.blockquote-reverse footer:after, +blockquote.pull-right footer:after, +.blockquote-reverse small:after, +blockquote.pull-right small:after, +.blockquote-reverse .small:after, +blockquote.pull-right .small:after { + content: '\00A0 \2014'; +} +address { + margin-bottom: 20px; + font-style: normal; + line-height: 1.42857143; +} +code, +kbd, +pre, +samp { + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; +} +code { + padding: 2px 4px; + font-size: 90%; + color: #c7254e; + background-color: #f9f2f4; + border-radius: 4px; +} +kbd { + padding: 2px 4px; + font-size: 90%; + color: #fff; + background-color: #333; + border-radius: 3px; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); +} +kbd kbd { + padding: 0; + font-size: 100%; + font-weight: bold; + -webkit-box-shadow: none; + box-shadow: none; +} +pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 1.42857143; + color: #333; + word-break: break-all; + word-wrap: break-word; + background-color: #f5f5f5; + border: 1px solid #ccc; + border-radius: 4px; +} +pre code { + padding: 0; + font-size: inherit; + color: inherit; + white-space: pre-wrap; + background-color: transparent; + border-radius: 0; +} +.pre-scrollable { + max-height: 340px; + overflow-y: scroll; +} +.container { + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} +@media (min-width: 768px) { + .container { + width: 750px; + } +} +@media (min-width: 992px) { + .container { + width: 970px; + } +} +@media (min-width: 1200px) { + .container { + width: 1170px; + } +} +.container-fluid { + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} +.row { + margin-right: -15px; + margin-left: -15px; +} +.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { + position: relative; + min-height: 1px; + padding-right: 15px; + padding-left: 15px; +} +.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { + float: left; +} +.col-xs-12 { + width: 100%; +} +.col-xs-11 { + width: 91.66666667%; +} +.col-xs-10 { + width: 83.33333333%; +} +.col-xs-9 { + width: 75%; +} +.col-xs-8 { + width: 66.66666667%; +} +.col-xs-7 { + width: 58.33333333%; +} +.col-xs-6 { + width: 50%; +} +.col-xs-5 { + width: 41.66666667%; +} +.col-xs-4 { + width: 33.33333333%; +} +.col-xs-3 { + width: 25%; +} +.col-xs-2 { + width: 16.66666667%; +} +.col-xs-1 { + width: 8.33333333%; +} +.col-xs-pull-12 { + right: 100%; +} +.col-xs-pull-11 { + right: 91.66666667%; +} +.col-xs-pull-10 { + right: 83.33333333%; +} +.col-xs-pull-9 { + right: 75%; +} +.col-xs-pull-8 { + right: 66.66666667%; +} +.col-xs-pull-7 { + right: 58.33333333%; +} +.col-xs-pull-6 { + right: 50%; +} +.col-xs-pull-5 { + right: 41.66666667%; +} +.col-xs-pull-4 { + right: 33.33333333%; +} +.col-xs-pull-3 { + right: 25%; +} +.col-xs-pull-2 { + right: 16.66666667%; +} +.col-xs-pull-1 { + right: 8.33333333%; +} +.col-xs-pull-0 { + right: auto; +} +.col-xs-push-12 { + left: 100%; +} +.col-xs-push-11 { + left: 91.66666667%; +} +.col-xs-push-10 { + left: 83.33333333%; +} +.col-xs-push-9 { + left: 75%; +} +.col-xs-push-8 { + left: 66.66666667%; +} +.col-xs-push-7 { + left: 58.33333333%; +} +.col-xs-push-6 { + left: 50%; +} +.col-xs-push-5 { + left: 41.66666667%; +} +.col-xs-push-4 { + left: 33.33333333%; +} +.col-xs-push-3 { + left: 25%; +} +.col-xs-push-2 { + left: 16.66666667%; +} +.col-xs-push-1 { + left: 8.33333333%; +} +.col-xs-push-0 { + left: auto; +} +.col-xs-offset-12 { + margin-left: 100%; +} +.col-xs-offset-11 { + margin-left: 91.66666667%; +} +.col-xs-offset-10 { + margin-left: 83.33333333%; +} +.col-xs-offset-9 { + margin-left: 75%; +} +.col-xs-offset-8 { + margin-left: 66.66666667%; +} +.col-xs-offset-7 { + margin-left: 58.33333333%; +} +.col-xs-offset-6 { + margin-left: 50%; +} +.col-xs-offset-5 { + margin-left: 41.66666667%; +} +.col-xs-offset-4 { + margin-left: 33.33333333%; +} +.col-xs-offset-3 { + margin-left: 25%; +} +.col-xs-offset-2 { + margin-left: 16.66666667%; +} +.col-xs-offset-1 { + margin-left: 8.33333333%; +} +.col-xs-offset-0 { + margin-left: 0; +} +@media (min-width: 768px) { + .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { + float: left; + } + .col-sm-12 { + width: 100%; + } + .col-sm-11 { + width: 91.66666667%; + } + .col-sm-10 { + width: 83.33333333%; + } + .col-sm-9 { + width: 75%; + } + .col-sm-8 { + width: 66.66666667%; + } + .col-sm-7 { + width: 58.33333333%; + } + .col-sm-6 { + width: 50%; + } + .col-sm-5 { + width: 41.66666667%; + } + .col-sm-4 { + width: 33.33333333%; + } + .col-sm-3 { + width: 25%; + } + .col-sm-2 { + width: 16.66666667%; + } + .col-sm-1 { + width: 8.33333333%; + } + .col-sm-pull-12 { + right: 100%; + } + .col-sm-pull-11 { + right: 91.66666667%; + } + .col-sm-pull-10 { + right: 83.33333333%; + } + .col-sm-pull-9 { + right: 75%; + } + .col-sm-pull-8 { + right: 66.66666667%; + } + .col-sm-pull-7 { + right: 58.33333333%; + } + .col-sm-pull-6 { + right: 50%; + } + .col-sm-pull-5 { + right: 41.66666667%; + } + .col-sm-pull-4 { + right: 33.33333333%; + } + .col-sm-pull-3 { + right: 25%; + } + .col-sm-pull-2 { + right: 16.66666667%; + } + .col-sm-pull-1 { + right: 8.33333333%; + } + .col-sm-pull-0 { + right: auto; + } + .col-sm-push-12 { + left: 100%; + } + .col-sm-push-11 { + left: 91.66666667%; + } + .col-sm-push-10 { + left: 83.33333333%; + } + .col-sm-push-9 { + left: 75%; + } + .col-sm-push-8 { + left: 66.66666667%; + } + .col-sm-push-7 { + left: 58.33333333%; + } + .col-sm-push-6 { + left: 50%; + } + .col-sm-push-5 { + left: 41.66666667%; + } + .col-sm-push-4 { + left: 33.33333333%; + } + .col-sm-push-3 { + left: 25%; + } + .col-sm-push-2 { + left: 16.66666667%; + } + .col-sm-push-1 { + left: 8.33333333%; + } + .col-sm-push-0 { + left: auto; + } + .col-sm-offset-12 { + margin-left: 100%; + } + .col-sm-offset-11 { + margin-left: 91.66666667%; + } + .col-sm-offset-10 { + margin-left: 83.33333333%; + } + .col-sm-offset-9 { + margin-left: 75%; + } + .col-sm-offset-8 { + margin-left: 66.66666667%; + } + .col-sm-offset-7 { + margin-left: 58.33333333%; + } + .col-sm-offset-6 { + margin-left: 50%; + } + .col-sm-offset-5 { + margin-left: 41.66666667%; + } + .col-sm-offset-4 { + margin-left: 33.33333333%; + } + .col-sm-offset-3 { + margin-left: 25%; + } + .col-sm-offset-2 { + margin-left: 16.66666667%; + } + .col-sm-offset-1 { + margin-left: 8.33333333%; + } + .col-sm-offset-0 { + margin-left: 0; + } +} +@media (min-width: 992px) { + .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { + float: left; + } + .col-md-12 { + width: 100%; + } + .col-md-11 { + width: 91.66666667%; + } + .col-md-10 { + width: 83.33333333%; + } + .col-md-9 { + width: 75%; + } + .col-md-8 { + width: 66.66666667%; + } + .col-md-7 { + width: 58.33333333%; + } + .col-md-6 { + width: 50%; + } + .col-md-5 { + width: 41.66666667%; + } + .col-md-4 { + width: 33.33333333%; + } + .col-md-3 { + width: 25%; + } + .col-md-2 { + width: 16.66666667%; + } + .col-md-1 { + width: 8.33333333%; + } + .col-md-pull-12 { + right: 100%; + } + .col-md-pull-11 { + right: 91.66666667%; + } + .col-md-pull-10 { + right: 83.33333333%; + } + .col-md-pull-9 { + right: 75%; + } + .col-md-pull-8 { + right: 66.66666667%; + } + .col-md-pull-7 { + right: 58.33333333%; + } + .col-md-pull-6 { + right: 50%; + } + .col-md-pull-5 { + right: 41.66666667%; + } + .col-md-pull-4 { + right: 33.33333333%; + } + .col-md-pull-3 { + right: 25%; + } + .col-md-pull-2 { + right: 16.66666667%; + } + .col-md-pull-1 { + right: 8.33333333%; + } + .col-md-pull-0 { + right: auto; + } + .col-md-push-12 { + left: 100%; + } + .col-md-push-11 { + left: 91.66666667%; + } + .col-md-push-10 { + left: 83.33333333%; + } + .col-md-push-9 { + left: 75%; + } + .col-md-push-8 { + left: 66.66666667%; + } + .col-md-push-7 { + left: 58.33333333%; + } + .col-md-push-6 { + left: 50%; + } + .col-md-push-5 { + left: 41.66666667%; + } + .col-md-push-4 { + left: 33.33333333%; + } + .col-md-push-3 { + left: 25%; + } + .col-md-push-2 { + left: 16.66666667%; + } + .col-md-push-1 { + left: 8.33333333%; + } + .col-md-push-0 { + left: auto; + } + .col-md-offset-12 { + margin-left: 100%; + } + .col-md-offset-11 { + margin-left: 91.66666667%; + } + .col-md-offset-10 { + margin-left: 83.33333333%; + } + .col-md-offset-9 { + margin-left: 75%; + } + .col-md-offset-8 { + margin-left: 66.66666667%; + } + .col-md-offset-7 { + margin-left: 58.33333333%; + } + .col-md-offset-6 { + margin-left: 50%; + } + .col-md-offset-5 { + margin-left: 41.66666667%; + } + .col-md-offset-4 { + margin-left: 33.33333333%; + } + .col-md-offset-3 { + margin-left: 25%; + } + .col-md-offset-2 { + margin-left: 16.66666667%; + } + .col-md-offset-1 { + margin-left: 8.33333333%; + } + .col-md-offset-0 { + margin-left: 0; + } +} +@media (min-width: 1200px) { + .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { + float: left; + } + .col-lg-12 { + width: 100%; + } + .col-lg-11 { + width: 91.66666667%; + } + .col-lg-10 { + width: 83.33333333%; + } + .col-lg-9 { + width: 75%; + } + .col-lg-8 { + width: 66.66666667%; + } + .col-lg-7 { + width: 58.33333333%; + } + .col-lg-6 { + width: 50%; + } + .col-lg-5 { + width: 41.66666667%; + } + .col-lg-4 { + width: 33.33333333%; + } + .col-lg-3 { + width: 25%; + } + .col-lg-2 { + width: 16.66666667%; + } + .col-lg-1 { + width: 8.33333333%; + } + .col-lg-pull-12 { + right: 100%; + } + .col-lg-pull-11 { + right: 91.66666667%; + } + .col-lg-pull-10 { + right: 83.33333333%; + } + .col-lg-pull-9 { + right: 75%; + } + .col-lg-pull-8 { + right: 66.66666667%; + } + .col-lg-pull-7 { + right: 58.33333333%; + } + .col-lg-pull-6 { + right: 50%; + } + .col-lg-pull-5 { + right: 41.66666667%; + } + .col-lg-pull-4 { + right: 33.33333333%; + } + .col-lg-pull-3 { + right: 25%; + } + .col-lg-pull-2 { + right: 16.66666667%; + } + .col-lg-pull-1 { + right: 8.33333333%; + } + .col-lg-pull-0 { + right: auto; + } + .col-lg-push-12 { + left: 100%; + } + .col-lg-push-11 { + left: 91.66666667%; + } + .col-lg-push-10 { + left: 83.33333333%; + } + .col-lg-push-9 { + left: 75%; + } + .col-lg-push-8 { + left: 66.66666667%; + } + .col-lg-push-7 { + left: 58.33333333%; + } + .col-lg-push-6 { + left: 50%; + } + .col-lg-push-5 { + left: 41.66666667%; + } + .col-lg-push-4 { + left: 33.33333333%; + } + .col-lg-push-3 { + left: 25%; + } + .col-lg-push-2 { + left: 16.66666667%; + } + .col-lg-push-1 { + left: 8.33333333%; + } + .col-lg-push-0 { + left: auto; + } + .col-lg-offset-12 { + margin-left: 100%; + } + .col-lg-offset-11 { + margin-left: 91.66666667%; + } + .col-lg-offset-10 { + margin-left: 83.33333333%; + } + .col-lg-offset-9 { + margin-left: 75%; + } + .col-lg-offset-8 { + margin-left: 66.66666667%; + } + .col-lg-offset-7 { + margin-left: 58.33333333%; + } + .col-lg-offset-6 { + margin-left: 50%; + } + .col-lg-offset-5 { + margin-left: 41.66666667%; + } + .col-lg-offset-4 { + margin-left: 33.33333333%; + } + .col-lg-offset-3 { + margin-left: 25%; + } + .col-lg-offset-2 { + margin-left: 16.66666667%; + } + .col-lg-offset-1 { + margin-left: 8.33333333%; + } + .col-lg-offset-0 { + margin-left: 0; + } +} +table { + background-color: transparent; +} +caption { + padding-top: 8px; + padding-bottom: 8px; + color: #777; + text-align: left; +} +th { + text-align: left; +} +.table { + width: 100%; + max-width: 100%; + margin-bottom: 20px; +} +.table > thead > tr > th, +.table > tbody > tr > th, +.table > tfoot > tr > th, +.table > thead > tr > td, +.table > tbody > tr > td, +.table > tfoot > tr > td { + padding: 8px; + line-height: 1.42857143; + vertical-align: top; + border-top: 1px solid #ddd; +} +.table > thead > tr > th { + vertical-align: bottom; + border-bottom: 2px solid #ddd; +} +.table > caption + thead > tr:first-child > th, +.table > colgroup + thead > tr:first-child > th, +.table > thead:first-child > tr:first-child > th, +.table > caption + thead > tr:first-child > td, +.table > colgroup + thead > tr:first-child > td, +.table > thead:first-child > tr:first-child > td { + border-top: 0; +} +.table > tbody + tbody { + border-top: 2px solid #ddd; +} +.table .table { + background-color: #fff; +} +.table-condensed > thead > tr > th, +.table-condensed > tbody > tr > th, +.table-condensed > tfoot > tr > th, +.table-condensed > thead > tr > td, +.table-condensed > tbody > tr > td, +.table-condensed > tfoot > tr > td { + padding: 5px; +} +.table-bordered { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > tbody > tr > th, +.table-bordered > tfoot > tr > th, +.table-bordered > thead > tr > td, +.table-bordered > tbody > tr > td, +.table-bordered > tfoot > tr > td { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > thead > tr > td { + border-bottom-width: 2px; +} +.table-striped > tbody > tr:nth-of-type(odd) { + background-color: #f9f9f9; +} +.table-hover > tbody > tr:hover { + background-color: #f5f5f5; +} +table col[class*="col-"] { + position: static; + display: table-column; + float: none; +} +table td[class*="col-"], +table th[class*="col-"] { + position: static; + display: table-cell; + float: none; +} +.table > thead > tr > td.active, +.table > tbody > tr > td.active, +.table > tfoot > tr > td.active, +.table > thead > tr > th.active, +.table > tbody > tr > th.active, +.table > tfoot > tr > th.active, +.table > thead > tr.active > td, +.table > tbody > tr.active > td, +.table > tfoot > tr.active > td, +.table > thead > tr.active > th, +.table > tbody > tr.active > th, +.table > tfoot > tr.active > th { + background-color: #f5f5f5; +} +.table-hover > tbody > tr > td.active:hover, +.table-hover > tbody > tr > th.active:hover, +.table-hover > tbody > tr.active:hover > td, +.table-hover > tbody > tr:hover > .active, +.table-hover > tbody > tr.active:hover > th { + background-color: #e8e8e8; +} +.table > thead > tr > td.success, +.table > tbody > tr > td.success, +.table > tfoot > tr > td.success, +.table > thead > tr > th.success, +.table > tbody > tr > th.success, +.table > tfoot > tr > th.success, +.table > thead > tr.success > td, +.table > tbody > tr.success > td, +.table > tfoot > tr.success > td, +.table > thead > tr.success > th, +.table > tbody > tr.success > th, +.table > tfoot > tr.success > th { + background-color: #dff0d8; +} +.table-hover > tbody > tr > td.success:hover, +.table-hover > tbody > tr > th.success:hover, +.table-hover > tbody > tr.success:hover > td, +.table-hover > tbody > tr:hover > .success, +.table-hover > tbody > tr.success:hover > th { + background-color: #d0e9c6; +} +.table > thead > tr > td.info, +.table > tbody > tr > td.info, +.table > tfoot > tr > td.info, +.table > thead > tr > th.info, +.table > tbody > tr > th.info, +.table > tfoot > tr > th.info, +.table > thead > tr.info > td, +.table > tbody > tr.info > td, +.table > tfoot > tr.info > td, +.table > thead > tr.info > th, +.table > tbody > tr.info > th, +.table > tfoot > tr.info > th { + background-color: #d9edf7; +} +.table-hover > tbody > tr > td.info:hover, +.table-hover > tbody > tr > th.info:hover, +.table-hover > tbody > tr.info:hover > td, +.table-hover > tbody > tr:hover > .info, +.table-hover > tbody > tr.info:hover > th { + background-color: #c4e3f3; +} +.table > thead > tr > td.warning, +.table > tbody > tr > td.warning, +.table > tfoot > tr > td.warning, +.table > thead > tr > th.warning, +.table > tbody > tr > th.warning, +.table > tfoot > tr > th.warning, +.table > thead > tr.warning > td, +.table > tbody > tr.warning > td, +.table > tfoot > tr.warning > td, +.table > thead > tr.warning > th, +.table > tbody > tr.warning > th, +.table > tfoot > tr.warning > th { + background-color: #fcf8e3; +} +.table-hover > tbody > tr > td.warning:hover, +.table-hover > tbody > tr > th.warning:hover, +.table-hover > tbody > tr.warning:hover > td, +.table-hover > tbody > tr:hover > .warning, +.table-hover > tbody > tr.warning:hover > th { + background-color: #faf2cc; +} +.table > thead > tr > td.danger, +.table > tbody > tr > td.danger, +.table > tfoot > tr > td.danger, +.table > thead > tr > th.danger, +.table > tbody > tr > th.danger, +.table > tfoot > tr > th.danger, +.table > thead > tr.danger > td, +.table > tbody > tr.danger > td, +.table > tfoot > tr.danger > td, +.table > thead > tr.danger > th, +.table > tbody > tr.danger > th, +.table > tfoot > tr.danger > th { + background-color: #f2dede; +} +.table-hover > tbody > tr > td.danger:hover, +.table-hover > tbody > tr > th.danger:hover, +.table-hover > tbody > tr.danger:hover > td, +.table-hover > tbody > tr:hover > .danger, +.table-hover > tbody > tr.danger:hover > th { + background-color: #ebcccc; +} +.table-responsive { + min-height: .01%; + overflow-x: auto; +} +@media screen and (max-width: 767px) { + .table-responsive { + width: 100%; + margin-bottom: 15px; + overflow-y: hidden; + -ms-overflow-style: -ms-autohiding-scrollbar; + border: 1px solid #ddd; + } + .table-responsive > .table { + margin-bottom: 0; + } + .table-responsive > .table > thead > tr > th, + .table-responsive > .table > tbody > tr > th, + .table-responsive > .table > tfoot > tr > th, + .table-responsive > .table > thead > tr > td, + .table-responsive > .table > tbody > tr > td, + .table-responsive > .table > tfoot > tr > td { + white-space: nowrap; + } + .table-responsive > .table-bordered { + border: 0; + } + .table-responsive > .table-bordered > thead > tr > th:first-child, + .table-responsive > .table-bordered > tbody > tr > th:first-child, + .table-responsive > .table-bordered > tfoot > tr > th:first-child, + .table-responsive > .table-bordered > thead > tr > td:first-child, + .table-responsive > .table-bordered > tbody > tr > td:first-child, + .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; + } + .table-responsive > .table-bordered > thead > tr > th:last-child, + .table-responsive > .table-bordered > tbody > tr > th:last-child, + .table-responsive > .table-bordered > tfoot > tr > th:last-child, + .table-responsive > .table-bordered > thead > tr > td:last-child, + .table-responsive > .table-bordered > tbody > tr > td:last-child, + .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; + } + .table-responsive > .table-bordered > tbody > tr:last-child > th, + .table-responsive > .table-bordered > tfoot > tr:last-child > th, + .table-responsive > .table-bordered > tbody > tr:last-child > td, + .table-responsive > .table-bordered > tfoot > tr:last-child > td { + border-bottom: 0; + } +} +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} +legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: inherit; + color: #333; + border: 0; + border-bottom: 1px solid #e5e5e5; +} +label { + display: inline-block; + max-width: 100%; + margin-bottom: 5px; + font-weight: bold; +} +input[type="search"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +input[type="radio"], +input[type="checkbox"] { + margin: 4px 0 0; + margin-top: 1px \9; + line-height: normal; +} +input[type="file"] { + display: block; +} +input[type="range"] { + display: block; + width: 100%; +} +select[multiple], +select[size] { + height: auto; +} +input[type="file"]:focus, +input[type="radio"]:focus, +input[type="checkbox"]:focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +output { + display: block; + padding-top: 7px; + font-size: 14px; + line-height: 1.42857143; + color: #555; +} +.form-control { + display: block; + width: 100%; + height: 34px; + padding: 6px 12px; + font-size: 14px; + line-height: 1.42857143; + color: #555; + background-color: #fff; + background-image: none; + border: 1px solid #ccc; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; + -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; +} +.form-control:focus { + border-color: #66afe9; + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); +} +.form-control::-moz-placeholder { + color: #999; + opacity: 1; +} +.form-control:-ms-input-placeholder { + color: #999; +} +.form-control::-webkit-input-placeholder { + color: #999; +} +.form-control[disabled], +.form-control[readonly], +fieldset[disabled] .form-control { + background-color: #eee; + opacity: 1; +} +.form-control[disabled], +fieldset[disabled] .form-control { + cursor: not-allowed; +} +textarea.form-control { + height: auto; +} +input[type="search"] { + -webkit-appearance: none; +} +@media screen and (-webkit-min-device-pixel-ratio: 0) { + input[type="date"], + input[type="time"], + input[type="datetime-local"], + input[type="month"] { + line-height: 34px; + } + input[type="date"].input-sm, + input[type="time"].input-sm, + input[type="datetime-local"].input-sm, + input[type="month"].input-sm, + .input-group-sm input[type="date"], + .input-group-sm input[type="time"], + .input-group-sm input[type="datetime-local"], + .input-group-sm input[type="month"] { + line-height: 30px; + } + input[type="date"].input-lg, + input[type="time"].input-lg, + input[type="datetime-local"].input-lg, + input[type="month"].input-lg, + .input-group-lg input[type="date"], + .input-group-lg input[type="time"], + .input-group-lg input[type="datetime-local"], + .input-group-lg input[type="month"] { + line-height: 46px; + } +} +.form-group { + margin-bottom: 15px; +} +.radio, +.checkbox { + position: relative; + display: block; + margin-top: 10px; + margin-bottom: 10px; +} +.radio label, +.checkbox label { + min-height: 20px; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + cursor: pointer; +} +.radio input[type="radio"], +.radio-inline input[type="radio"], +.checkbox input[type="checkbox"], +.checkbox-inline input[type="checkbox"] { + position: absolute; + margin-top: 4px \9; + margin-left: -20px; +} +.radio + .radio, +.checkbox + .checkbox { + margin-top: -5px; +} +.radio-inline, +.checkbox-inline { + position: relative; + display: inline-block; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + vertical-align: middle; + cursor: pointer; +} +.radio-inline + .radio-inline, +.checkbox-inline + .checkbox-inline { + margin-top: 0; + margin-left: 10px; +} +input[type="radio"][disabled], +input[type="checkbox"][disabled], +input[type="radio"].disabled, +input[type="checkbox"].disabled, +fieldset[disabled] input[type="radio"], +fieldset[disabled] input[type="checkbox"] { + cursor: not-allowed; +} +.radio-inline.disabled, +.checkbox-inline.disabled, +fieldset[disabled] .radio-inline, +fieldset[disabled] .checkbox-inline { + cursor: not-allowed; +} +.radio.disabled label, +.checkbox.disabled label, +fieldset[disabled] .radio label, +fieldset[disabled] .checkbox label { + cursor: not-allowed; +} +.form-control-static { + min-height: 34px; + padding-top: 7px; + padding-bottom: 7px; + margin-bottom: 0; +} +.form-control-static.input-lg, +.form-control-static.input-sm { + padding-right: 0; + padding-left: 0; +} +.input-sm { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-sm { + height: 30px; + line-height: 30px; +} +textarea.input-sm, +select[multiple].input-sm { + height: auto; +} +.form-group-sm .form-control { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.form-group-sm .form-control { + height: 30px; + line-height: 30px; +} +textarea.form-group-sm .form-control, +select[multiple].form-group-sm .form-control { + height: auto; +} +.form-group-sm .form-control-static { + height: 30px; + min-height: 32px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; +} +.input-lg { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-lg { + height: 46px; + line-height: 46px; +} +textarea.input-lg, +select[multiple].input-lg { + height: auto; +} +.form-group-lg .form-control { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.form-group-lg .form-control { + height: 46px; + line-height: 46px; +} +textarea.form-group-lg .form-control, +select[multiple].form-group-lg .form-control { + height: auto; +} +.form-group-lg .form-control-static { + height: 46px; + min-height: 38px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; +} +.has-feedback { + position: relative; +} +.has-feedback .form-control { + padding-right: 42.5px; +} +.form-control-feedback { + position: absolute; + top: 0; + right: 0; + z-index: 2; + display: block; + width: 34px; + height: 34px; + line-height: 34px; + text-align: center; + pointer-events: none; +} +.input-lg + .form-control-feedback { + width: 46px; + height: 46px; + line-height: 46px; +} +.input-sm + .form-control-feedback { + width: 30px; + height: 30px; + line-height: 30px; +} +.has-success .help-block, +.has-success .control-label, +.has-success .radio, +.has-success .checkbox, +.has-success .radio-inline, +.has-success .checkbox-inline, +.has-success.radio label, +.has-success.checkbox label, +.has-success.radio-inline label, +.has-success.checkbox-inline label { + color: #3c763d; +} +.has-success .form-control { + border-color: #3c763d; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-success .form-control:focus { + border-color: #2b542c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; +} +.has-success .input-group-addon { + color: #3c763d; + background-color: #dff0d8; + border-color: #3c763d; +} +.has-success .form-control-feedback { + color: #3c763d; +} +.has-warning .help-block, +.has-warning .control-label, +.has-warning .radio, +.has-warning .checkbox, +.has-warning .radio-inline, +.has-warning .checkbox-inline, +.has-warning.radio label, +.has-warning.checkbox label, +.has-warning.radio-inline label, +.has-warning.checkbox-inline label { + color: #8a6d3b; +} +.has-warning .form-control { + border-color: #8a6d3b; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-warning .form-control:focus { + border-color: #66512c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; +} +.has-warning .input-group-addon { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #8a6d3b; +} +.has-warning .form-control-feedback { + color: #8a6d3b; +} +.has-error .help-block, +.has-error .control-label, +.has-error .radio, +.has-error .checkbox, +.has-error .radio-inline, +.has-error .checkbox-inline, +.has-error.radio label, +.has-error.checkbox label, +.has-error.radio-inline label, +.has-error.checkbox-inline label { + color: #a94442; +} +.has-error .form-control { + border-color: #a94442; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-error .form-control:focus { + border-color: #843534; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; +} +.has-error .input-group-addon { + color: #a94442; + background-color: #f2dede; + border-color: #a94442; +} +.has-error .form-control-feedback { + color: #a94442; +} +.has-feedback label ~ .form-control-feedback { + top: 25px; +} +.has-feedback label.sr-only ~ .form-control-feedback { + top: 0; +} +.help-block { + display: block; + margin-top: 5px; + margin-bottom: 10px; + color: #737373; +} +@media (min-width: 768px) { + .form-inline .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .form-inline .form-control-static { + display: inline-block; + } + .form-inline .input-group { + display: inline-table; + vertical-align: middle; + } + .form-inline .input-group .input-group-addon, + .form-inline .input-group .input-group-btn, + .form-inline .input-group .form-control { + width: auto; + } + .form-inline .input-group > .form-control { + width: 100%; + } + .form-inline .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio, + .form-inline .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio label, + .form-inline .checkbox label { + padding-left: 0; + } + .form-inline .radio input[type="radio"], + .form-inline .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .form-inline .has-feedback .form-control-feedback { + top: 0; + } +} +.form-horizontal .radio, +.form-horizontal .checkbox, +.form-horizontal .radio-inline, +.form-horizontal .checkbox-inline { + padding-top: 7px; + margin-top: 0; + margin-bottom: 0; +} +.form-horizontal .radio, +.form-horizontal .checkbox { + min-height: 27px; +} +.form-horizontal .form-group { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .form-horizontal .control-label { + padding-top: 7px; + margin-bottom: 0; + text-align: right; + } +} +.form-horizontal .has-feedback .form-control-feedback { + right: 15px; +} +@media (min-width: 768px) { + .form-horizontal .form-group-lg .control-label { + padding-top: 14.333333px; + } +} +@media (min-width: 768px) { + .form-horizontal .form-group-sm .control-label { + padding-top: 6px; + } +} +.btn { + display: inline-block; + padding: 6px 12px; + margin-bottom: 0; + font-size: 14px; + font-weight: normal; + line-height: 1.42857143; + text-align: center; + white-space: nowrap; + vertical-align: middle; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.btn:focus, +.btn:active:focus, +.btn.active:focus, +.btn.focus, +.btn:active.focus, +.btn.active.focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.btn:hover, +.btn:focus, +.btn.focus { + color: #333; + text-decoration: none; +} +.btn:active, +.btn.active { + background-image: none; + outline: 0; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn.disabled, +.btn[disabled], +fieldset[disabled] .btn { + pointer-events: none; + cursor: not-allowed; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + box-shadow: none; + opacity: .65; +} +.btn-default { + color: #333; + background-color: #fff; + border-color: #ccc; +} +.btn-default:hover, +.btn-default:focus, +.btn-default.focus, +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + background-image: none; +} +.btn-default.disabled, +.btn-default[disabled], +fieldset[disabled] .btn-default, +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled.focus, +.btn-default[disabled].focus, +fieldset[disabled] .btn-default.focus, +.btn-default.disabled:active, +.btn-default[disabled]:active, +fieldset[disabled] .btn-default:active, +.btn-default.disabled.active, +.btn-default[disabled].active, +fieldset[disabled] .btn-default.active { + background-color: #fff; + border-color: #ccc; +} +.btn-default .badge { + color: #fff; + background-color: #333; +} +.btn-primary { + color: #fff; + background-color: #337ab7; + border-color: #2e6da4; +} +.btn-primary:hover, +.btn-primary:focus, +.btn-primary.focus, +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + color: #fff; + background-color: #286090; + border-color: #204d74; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + background-image: none; +} +.btn-primary.disabled, +.btn-primary[disabled], +fieldset[disabled] .btn-primary, +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled.focus, +.btn-primary[disabled].focus, +fieldset[disabled] .btn-primary.focus, +.btn-primary.disabled:active, +.btn-primary[disabled]:active, +fieldset[disabled] .btn-primary:active, +.btn-primary.disabled.active, +.btn-primary[disabled].active, +fieldset[disabled] .btn-primary.active { + background-color: #337ab7; + border-color: #2e6da4; +} +.btn-primary .badge { + color: #337ab7; + background-color: #fff; +} +.btn-success { + color: #fff; + background-color: #5cb85c; + border-color: #4cae4c; +} +.btn-success:hover, +.btn-success:focus, +.btn-success.focus, +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + background-image: none; +} +.btn-success.disabled, +.btn-success[disabled], +fieldset[disabled] .btn-success, +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled.focus, +.btn-success[disabled].focus, +fieldset[disabled] .btn-success.focus, +.btn-success.disabled:active, +.btn-success[disabled]:active, +fieldset[disabled] .btn-success:active, +.btn-success.disabled.active, +.btn-success[disabled].active, +fieldset[disabled] .btn-success.active { + background-color: #5cb85c; + border-color: #4cae4c; +} +.btn-success .badge { + color: #5cb85c; + background-color: #fff; +} +.btn-info { + color: #fff; + background-color: #5bc0de; + border-color: #46b8da; +} +.btn-info:hover, +.btn-info:focus, +.btn-info.focus, +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + background-image: none; +} +.btn-info.disabled, +.btn-info[disabled], +fieldset[disabled] .btn-info, +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled.focus, +.btn-info[disabled].focus, +fieldset[disabled] .btn-info.focus, +.btn-info.disabled:active, +.btn-info[disabled]:active, +fieldset[disabled] .btn-info:active, +.btn-info.disabled.active, +.btn-info[disabled].active, +fieldset[disabled] .btn-info.active { + background-color: #5bc0de; + border-color: #46b8da; +} +.btn-info .badge { + color: #5bc0de; + background-color: #fff; +} +.btn-warning { + color: #fff; + background-color: #f0ad4e; + border-color: #eea236; +} +.btn-warning:hover, +.btn-warning:focus, +.btn-warning.focus, +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + background-image: none; +} +.btn-warning.disabled, +.btn-warning[disabled], +fieldset[disabled] .btn-warning, +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled.focus, +.btn-warning[disabled].focus, +fieldset[disabled] .btn-warning.focus, +.btn-warning.disabled:active, +.btn-warning[disabled]:active, +fieldset[disabled] .btn-warning:active, +.btn-warning.disabled.active, +.btn-warning[disabled].active, +fieldset[disabled] .btn-warning.active { + background-color: #f0ad4e; + border-color: #eea236; +} +.btn-warning .badge { + color: #f0ad4e; + background-color: #fff; +} +.btn-danger { + color: #fff; + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger:hover, +.btn-danger:focus, +.btn-danger.focus, +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + background-image: none; +} +.btn-danger.disabled, +.btn-danger[disabled], +fieldset[disabled] .btn-danger, +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled.focus, +.btn-danger[disabled].focus, +fieldset[disabled] .btn-danger.focus, +.btn-danger.disabled:active, +.btn-danger[disabled]:active, +fieldset[disabled] .btn-danger:active, +.btn-danger.disabled.active, +.btn-danger[disabled].active, +fieldset[disabled] .btn-danger.active { + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger .badge { + color: #d9534f; + background-color: #fff; +} +.btn-link { + font-weight: normal; + color: #337ab7; + border-radius: 0; +} +.btn-link, +.btn-link:active, +.btn-link.active, +.btn-link[disabled], +fieldset[disabled] .btn-link { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-link, +.btn-link:hover, +.btn-link:focus, +.btn-link:active { + border-color: transparent; +} +.btn-link:hover, +.btn-link:focus { + color: #23527c; + text-decoration: underline; + background-color: transparent; +} +.btn-link[disabled]:hover, +fieldset[disabled] .btn-link:hover, +.btn-link[disabled]:focus, +fieldset[disabled] .btn-link:focus { + color: #777; + text-decoration: none; +} +.btn-lg, +.btn-group-lg > .btn { + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.btn-sm, +.btn-group-sm > .btn { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-xs, +.btn-group-xs > .btn { + padding: 1px 5px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-block { + display: block; + width: 100%; +} +.btn-block + .btn-block { + margin-top: 5px; +} +input[type="submit"].btn-block, +input[type="reset"].btn-block, +input[type="button"].btn-block { + width: 100%; +} +.fade { + opacity: 0; + -webkit-transition: opacity .15s linear; + -o-transition: opacity .15s linear; + transition: opacity .15s linear; +} +.fade.in { + opacity: 1; +} +.collapse { + display: none; +} +.collapse.in { + display: block; +} +tr.collapse.in { + display: table-row; +} +tbody.collapse.in { + display: table-row-group; +} +.collapsing { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition-timing-function: ease; + -o-transition-timing-function: ease; + transition-timing-function: ease; + -webkit-transition-duration: .35s; + -o-transition-duration: .35s; + transition-duration: .35s; + -webkit-transition-property: height, visibility; + -o-transition-property: height, visibility; + transition-property: height, visibility; +} +.caret { + display: inline-block; + width: 0; + height: 0; + margin-left: 2px; + vertical-align: middle; + border-top: 4px dashed; + border-right: 4px solid transparent; + border-left: 4px solid transparent; +} +.dropup, +.dropdown { + position: relative; +} +.dropdown-toggle:focus { + outline: 0; +} +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; + font-size: 14px; + text-align: left; + list-style: none; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, .15); + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175); + box-shadow: 0 6px 12px rgba(0, 0, 0, .175); +} +.dropdown-menu.pull-right { + right: 0; + left: auto; +} +.dropdown-menu .divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 1.42857143; + color: #333; + white-space: nowrap; +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + color: #262626; + text-decoration: none; + background-color: #f5f5f5; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + color: #fff; + text-decoration: none; + background-color: #337ab7; + outline: 0; +} +.dropdown-menu > .disabled > a, +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + color: #777; +} +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + text-decoration: none; + cursor: not-allowed; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); +} +.open > .dropdown-menu { + display: block; +} +.open > a { + outline: 0; +} +.dropdown-menu-right { + right: 0; + left: auto; +} +.dropdown-menu-left { + right: auto; + left: 0; +} +.dropdown-header { + display: block; + padding: 3px 20px; + font-size: 12px; + line-height: 1.42857143; + color: #777; + white-space: nowrap; +} +.dropdown-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 990; +} +.pull-right > .dropdown-menu { + right: 0; + left: auto; +} +.dropup .caret, +.navbar-fixed-bottom .dropdown .caret { + content: ""; + border-top: 0; + border-bottom: 4px solid; +} +.dropup .dropdown-menu, +.navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 2px; +} +@media (min-width: 768px) { + .navbar-right .dropdown-menu { + right: 0; + left: auto; + } + .navbar-right .dropdown-menu-left { + right: auto; + left: 0; + } +} +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-block; + vertical-align: middle; +} +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + float: left; +} +.btn-group > .btn:hover, +.btn-group-vertical > .btn:hover, +.btn-group > .btn:focus, +.btn-group-vertical > .btn:focus, +.btn-group > .btn:active, +.btn-group-vertical > .btn:active, +.btn-group > .btn.active, +.btn-group-vertical > .btn.active { + z-index: 2; +} +.btn-group .btn + .btn, +.btn-group .btn + .btn-group, +.btn-group .btn-group + .btn, +.btn-group .btn-group + .btn-group { + margin-left: -1px; +} +.btn-toolbar { + margin-left: -5px; +} +.btn-toolbar .btn-group, +.btn-toolbar .input-group { + float: left; +} +.btn-toolbar > .btn, +.btn-toolbar > .btn-group, +.btn-toolbar > .input-group { + margin-left: 5px; +} +.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { + border-radius: 0; +} +.btn-group > .btn:first-child { + margin-left: 0; +} +.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn:last-child:not(:first-child), +.btn-group > .dropdown-toggle:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group > .btn-group { + float: left; +} +.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group .dropdown-toggle:active, +.btn-group.open .dropdown-toggle { + outline: 0; +} +.btn-group > .btn + .dropdown-toggle { + padding-right: 8px; + padding-left: 8px; +} +.btn-group > .btn-lg + .dropdown-toggle { + padding-right: 12px; + padding-left: 12px; +} +.btn-group.open .dropdown-toggle { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn-group.open .dropdown-toggle.btn-link { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn .caret { + margin-left: 0; +} +.btn-lg .caret { + border-width: 5px 5px 0; + border-bottom-width: 0; +} +.dropup .btn-lg .caret { + border-width: 0 5px 5px; +} +.btn-group-vertical > .btn, +.btn-group-vertical > .btn-group, +.btn-group-vertical > .btn-group > .btn { + display: block; + float: none; + width: 100%; + max-width: 100%; +} +.btn-group-vertical > .btn-group > .btn { + float: none; +} +.btn-group-vertical > .btn + .btn, +.btn-group-vertical > .btn + .btn-group, +.btn-group-vertical > .btn-group + .btn, +.btn-group-vertical > .btn-group + .btn-group { + margin-top: -1px; + margin-left: 0; +} +.btn-group-vertical > .btn:not(:first-child):not(:last-child) { + border-radius: 0; +} +.btn-group-vertical > .btn:first-child:not(:last-child) { + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn:last-child:not(:first-child) { + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-left-radius: 4px; +} +.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.btn-group-justified { + display: table; + width: 100%; + table-layout: fixed; + border-collapse: separate; +} +.btn-group-justified > .btn, +.btn-group-justified > .btn-group { + display: table-cell; + float: none; + width: 1%; +} +.btn-group-justified > .btn-group .btn { + width: 100%; +} +.btn-group-justified > .btn-group .dropdown-menu { + left: auto; +} +[data-toggle="buttons"] > .btn input[type="radio"], +[data-toggle="buttons"] > .btn-group > .btn input[type="radio"], +[data-toggle="buttons"] > .btn input[type="checkbox"], +[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} +.input-group { + position: relative; + display: table; + border-collapse: separate; +} +.input-group[class*="col-"] { + float: none; + padding-right: 0; + padding-left: 0; +} +.input-group .form-control { + position: relative; + z-index: 2; + float: left; + width: 100%; + margin-bottom: 0; +} +.input-group-lg > .form-control, +.input-group-lg > .input-group-addon, +.input-group-lg > .input-group-btn > .btn { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-group-lg > .form-control, +select.input-group-lg > .input-group-addon, +select.input-group-lg > .input-group-btn > .btn { + height: 46px; + line-height: 46px; +} +textarea.input-group-lg > .form-control, +textarea.input-group-lg > .input-group-addon, +textarea.input-group-lg > .input-group-btn > .btn, +select[multiple].input-group-lg > .form-control, +select[multiple].input-group-lg > .input-group-addon, +select[multiple].input-group-lg > .input-group-btn > .btn { + height: auto; +} +.input-group-sm > .form-control, +.input-group-sm > .input-group-addon, +.input-group-sm > .input-group-btn > .btn { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-group-sm > .form-control, +select.input-group-sm > .input-group-addon, +select.input-group-sm > .input-group-btn > .btn { + height: 30px; + line-height: 30px; +} +textarea.input-group-sm > .form-control, +textarea.input-group-sm > .input-group-addon, +textarea.input-group-sm > .input-group-btn > .btn, +select[multiple].input-group-sm > .form-control, +select[multiple].input-group-sm > .input-group-addon, +select[multiple].input-group-sm > .input-group-btn > .btn { + height: auto; +} +.input-group-addon, +.input-group-btn, +.input-group .form-control { + display: table-cell; +} +.input-group-addon:not(:first-child):not(:last-child), +.input-group-btn:not(:first-child):not(:last-child), +.input-group .form-control:not(:first-child):not(:last-child) { + border-radius: 0; +} +.input-group-addon, +.input-group-btn { + width: 1%; + white-space: nowrap; + vertical-align: middle; +} +.input-group-addon { + padding: 6px 12px; + font-size: 14px; + font-weight: normal; + line-height: 1; + color: #555; + text-align: center; + background-color: #eee; + border: 1px solid #ccc; + border-radius: 4px; +} +.input-group-addon.input-sm { + padding: 5px 10px; + font-size: 12px; + border-radius: 3px; +} +.input-group-addon.input-lg { + padding: 10px 16px; + font-size: 18px; + border-radius: 6px; +} +.input-group-addon input[type="radio"], +.input-group-addon input[type="checkbox"] { + margin-top: 0; +} +.input-group .form-control:first-child, +.input-group-addon:first-child, +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group > .btn, +.input-group-btn:first-child > .dropdown-toggle, +.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), +.input-group-btn:last-child > .btn-group:not(:last-child) > .btn { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.input-group-addon:first-child { + border-right: 0; +} +.input-group .form-control:last-child, +.input-group-addon:last-child, +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group > .btn, +.input-group-btn:last-child > .dropdown-toggle, +.input-group-btn:first-child > .btn:not(:first-child), +.input-group-btn:first-child > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.input-group-addon:last-child { + border-left: 0; +} +.input-group-btn { + position: relative; + font-size: 0; + white-space: nowrap; +} +.input-group-btn > .btn { + position: relative; +} +.input-group-btn > .btn + .btn { + margin-left: -1px; +} +.input-group-btn > .btn:hover, +.input-group-btn > .btn:focus, +.input-group-btn > .btn:active { + z-index: 2; +} +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group { + margin-right: -1px; +} +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group { + margin-left: -1px; +} +.nav { + padding-left: 0; + margin-bottom: 0; + list-style: none; +} +.nav > li { + position: relative; + display: block; +} +.nav > li > a { + position: relative; + display: block; + padding: 10px 15px; +} +.nav > li > a:hover, +.nav > li > a:focus { + text-decoration: none; + background-color: #eee; +} +.nav > li.disabled > a { + color: #777; +} +.nav > li.disabled > a:hover, +.nav > li.disabled > a:focus { + color: #777; + text-decoration: none; + cursor: not-allowed; + background-color: transparent; +} +.nav .open > a, +.nav .open > a:hover, +.nav .open > a:focus { + background-color: #eee; + border-color: #337ab7; +} +.nav .nav-divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.nav > li > a > img { + max-width: none; +} +.nav-tabs { + border-bottom: 1px solid #ddd; +} +.nav-tabs > li { + float: left; + margin-bottom: -1px; +} +.nav-tabs > li > a { + margin-right: 2px; + line-height: 1.42857143; + border: 1px solid transparent; + border-radius: 4px 4px 0 0; +} +.nav-tabs > li > a:hover { + border-color: #eee #eee #ddd; +} +.nav-tabs > li.active > a, +.nav-tabs > li.active > a:hover, +.nav-tabs > li.active > a:focus { + color: #555; + cursor: default; + background-color: #fff; + border: 1px solid #ddd; + border-bottom-color: transparent; +} +.nav-tabs.nav-justified { + width: 100%; + border-bottom: 0; +} +.nav-tabs.nav-justified > li { + float: none; +} +.nav-tabs.nav-justified > li > a { + margin-bottom: 5px; + text-align: center; +} +.nav-tabs.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-tabs.nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs.nav-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs.nav-justified > .active > a, +.nav-tabs.nav-justified > .active > a:hover, +.nav-tabs.nav-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs.nav-justified > .active > a, + .nav-tabs.nav-justified > .active > a:hover, + .nav-tabs.nav-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.nav-pills > li { + float: left; +} +.nav-pills > li > a { + border-radius: 4px; +} +.nav-pills > li + li { + margin-left: 2px; +} +.nav-pills > li.active > a, +.nav-pills > li.active > a:hover, +.nav-pills > li.active > a:focus { + color: #fff; + background-color: #337ab7; +} +.nav-stacked > li { + float: none; +} +.nav-stacked > li + li { + margin-top: 2px; + margin-left: 0; +} +.nav-justified { + width: 100%; +} +.nav-justified > li { + float: none; +} +.nav-justified > li > a { + margin-bottom: 5px; + text-align: center; +} +.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs-justified { + border-bottom: 0; +} +.nav-tabs-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs-justified > .active > a, +.nav-tabs-justified > .active > a:hover, +.nav-tabs-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs-justified > .active > a, + .nav-tabs-justified > .active > a:hover, + .nav-tabs-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.tab-content > .tab-pane { + display: none; +} +.tab-content > .active { + display: block; +} +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.navbar { + position: relative; + min-height: 50px; + margin-bottom: 20px; + border: 1px solid transparent; +} +@media (min-width: 768px) { + .navbar { + border-radius: 4px; + } +} +@media (min-width: 768px) { + .navbar-header { + float: left; + } +} +.navbar-collapse { + padding-right: 15px; + padding-left: 15px; + overflow-x: visible; + -webkit-overflow-scrolling: touch; + border-top: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); +} +.navbar-collapse.in { + overflow-y: auto; +} +@media (min-width: 768px) { + .navbar-collapse { + width: auto; + border-top: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-collapse.collapse { + display: block !important; + height: auto !important; + padding-bottom: 0; + overflow: visible !important; + } + .navbar-collapse.in { + overflow-y: visible; + } + .navbar-fixed-top .navbar-collapse, + .navbar-static-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + padding-right: 0; + padding-left: 0; + } +} +.navbar-fixed-top .navbar-collapse, +.navbar-fixed-bottom .navbar-collapse { + max-height: 340px; +} +@media (max-device-width: 480px) and (orientation: landscape) { + .navbar-fixed-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + max-height: 200px; + } +} +.container > .navbar-header, +.container-fluid > .navbar-header, +.container > .navbar-collapse, +.container-fluid > .navbar-collapse { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .container > .navbar-header, + .container-fluid > .navbar-header, + .container > .navbar-collapse, + .container-fluid > .navbar-collapse { + margin-right: 0; + margin-left: 0; + } +} +.navbar-static-top { + z-index: 1000; + border-width: 0 0 1px; +} +@media (min-width: 768px) { + .navbar-static-top { + border-radius: 0; + } +} +.navbar-fixed-top, +.navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + z-index: 1030; +} +@media (min-width: 768px) { + .navbar-fixed-top, + .navbar-fixed-bottom { + border-radius: 0; + } +} +.navbar-fixed-top { + top: 0; + border-width: 0 0 1px; +} +.navbar-fixed-bottom { + bottom: 0; + margin-bottom: 0; + border-width: 1px 0 0; +} +.navbar-brand { + float: left; + height: 50px; + padding: 15px 15px; + font-size: 18px; + line-height: 20px; +} +.navbar-brand:hover, +.navbar-brand:focus { + text-decoration: none; +} +.navbar-brand > img { + display: block; +} +@media (min-width: 768px) { + .navbar > .container .navbar-brand, + .navbar > .container-fluid .navbar-brand { + margin-left: -15px; + } +} +.navbar-toggle { + position: relative; + float: right; + padding: 9px 10px; + margin-top: 8px; + margin-right: 15px; + margin-bottom: 8px; + background-color: transparent; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.navbar-toggle:focus { + outline: 0; +} +.navbar-toggle .icon-bar { + display: block; + width: 22px; + height: 2px; + border-radius: 1px; +} +.navbar-toggle .icon-bar + .icon-bar { + margin-top: 4px; +} +@media (min-width: 768px) { + .navbar-toggle { + display: none; + } +} +.navbar-nav { + margin: 7.5px -15px; +} +.navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + line-height: 20px; +} +@media (max-width: 767px) { + .navbar-nav .open .dropdown-menu { + position: static; + float: none; + width: auto; + margin-top: 0; + background-color: transparent; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-nav .open .dropdown-menu > li > a, + .navbar-nav .open .dropdown-menu .dropdown-header { + padding: 5px 15px 5px 25px; + } + .navbar-nav .open .dropdown-menu > li > a { + line-height: 20px; + } + .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-nav .open .dropdown-menu > li > a:focus { + background-image: none; + } +} +@media (min-width: 768px) { + .navbar-nav { + float: left; + margin: 0; + } + .navbar-nav > li { + float: left; + } + .navbar-nav > li > a { + padding-top: 15px; + padding-bottom: 15px; + } +} +.navbar-form { + padding: 10px 15px; + margin-top: 8px; + margin-right: -15px; + margin-bottom: 8px; + margin-left: -15px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); +} +@media (min-width: 768px) { + .navbar-form .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .navbar-form .form-control-static { + display: inline-block; + } + .navbar-form .input-group { + display: inline-table; + vertical-align: middle; + } + .navbar-form .input-group .input-group-addon, + .navbar-form .input-group .input-group-btn, + .navbar-form .input-group .form-control { + width: auto; + } + .navbar-form .input-group > .form-control { + width: 100%; + } + .navbar-form .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio, + .navbar-form .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio label, + .navbar-form .checkbox label { + padding-left: 0; + } + .navbar-form .radio input[type="radio"], + .navbar-form .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .navbar-form .has-feedback .form-control-feedback { + top: 0; + } +} +@media (max-width: 767px) { + .navbar-form .form-group { + margin-bottom: 5px; + } + .navbar-form .form-group:last-child { + margin-bottom: 0; + } +} +@media (min-width: 768px) { + .navbar-form { + width: auto; + padding-top: 0; + padding-bottom: 0; + margin-right: 0; + margin-left: 0; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } +} +.navbar-nav > li > .dropdown-menu { + margin-top: 0; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { + margin-bottom: 0; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.navbar-btn { + margin-top: 8px; + margin-bottom: 8px; +} +.navbar-btn.btn-sm { + margin-top: 10px; + margin-bottom: 10px; +} +.navbar-btn.btn-xs { + margin-top: 14px; + margin-bottom: 14px; +} +.navbar-text { + margin-top: 15px; + margin-bottom: 15px; +} +@media (min-width: 768px) { + .navbar-text { + float: left; + margin-right: 15px; + margin-left: 15px; + } +} +@media (min-width: 768px) { + .navbar-left { + float: left !important; + } + .navbar-right { + float: right !important; + margin-right: -15px; + } + .navbar-right ~ .navbar-right { + margin-right: 0; + } +} +.navbar-default { + background-color: #f8f8f8; + border-color: #e7e7e7; +} +.navbar-default .navbar-brand { + color: #777; +} +.navbar-default .navbar-brand:hover, +.navbar-default .navbar-brand:focus { + color: #5e5e5e; + background-color: transparent; +} +.navbar-default .navbar-text { + color: #777; +} +.navbar-default .navbar-nav > li > a { + color: #777; +} +.navbar-default .navbar-nav > li > a:hover, +.navbar-default .navbar-nav > li > a:focus { + color: #333; + background-color: transparent; +} +.navbar-default .navbar-nav > .active > a, +.navbar-default .navbar-nav > .active > a:hover, +.navbar-default .navbar-nav > .active > a:focus { + color: #555; + background-color: #e7e7e7; +} +.navbar-default .navbar-nav > .disabled > a, +.navbar-default .navbar-nav > .disabled > a:hover, +.navbar-default .navbar-nav > .disabled > a:focus { + color: #ccc; + background-color: transparent; +} +.navbar-default .navbar-toggle { + border-color: #ddd; +} +.navbar-default .navbar-toggle:hover, +.navbar-default .navbar-toggle:focus { + background-color: #ddd; +} +.navbar-default .navbar-toggle .icon-bar { + background-color: #888; +} +.navbar-default .navbar-collapse, +.navbar-default .navbar-form { + border-color: #e7e7e7; +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .open > a:hover, +.navbar-default .navbar-nav > .open > a:focus { + color: #555; + background-color: #e7e7e7; +} +@media (max-width: 767px) { + .navbar-default .navbar-nav .open .dropdown-menu > li > a { + color: #777; + } + .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { + color: #333; + background-color: transparent; + } + .navbar-default .navbar-nav .open .dropdown-menu > .active > a, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #555; + background-color: #e7e7e7; + } + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #ccc; + background-color: transparent; + } +} +.navbar-default .navbar-link { + color: #777; +} +.navbar-default .navbar-link:hover { + color: #333; +} +.navbar-default .btn-link { + color: #777; +} +.navbar-default .btn-link:hover, +.navbar-default .btn-link:focus { + color: #333; +} +.navbar-default .btn-link[disabled]:hover, +fieldset[disabled] .navbar-default .btn-link:hover, +.navbar-default .btn-link[disabled]:focus, +fieldset[disabled] .navbar-default .btn-link:focus { + color: #ccc; +} +.navbar-inverse { + background-color: #222; + border-color: #080808; +} +.navbar-inverse .navbar-brand { + color: #9d9d9d; +} +.navbar-inverse .navbar-brand:hover, +.navbar-inverse .navbar-brand:focus { + color: #fff; + background-color: transparent; +} +.navbar-inverse .navbar-text { + color: #9d9d9d; +} +.navbar-inverse .navbar-nav > li > a { + color: #9d9d9d; +} +.navbar-inverse .navbar-nav > li > a:hover, +.navbar-inverse .navbar-nav > li > a:focus { + color: #fff; + background-color: transparent; +} +.navbar-inverse .navbar-nav > .active > a, +.navbar-inverse .navbar-nav > .active > a:hover, +.navbar-inverse .navbar-nav > .active > a:focus { + color: #fff; + background-color: #080808; +} +.navbar-inverse .navbar-nav > .disabled > a, +.navbar-inverse .navbar-nav > .disabled > a:hover, +.navbar-inverse .navbar-nav > .disabled > a:focus { + color: #444; + background-color: transparent; +} +.navbar-inverse .navbar-toggle { + border-color: #333; +} +.navbar-inverse .navbar-toggle:hover, +.navbar-inverse .navbar-toggle:focus { + background-color: #333; +} +.navbar-inverse .navbar-toggle .icon-bar { + background-color: #fff; +} +.navbar-inverse .navbar-collapse, +.navbar-inverse .navbar-form { + border-color: #101010; +} +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .open > a:hover, +.navbar-inverse .navbar-nav > .open > a:focus { + color: #fff; + background-color: #080808; +} +@media (max-width: 767px) { + .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { + border-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu .divider { + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { + color: #9d9d9d; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { + color: #fff; + background-color: transparent; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #fff; + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #444; + background-color: transparent; + } +} +.navbar-inverse .navbar-link { + color: #9d9d9d; +} +.navbar-inverse .navbar-link:hover { + color: #fff; +} +.navbar-inverse .btn-link { + color: #9d9d9d; +} +.navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link:focus { + color: #fff; +} +.navbar-inverse .btn-link[disabled]:hover, +fieldset[disabled] .navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link[disabled]:focus, +fieldset[disabled] .navbar-inverse .btn-link:focus { + color: #444; +} +.breadcrumb { + padding: 8px 15px; + margin-bottom: 20px; + list-style: none; + background-color: #f5f5f5; + border-radius: 4px; +} +.breadcrumb > li { + display: inline-block; +} +.breadcrumb > li + li:before { + padding: 0 5px; + color: #ccc; + content: "/\00a0"; +} +.breadcrumb > .active { + color: #777; +} +.pagination { + display: inline-block; + padding-left: 0; + margin: 20px 0; + border-radius: 4px; +} +.pagination > li { + display: inline; +} +.pagination > li > a, +.pagination > li > span { + position: relative; + float: left; + padding: 6px 12px; + margin-left: -1px; + line-height: 1.42857143; + color: #337ab7; + text-decoration: none; + background-color: #fff; + border: 1px solid #ddd; +} +.pagination > li:first-child > a, +.pagination > li:first-child > span { + margin-left: 0; + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; +} +.pagination > li:last-child > a, +.pagination > li:last-child > span { + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; +} +.pagination > li > a:hover, +.pagination > li > span:hover, +.pagination > li > a:focus, +.pagination > li > span:focus { + color: #23527c; + background-color: #eee; + border-color: #ddd; +} +.pagination > .active > a, +.pagination > .active > span, +.pagination > .active > a:hover, +.pagination > .active > span:hover, +.pagination > .active > a:focus, +.pagination > .active > span:focus { + z-index: 2; + color: #fff; + cursor: default; + background-color: #337ab7; + border-color: #337ab7; +} +.pagination > .disabled > span, +.pagination > .disabled > span:hover, +.pagination > .disabled > span:focus, +.pagination > .disabled > a, +.pagination > .disabled > a:hover, +.pagination > .disabled > a:focus { + color: #777; + cursor: not-allowed; + background-color: #fff; + border-color: #ddd; +} +.pagination-lg > li > a, +.pagination-lg > li > span { + padding: 10px 16px; + font-size: 18px; +} +.pagination-lg > li:first-child > a, +.pagination-lg > li:first-child > span { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} +.pagination-lg > li:last-child > a, +.pagination-lg > li:last-child > span { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} +.pagination-sm > li > a, +.pagination-sm > li > span { + padding: 5px 10px; + font-size: 12px; +} +.pagination-sm > li:first-child > a, +.pagination-sm > li:first-child > span { + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; +} +.pagination-sm > li:last-child > a, +.pagination-sm > li:last-child > span { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} +.pager { + padding-left: 0; + margin: 20px 0; + text-align: center; + list-style: none; +} +.pager li { + display: inline; +} +.pager li > a, +.pager li > span { + display: inline-block; + padding: 5px 14px; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 15px; +} +.pager li > a:hover, +.pager li > a:focus { + text-decoration: none; + background-color: #eee; +} +.pager .next > a, +.pager .next > span { + float: right; +} +.pager .previous > a, +.pager .previous > span { + float: left; +} +.pager .disabled > a, +.pager .disabled > a:hover, +.pager .disabled > a:focus, +.pager .disabled > span { + color: #777; + cursor: not-allowed; + background-color: #fff; +} +.label { + display: inline; + padding: .2em .6em .3em; + font-size: 75%; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: .25em; +} +a.label:hover, +a.label:focus { + color: #fff; + text-decoration: none; + cursor: pointer; +} +.label:empty { + display: none; +} +.btn .label { + position: relative; + top: -1px; +} +.label-default { + background-color: #777; +} +.label-default[href]:hover, +.label-default[href]:focus { + background-color: #5e5e5e; +} +.label-primary { + background-color: #337ab7; +} +.label-primary[href]:hover, +.label-primary[href]:focus { + background-color: #286090; +} +.label-success { + background-color: #5cb85c; +} +.label-success[href]:hover, +.label-success[href]:focus { + background-color: #449d44; +} +.label-info { + background-color: #5bc0de; +} +.label-info[href]:hover, +.label-info[href]:focus { + background-color: #31b0d5; +} +.label-warning { + background-color: #f0ad4e; +} +.label-warning[href]:hover, +.label-warning[href]:focus { + background-color: #ec971f; +} +.label-danger { + background-color: #d9534f; +} +.label-danger[href]:hover, +.label-danger[href]:focus { + background-color: #c9302c; +} +.badge { + display: inline-block; + min-width: 10px; + padding: 3px 7px; + font-size: 12px; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + background-color: #777; + border-radius: 10px; +} +.badge:empty { + display: none; +} +.btn .badge { + position: relative; + top: -1px; +} +.btn-xs .badge, +.btn-group-xs > .btn .badge { + top: 0; + padding: 1px 5px; +} +a.badge:hover, +a.badge:focus { + color: #fff; + text-decoration: none; + cursor: pointer; +} +.list-group-item.active > .badge, +.nav-pills > .active > a > .badge { + color: #337ab7; + background-color: #fff; +} +.list-group-item > .badge { + float: right; +} +.list-group-item > .badge + .badge { + margin-right: 5px; +} +.nav-pills > li > a > .badge { + margin-left: 3px; +} +.jumbotron { + padding: 30px 15px; + margin-bottom: 30px; + color: inherit; + background-color: #eee; +} +.jumbotron h1, +.jumbotron .h1 { + color: inherit; +} +.jumbotron p { + margin-bottom: 15px; + font-size: 21px; + font-weight: 200; +} +.jumbotron > hr { + border-top-color: #d5d5d5; +} +.container .jumbotron, +.container-fluid .jumbotron { + border-radius: 6px; +} +.jumbotron .container { + max-width: 100%; +} +@media screen and (min-width: 768px) { + .jumbotron { + padding: 48px 0; + } + .container .jumbotron, + .container-fluid .jumbotron { + padding-right: 60px; + padding-left: 60px; + } + .jumbotron h1, + .jumbotron .h1 { + font-size: 63px; + } +} +.thumbnail { + display: block; + padding: 4px; + margin-bottom: 20px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: border .2s ease-in-out; + -o-transition: border .2s ease-in-out; + transition: border .2s ease-in-out; +} +.thumbnail > img, +.thumbnail a > img { + margin-right: auto; + margin-left: auto; +} +a.thumbnail:hover, +a.thumbnail:focus, +a.thumbnail.active { + border-color: #337ab7; +} +.thumbnail .caption { + padding: 9px; + color: #333; +} +.alert { + padding: 15px; + margin-bottom: 20px; + border: 1px solid transparent; + border-radius: 4px; +} +.alert h4 { + margin-top: 0; + color: inherit; +} +.alert .alert-link { + font-weight: bold; +} +.alert > p, +.alert > ul { + margin-bottom: 0; +} +.alert > p + p { + margin-top: 5px; +} +.alert-dismissable, +.alert-dismissible { + padding-right: 35px; +} +.alert-dismissable .close, +.alert-dismissible .close { + position: relative; + top: -2px; + right: -21px; + color: inherit; +} +.alert-success { + color: #3c763d; + background-color: #dff0d8; + border-color: #d6e9c6; +} +.alert-success hr { + border-top-color: #c9e2b3; +} +.alert-success .alert-link { + color: #2b542c; +} +.alert-info { + color: #31708f; + background-color: #d9edf7; + border-color: #bce8f1; +} +.alert-info hr { + border-top-color: #a6e1ec; +} +.alert-info .alert-link { + color: #245269; +} +.alert-warning { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #faebcc; +} +.alert-warning hr { + border-top-color: #f7e1b5; +} +.alert-warning .alert-link { + color: #66512c; +} +.alert-danger { + color: #a94442; + background-color: #f2dede; + border-color: #ebccd1; +} +.alert-danger hr { + border-top-color: #e4b9c0; +} +.alert-danger .alert-link { + color: #843534; +} +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@-o-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +.progress { + height: 20px; + margin-bottom: 20px; + overflow: hidden; + background-color: #f5f5f5; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); +} +.progress-bar { + float: left; + width: 0; + height: 100%; + font-size: 12px; + line-height: 20px; + color: #fff; + text-align: center; + background-color: #337ab7; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); + -webkit-transition: width .6s ease; + -o-transition: width .6s ease; + transition: width .6s ease; +} +.progress-striped .progress-bar, +.progress-bar-striped { + background-image: -webkit-linear-gradient(45deg, 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(45deg, 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(45deg, 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); + -webkit-background-size: 40px 40px; + background-size: 40px 40px; +} +.progress.active .progress-bar, +.progress-bar.active { + -webkit-animation: progress-bar-stripes 2s linear infinite; + -o-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite; +} +.progress-bar-success { + background-color: #5cb85c; +} +.progress-striped .progress-bar-success { + background-image: -webkit-linear-gradient(45deg, 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(45deg, 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(45deg, 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); +} +.progress-bar-info { + background-color: #5bc0de; +} +.progress-striped .progress-bar-info { + background-image: -webkit-linear-gradient(45deg, 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(45deg, 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(45deg, 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); +} +.progress-bar-warning { + background-color: #f0ad4e; +} +.progress-striped .progress-bar-warning { + background-image: -webkit-linear-gradient(45deg, 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(45deg, 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(45deg, 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); +} +.progress-bar-danger { + background-color: #d9534f; +} +.progress-striped .progress-bar-danger { + background-image: -webkit-linear-gradient(45deg, 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(45deg, 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(45deg, 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); +} +.media { + margin-top: 15px; +} +.media:first-child { + margin-top: 0; +} +.media, +.media-body { + overflow: hidden; + zoom: 1; +} +.media-body { + width: 10000px; +} +.media-object { + display: block; +} +.media-right, +.media > .pull-right { + padding-left: 10px; +} +.media-left, +.media > .pull-left { + padding-right: 10px; +} +.media-left, +.media-right, +.media-body { + display: table-cell; + vertical-align: top; +} +.media-middle { + vertical-align: middle; +} +.media-bottom { + vertical-align: bottom; +} +.media-heading { + margin-top: 0; + margin-bottom: 5px; +} +.media-list { + padding-left: 0; + list-style: none; +} +.list-group { + padding-left: 0; + margin-bottom: 20px; +} +.list-group-item { + position: relative; + display: block; + padding: 10px 15px; + margin-bottom: -1px; + background-color: #fff; + border: 1px solid #ddd; +} +.list-group-item:first-child { + border-top-left-radius: 4px; + border-top-right-radius: 4px; +} +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +a.list-group-item { + color: #555; +} +a.list-group-item .list-group-item-heading { + color: #333; +} +a.list-group-item:hover, +a.list-group-item:focus { + color: #555; + text-decoration: none; + background-color: #f5f5f5; +} +.list-group-item.disabled, +.list-group-item.disabled:hover, +.list-group-item.disabled:focus { + color: #777; + cursor: not-allowed; + background-color: #eee; +} +.list-group-item.disabled .list-group-item-heading, +.list-group-item.disabled:hover .list-group-item-heading, +.list-group-item.disabled:focus .list-group-item-heading { + color: inherit; +} +.list-group-item.disabled .list-group-item-text, +.list-group-item.disabled:hover .list-group-item-text, +.list-group-item.disabled:focus .list-group-item-text { + color: #777; +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + z-index: 2; + color: #fff; + background-color: #337ab7; + border-color: #337ab7; +} +.list-group-item.active .list-group-item-heading, +.list-group-item.active:hover .list-group-item-heading, +.list-group-item.active:focus .list-group-item-heading, +.list-group-item.active .list-group-item-heading > small, +.list-group-item.active:hover .list-group-item-heading > small, +.list-group-item.active:focus .list-group-item-heading > small, +.list-group-item.active .list-group-item-heading > .small, +.list-group-item.active:hover .list-group-item-heading > .small, +.list-group-item.active:focus .list-group-item-heading > .small { + color: inherit; +} +.list-group-item.active .list-group-item-text, +.list-group-item.active:hover .list-group-item-text, +.list-group-item.active:focus .list-group-item-text { + color: #c7ddef; +} +.list-group-item-success { + color: #3c763d; + background-color: #dff0d8; +} +a.list-group-item-success { + color: #3c763d; +} +a.list-group-item-success .list-group-item-heading { + color: inherit; +} +a.list-group-item-success:hover, +a.list-group-item-success:focus { + color: #3c763d; + background-color: #d0e9c6; +} +a.list-group-item-success.active, +a.list-group-item-success.active:hover, +a.list-group-item-success.active:focus { + color: #fff; + background-color: #3c763d; + border-color: #3c763d; +} +.list-group-item-info { + color: #31708f; + background-color: #d9edf7; +} +a.list-group-item-info { + color: #31708f; +} +a.list-group-item-info .list-group-item-heading { + color: inherit; +} +a.list-group-item-info:hover, +a.list-group-item-info:focus { + color: #31708f; + background-color: #c4e3f3; +} +a.list-group-item-info.active, +a.list-group-item-info.active:hover, +a.list-group-item-info.active:focus { + color: #fff; + background-color: #31708f; + border-color: #31708f; +} +.list-group-item-warning { + color: #8a6d3b; + background-color: #fcf8e3; +} +a.list-group-item-warning { + color: #8a6d3b; +} +a.list-group-item-warning .list-group-item-heading { + color: inherit; +} +a.list-group-item-warning:hover, +a.list-group-item-warning:focus { + color: #8a6d3b; + background-color: #faf2cc; +} +a.list-group-item-warning.active, +a.list-group-item-warning.active:hover, +a.list-group-item-warning.active:focus { + color: #fff; + background-color: #8a6d3b; + border-color: #8a6d3b; +} +.list-group-item-danger { + color: #a94442; + background-color: #f2dede; +} +a.list-group-item-danger { + color: #a94442; +} +a.list-group-item-danger .list-group-item-heading { + color: inherit; +} +a.list-group-item-danger:hover, +a.list-group-item-danger:focus { + color: #a94442; + background-color: #ebcccc; +} +a.list-group-item-danger.active, +a.list-group-item-danger.active:hover, +a.list-group-item-danger.active:focus { + color: #fff; + background-color: #a94442; + border-color: #a94442; +} +.list-group-item-heading { + margin-top: 0; + margin-bottom: 5px; +} +.list-group-item-text { + margin-bottom: 0; + line-height: 1.3; +} +.panel { + margin-bottom: 20px; + background-color: #fff; + border: 1px solid transparent; + border-radius: 4px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05); + box-shadow: 0 1px 1px rgba(0, 0, 0, .05); +} +.panel-body { + padding: 15px; +} +.panel-heading { + padding: 10px 15px; + border-bottom: 1px solid transparent; + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel-heading > .dropdown .dropdown-toggle { + color: inherit; +} +.panel-title { + margin-top: 0; + margin-bottom: 0; + font-size: 16px; + color: inherit; +} +.panel-title > a, +.panel-title > small, +.panel-title > .small, +.panel-title > small > a, +.panel-title > .small > a { + color: inherit; +} +.panel-footer { + padding: 10px 15px; + background-color: #f5f5f5; + border-top: 1px solid #ddd; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .list-group, +.panel > .panel-collapse > .list-group { + margin-bottom: 0; +} +.panel > .list-group .list-group-item, +.panel > .panel-collapse > .list-group .list-group-item { + border-width: 1px 0; + border-radius: 0; +} +.panel > .list-group:first-child .list-group-item:first-child, +.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child { + border-top: 0; + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .list-group:last-child .list-group-item:last-child, +.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child { + border-bottom: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel-heading + .list-group .list-group-item:first-child { + border-top-width: 0; +} +.list-group + .panel-footer { + border-top-width: 0; +} +.panel > .table, +.panel > .table-responsive > .table, +.panel > .panel-collapse > .table { + margin-bottom: 0; +} +.panel > .table caption, +.panel > .table-responsive > .table caption, +.panel > .panel-collapse > .table caption { + padding-right: 15px; + padding-left: 15px; +} +.panel > .table:first-child, +.panel > .table-responsive:first-child > .table:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { + border-top-left-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { + border-top-right-radius: 3px; +} +.panel > .table:last-child, +.panel > .table-responsive:last-child > .table:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { + border-bottom-right-radius: 3px; +} +.panel > .panel-body + .table, +.panel > .panel-body + .table-responsive, +.panel > .table + .panel-body, +.panel > .table-responsive + .panel-body { + border-top: 1px solid #ddd; +} +.panel > .table > tbody:first-child > tr:first-child th, +.panel > .table > tbody:first-child > tr:first-child td { + border-top: 0; +} +.panel > .table-bordered, +.panel > .table-responsive > .table-bordered { + border: 0; +} +.panel > .table-bordered > thead > tr > th:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:first-child, +.panel > .table-bordered > tbody > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, +.panel > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-bordered > thead > tr > td:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:first-child, +.panel > .table-bordered > tbody > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, +.panel > .table-bordered > tfoot > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; +} +.panel > .table-bordered > thead > tr > th:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:last-child, +.panel > .table-bordered > tbody > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, +.panel > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-bordered > thead > tr > td:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:last-child, +.panel > .table-bordered > tbody > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, +.panel > .table-bordered > tfoot > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; +} +.panel > .table-bordered > thead > tr:first-child > td, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > td, +.panel > .table-bordered > tbody > tr:first-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, +.panel > .table-bordered > thead > tr:first-child > th, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > th, +.panel > .table-bordered > tbody > tr:first-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { + border-bottom: 0; +} +.panel > .table-bordered > tbody > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, +.panel > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-bordered > tbody > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, +.panel > .table-bordered > tfoot > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { + border-bottom: 0; +} +.panel > .table-responsive { + margin-bottom: 0; + border: 0; +} +.panel-group { + margin-bottom: 20px; +} +.panel-group .panel { + margin-bottom: 0; + border-radius: 4px; +} +.panel-group .panel + .panel { + margin-top: 5px; +} +.panel-group .panel-heading { + border-bottom: 0; +} +.panel-group .panel-heading + .panel-collapse > .panel-body, +.panel-group .panel-heading + .panel-collapse > .list-group { + border-top: 1px solid #ddd; +} +.panel-group .panel-footer { + border-top: 0; +} +.panel-group .panel-footer + .panel-collapse .panel-body { + border-bottom: 1px solid #ddd; +} +.panel-default { + border-color: #ddd; +} +.panel-default > .panel-heading { + color: #333; + background-color: #f5f5f5; + border-color: #ddd; +} +.panel-default > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #ddd; +} +.panel-default > .panel-heading .badge { + color: #f5f5f5; + background-color: #333; +} +.panel-default > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #ddd; +} +.panel-primary { + border-color: #337ab7; +} +.panel-primary > .panel-heading { + color: #fff; + background-color: #337ab7; + border-color: #337ab7; +} +.panel-primary > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #337ab7; +} +.panel-primary > .panel-heading .badge { + color: #337ab7; + background-color: #fff; +} +.panel-primary > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #337ab7; +} +.panel-success { + border-color: #d6e9c6; +} +.panel-success > .panel-heading { + color: #3c763d; + background-color: #dff0d8; + border-color: #d6e9c6; +} +.panel-success > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #d6e9c6; +} +.panel-success > .panel-heading .badge { + color: #dff0d8; + background-color: #3c763d; +} +.panel-success > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #d6e9c6; +} +.panel-info { + border-color: #bce8f1; +} +.panel-info > .panel-heading { + color: #31708f; + background-color: #d9edf7; + border-color: #bce8f1; +} +.panel-info > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #bce8f1; +} +.panel-info > .panel-heading .badge { + color: #d9edf7; + background-color: #31708f; +} +.panel-info > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #bce8f1; +} +.panel-warning { + border-color: #faebcc; +} +.panel-warning > .panel-heading { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #faebcc; +} +.panel-warning > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #faebcc; +} +.panel-warning > .panel-heading .badge { + color: #fcf8e3; + background-color: #8a6d3b; +} +.panel-warning > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #faebcc; +} +.panel-danger { + border-color: #ebccd1; +} +.panel-danger > .panel-heading { + color: #a94442; + background-color: #f2dede; + border-color: #ebccd1; +} +.panel-danger > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #ebccd1; +} +.panel-danger > .panel-heading .badge { + color: #f2dede; + background-color: #a94442; +} +.panel-danger > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #ebccd1; +} +.embed-responsive { + position: relative; + display: block; + height: 0; + padding: 0; + overflow: hidden; +} +.embed-responsive .embed-responsive-item, +.embed-responsive iframe, +.embed-responsive embed, +.embed-responsive object, +.embed-responsive video { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 100%; + height: 100%; + border: 0; +} +.embed-responsive-16by9 { + padding-bottom: 56.25%; +} +.embed-responsive-4by3 { + padding-bottom: 75%; +} +.well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: #f5f5f5; + border: 1px solid #e3e3e3; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); +} +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, .15); +} +.well-lg { + padding: 24px; + border-radius: 6px; +} +.well-sm { + padding: 9px; + border-radius: 3px; +} +.close { + float: right; + font-size: 21px; + font-weight: bold; + line-height: 1; + color: #000; + text-shadow: 0 1px 0 #fff; + filter: alpha(opacity=20); + opacity: .2; +} +.close:hover, +.close:focus { + color: #000; + text-decoration: none; + cursor: pointer; + filter: alpha(opacity=50); + opacity: .5; +} +button.close { + -webkit-appearance: none; + padding: 0; + cursor: pointer; + background: transparent; + border: 0; +} +.modal-open { + overflow: hidden; +} +.modal { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1050; + display: none; + overflow: hidden; + -webkit-overflow-scrolling: touch; + outline: 0; +} +.modal.fade .modal-dialog { + -webkit-transition: -webkit-transform .3s ease-out; + -o-transition: -o-transform .3s ease-out; + transition: transform .3s ease-out; + -webkit-transform: translate(0, -25%); + -ms-transform: translate(0, -25%); + -o-transform: translate(0, -25%); + transform: translate(0, -25%); +} +.modal.in .modal-dialog { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); +} +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto; +} +.modal-dialog { + position: relative; + width: auto; + margin: 10px; +} +.modal-content { + position: relative; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #999; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: 6px; + outline: 0; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5); + box-shadow: 0 3px 9px rgba(0, 0, 0, .5); +} +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000; +} +.modal-backdrop.fade { + filter: alpha(opacity=0); + opacity: 0; +} +.modal-backdrop.in { + filter: alpha(opacity=50); + opacity: .5; +} +.modal-header { + min-height: 16.42857143px; + padding: 15px; + border-bottom: 1px solid #e5e5e5; +} +.modal-header .close { + margin-top: -2px; +} +.modal-title { + margin: 0; + line-height: 1.42857143; +} +.modal-body { + position: relative; + padding: 15px; +} +.modal-footer { + padding: 15px; + text-align: right; + border-top: 1px solid #e5e5e5; +} +.modal-footer .btn + .btn { + margin-bottom: 0; + margin-left: 5px; +} +.modal-footer .btn-group .btn + .btn { + margin-left: -1px; +} +.modal-footer .btn-block + .btn-block { + margin-left: 0; +} +.modal-scrollbar-measure { + position: absolute; + top: -9999px; + width: 50px; + height: 50px; + overflow: scroll; +} +@media (min-width: 768px) { + .modal-dialog { + width: 600px; + margin: 30px auto; + } + .modal-content { + -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5); + box-shadow: 0 5px 15px rgba(0, 0, 0, .5); + } + .modal-sm { + width: 300px; + } +} +@media (min-width: 992px) { + .modal-lg { + width: 900px; + } +} +.tooltip { + position: absolute; + z-index: 1070; + display: block; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 12px; + font-weight: normal; + line-height: 1.4; + filter: alpha(opacity=0); + opacity: 0; +} +.tooltip.in { + filter: alpha(opacity=90); + opacity: .9; +} +.tooltip.top { + padding: 5px 0; + margin-top: -3px; +} +.tooltip.right { + padding: 0 5px; + margin-left: 3px; +} +.tooltip.bottom { + padding: 5px 0; + margin-top: 3px; +} +.tooltip.left { + padding: 0 5px; + margin-left: -3px; +} +.tooltip-inner { + max-width: 200px; + padding: 3px 8px; + color: #fff; + text-align: center; + text-decoration: none; + background-color: #000; + border-radius: 4px; +} +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.tooltip.top .tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.top-left .tooltip-arrow { + right: 5px; + bottom: 0; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.top-right .tooltip-arrow { + bottom: 0; + left: 5px; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.right .tooltip-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-width: 5px 5px 5px 0; + border-right-color: #000; +} +.tooltip.left .tooltip-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-width: 5px 0 5px 5px; + border-left-color: #000; +} +.tooltip.bottom .tooltip-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.tooltip.bottom-left .tooltip-arrow { + top: 0; + right: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.tooltip.bottom-right .tooltip-arrow { + top: 0; + left: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1060; + display: none; + max-width: 276px; + padding: 1px; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + font-weight: normal; + line-height: 1.42857143; + text-align: left; + white-space: normal; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2); + box-shadow: 0 5px 10px rgba(0, 0, 0, .2); +} +.popover.top { + margin-top: -10px; +} +.popover.right { + margin-left: 10px; +} +.popover.bottom { + margin-top: 10px; +} +.popover.left { + margin-left: -10px; +} +.popover-title { + padding: 8px 14px; + margin: 0; + font-size: 14px; + background-color: #f7f7f7; + border-bottom: 1px solid #ebebeb; + border-radius: 5px 5px 0 0; +} +.popover-content { + padding: 9px 14px; +} +.popover > .arrow, +.popover > .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.popover > .arrow { + border-width: 11px; +} +.popover > .arrow:after { + content: ""; + border-width: 10px; +} +.popover.top > .arrow { + bottom: -11px; + left: 50%; + margin-left: -11px; + border-top-color: #999; + border-top-color: rgba(0, 0, 0, .25); + border-bottom-width: 0; +} +.popover.top > .arrow:after { + bottom: 1px; + margin-left: -10px; + content: " "; + border-top-color: #fff; + border-bottom-width: 0; +} +.popover.right > .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-right-color: #999; + border-right-color: rgba(0, 0, 0, .25); + border-left-width: 0; +} +.popover.right > .arrow:after { + bottom: -10px; + left: 1px; + content: " "; + border-right-color: #fff; + border-left-width: 0; +} +.popover.bottom > .arrow { + top: -11px; + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #999; + border-bottom-color: rgba(0, 0, 0, .25); +} +.popover.bottom > .arrow:after { + top: 1px; + margin-left: -10px; + content: " "; + border-top-width: 0; + border-bottom-color: #fff; +} +.popover.left > .arrow { + top: 50%; + right: -11px; + margin-top: -11px; + border-right-width: 0; + border-left-color: #999; + border-left-color: rgba(0, 0, 0, .25); +} +.popover.left > .arrow:after { + right: 1px; + bottom: -10px; + content: " "; + border-right-width: 0; + border-left-color: #fff; +} +.carousel { + position: relative; +} +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} +.carousel-inner > .item { + position: relative; + display: none; + -webkit-transition: .6s ease-in-out left; + -o-transition: .6s ease-in-out left; + transition: .6s ease-in-out left; +} +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + line-height: 1; +} +@media all and (transform-3d), (-webkit-transform-3d) { + .carousel-inner > .item { + -webkit-transition: -webkit-transform .6s ease-in-out; + -o-transition: -o-transform .6s ease-in-out; + transition: transform .6s ease-in-out; + + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-perspective: 1000; + perspective: 1000; + } + .carousel-inner > .item.next, + .carousel-inner > .item.active.right { + left: 0; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } + .carousel-inner > .item.prev, + .carousel-inner > .item.active.left { + left: 0; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } + .carousel-inner > .item.next.left, + .carousel-inner > .item.prev.right, + .carousel-inner > .item.active { + left: 0; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} +.carousel-inner > .active, +.carousel-inner > .next, +.carousel-inner > .prev { + display: block; +} +.carousel-inner > .active { + left: 0; +} +.carousel-inner > .next, +.carousel-inner > .prev { + position: absolute; + top: 0; + width: 100%; +} +.carousel-inner > .next { + left: 100%; +} +.carousel-inner > .prev { + left: -100%; +} +.carousel-inner > .next.left, +.carousel-inner > .prev.right { + left: 0; +} +.carousel-inner > .active.left { + left: -100%; +} +.carousel-inner > .active.right { + left: 100%; +} +.carousel-control { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 15%; + font-size: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, .6); + filter: alpha(opacity=50); + opacity: .5; +} +.carousel-control.left { + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, .0001))); + background-image: linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); + background-repeat: repeat-x; +} +.carousel-control.right { + right: 0; + left: auto; + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .0001)), to(rgba(0, 0, 0, .5))); + background-image: linear-gradient(to right, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); + background-repeat: repeat-x; +} +.carousel-control:hover, +.carousel-control:focus { + color: #fff; + text-decoration: none; + filter: alpha(opacity=90); + outline: 0; + opacity: .9; +} +.carousel-control .icon-prev, +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-left, +.carousel-control .glyphicon-chevron-right { + position: absolute; + top: 50%; + z-index: 5; + display: inline-block; +} +.carousel-control .icon-prev, +.carousel-control .glyphicon-chevron-left { + left: 50%; + margin-left: -10px; +} +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-right { + right: 50%; + margin-right: -10px; +} +.carousel-control .icon-prev, +.carousel-control .icon-next { + width: 20px; + height: 20px; + margin-top: -10px; + font-family: serif; + line-height: 1; +} +.carousel-control .icon-prev:before { + content: '\2039'; +} +.carousel-control .icon-next:before { + content: '\203a'; +} +.carousel-indicators { + position: absolute; + bottom: 10px; + left: 50%; + z-index: 15; + width: 60%; + padding-left: 0; + margin-left: -30%; + text-align: center; + list-style: none; +} +.carousel-indicators li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + cursor: pointer; + background-color: #000 \9; + background-color: rgba(0, 0, 0, 0); + border: 1px solid #fff; + border-radius: 10px; +} +.carousel-indicators .active { + width: 12px; + height: 12px; + margin: 0; + background-color: #fff; +} +.carousel-caption { + position: absolute; + right: 15%; + bottom: 20px; + left: 15%; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, .6); +} +.carousel-caption .btn { + text-shadow: none; +} +@media screen and (min-width: 768px) { + .carousel-control .glyphicon-chevron-left, + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-prev, + .carousel-control .icon-next { + width: 30px; + height: 30px; + margin-top: -15px; + font-size: 30px; + } + .carousel-control .glyphicon-chevron-left, + .carousel-control .icon-prev { + margin-left: -15px; + } + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-next { + margin-right: -15px; + } + .carousel-caption { + right: 20%; + left: 20%; + padding-bottom: 30px; + } + .carousel-indicators { + bottom: 20px; + } +} +.clearfix:before, +.clearfix:after, +.dl-horizontal dd:before, +.dl-horizontal dd:after, +.container:before, +.container:after, +.container-fluid:before, +.container-fluid:after, +.row:before, +.row:after, +.form-horizontal .form-group:before, +.form-horizontal .form-group:after, +.btn-toolbar:before, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:before, +.btn-group-vertical > .btn-group:after, +.nav:before, +.nav:after, +.navbar:before, +.navbar:after, +.navbar-header:before, +.navbar-header:after, +.navbar-collapse:before, +.navbar-collapse:after, +.pager:before, +.pager:after, +.panel-body:before, +.panel-body:after, +.modal-footer:before, +.modal-footer:after { + display: table; + content: " "; +} +.clearfix:after, +.dl-horizontal dd:after, +.container:after, +.container-fluid:after, +.row:after, +.form-horizontal .form-group:after, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:after, +.nav:after, +.navbar:after, +.navbar-header:after, +.navbar-collapse:after, +.pager:after, +.panel-body:after, +.modal-footer:after { + clear: both; +} +.center-block { + display: block; + margin-right: auto; + margin-left: auto; +} +.pull-right { + float: right !important; +} +.pull-left { + float: left !important; +} +.hide { + display: none !important; +} +.show { + display: block !important; +} +.invisible { + visibility: hidden; +} +.text-hide { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} +.hidden { + display: none !important; +} +.affix { + position: fixed; +} +@-ms-viewport { + width: device-width; +} +.visible-xs, +.visible-sm, +.visible-md, +.visible-lg { + display: none !important; +} +.visible-xs-block, +.visible-xs-inline, +.visible-xs-inline-block, +.visible-sm-block, +.visible-sm-inline, +.visible-sm-inline-block, +.visible-md-block, +.visible-md-inline, +.visible-md-inline-block, +.visible-lg-block, +.visible-lg-inline, +.visible-lg-inline-block { + display: none !important; +} +@media (max-width: 767px) { + .visible-xs { + display: block !important; + } + table.visible-xs { + display: table; + } + tr.visible-xs { + display: table-row !important; + } + th.visible-xs, + td.visible-xs { + display: table-cell !important; + } +} +@media (max-width: 767px) { + .visible-xs-block { + display: block !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline { + display: inline !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline-block { + display: inline-block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm { + display: block !important; + } + table.visible-sm { + display: table; + } + tr.visible-sm { + display: table-row !important; + } + th.visible-sm, + td.visible-sm { + display: table-cell !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-block { + display: block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline { + display: inline !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline-block { + display: inline-block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md { + display: block !important; + } + table.visible-md { + display: table; + } + tr.visible-md { + display: table-row !important; + } + th.visible-md, + td.visible-md { + display: table-cell !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-block { + display: block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline { + display: inline !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline-block { + display: inline-block !important; + } +} +@media (min-width: 1200px) { + .visible-lg { + display: block !important; + } + table.visible-lg { + display: table; + } + tr.visible-lg { + display: table-row !important; + } + th.visible-lg, + td.visible-lg { + display: table-cell !important; + } +} +@media (min-width: 1200px) { + .visible-lg-block { + display: block !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline { + display: inline !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline-block { + display: inline-block !important; + } +} +@media (max-width: 767px) { + .hidden-xs { + display: none !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .hidden-sm { + display: none !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-md { + display: none !important; + } +} +@media (min-width: 1200px) { + .hidden-lg { + display: none !important; + } +} +.visible-print { + display: none !important; +} +@media print { + .visible-print { + display: block !important; + } + table.visible-print { + display: table; + } + tr.visible-print { + display: table-row !important; + } + th.visible-print, + td.visible-print { + display: table-cell !important; + } +} +.visible-print-block { + display: none !important; +} +@media print { + .visible-print-block { + display: block !important; + } +} +.visible-print-inline { + display: none !important; +} +@media print { + .visible-print-inline { + display: inline !important; + } +} +.visible-print-inline-block { + display: none !important; +} +@media print { + .visible-print-inline-block { + display: inline-block !important; + } +} +@media print { + .hidden-print { + display: none !important; + } +} + +/* tapestry-quickstart customizations start here: */ + +body { padding-top: 70px; } + diff --git a/apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.eot b/apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.eot new file mode 100644 index 0000000000000000000000000000000000000000..9879fec538743e4da2d8928ceef3e6c4305f8359 GIT binary patch literal 35366 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 WZ(xwT4i*jKX_HKRs&O97_J07Q@0tPt literal 0 HcmV?d00001 diff --git a/apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.svg b/apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.svg new file mode 100644 index 0000000000..94fb5490a2 --- /dev/null +++ b/apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.svg @@ -0,0 +1,288 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.ttf b/apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c0e841e44b7ea5c470b8ec42b85b7a23c8d70a7a GIT binary patch literal 57865 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 literal 0 HcmV?d00001 diff --git a/apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.woff b/apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..59d837ee613eab6b8d8bbf451355a847706ad554 GIT binary patch literal 42775 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 Gi~k$SvEqLK literal 0 HcmV?d00001 diff --git a/apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.woff2 b/apache-tapestry/src/main/webapp/mybootstrap/fonts/glyphicons-halflings-regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..006d10650b00643a558cc7e61dbaa99f3fe9ef21 GIT binary patch literal 840 zcmaJq zvJnfhw~!zfVrjub;x9PYozB9-NH9?{}xE0of(!1U&MJP(b>9cRPj3Ea>!p zs{cNcEGzzsa?vRL*Y;8h( z=134?dD+clvySEUVmn=p)Ij%QG(ptP1MJYP06K@U!P36~ZO8{j*#Jvh(&xe1GBTPX zFoUp#tGEDHKAzIp7&IF7F4KJ?3Oc#jy70Ew!W)Vpu0GDwEDpQ+YeG&v9CuGD4C&4; zpqgryZIFO(;R$)g?HZq*DTj^!l%xX_0pPqIhI%Ekc*ou;h=@ zh@X#r;8D#+ViFTBh&Qavj(B)sh?>=)Hbb+HwS(+5N}!tsY(%tj^>72-<{bQfcLG+- zfw{@SV5d73?{H{q38k0*Cmo2Q3Xs#=1Ew)IQu1+l4z57}9y_bX!{$6oj2gMW2F)Nm FwjV{&02BZK literal 0 HcmV?d00001 diff --git a/apache-tapestry/src/main/webapp/mybootstrap/js/affix.js b/apache-tapestry/src/main/webapp/mybootstrap/js/affix.js new file mode 100644 index 0000000000..98197642aa --- /dev/null +++ b/apache-tapestry/src/main/webapp/mybootstrap/js/affix.js @@ -0,0 +1,162 @@ +/* ======================================================================== + * Bootstrap: affix.js v3.3.4 + * http://getbootstrap.com/javascript/#affix + * ======================================================================== + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // AFFIX CLASS DEFINITION + // ====================== + + var Affix = function (element, options) { + this.options = $.extend({}, Affix.DEFAULTS, options) + + this.$target = $(this.options.target) + .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this)) + .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this)) + + this.$element = $(element) + this.affixed = null + this.unpin = null + this.pinnedOffset = null + + this.checkPosition() + } + + Affix.VERSION = '3.3.4' + + Affix.RESET = 'affix affix-top affix-bottom' + + Affix.DEFAULTS = { + offset: 0, + target: window + } + + Affix.prototype.getState = function (scrollHeight, height, offsetTop, offsetBottom) { + var scrollTop = this.$target.scrollTop() + var position = this.$element.offset() + var targetHeight = this.$target.height() + + if (offsetTop != null && this.affixed == 'top') return scrollTop < offsetTop ? 'top' : false + + if (this.affixed == 'bottom') { + if (offsetTop != null) return (scrollTop + this.unpin <= position.top) ? false : 'bottom' + return (scrollTop + targetHeight <= scrollHeight - offsetBottom) ? false : 'bottom' + } + + var initializing = this.affixed == null + var colliderTop = initializing ? scrollTop : position.top + var colliderHeight = initializing ? targetHeight : height + + if (offsetTop != null && scrollTop <= offsetTop) return 'top' + if (offsetBottom != null && (colliderTop + colliderHeight >= scrollHeight - offsetBottom)) return 'bottom' + + return false + } + + Affix.prototype.getPinnedOffset = function () { + if (this.pinnedOffset) return this.pinnedOffset + this.$element.removeClass(Affix.RESET).addClass('affix') + var scrollTop = this.$target.scrollTop() + var position = this.$element.offset() + return (this.pinnedOffset = position.top - scrollTop) + } + + Affix.prototype.checkPositionWithEventLoop = function () { + setTimeout($.proxy(this.checkPosition, this), 1) + } + + Affix.prototype.checkPosition = function () { + if (!this.$element.is(':visible')) return + + var height = this.$element.height() + var offset = this.options.offset + var offsetTop = offset.top + var offsetBottom = offset.bottom + var scrollHeight = $(document.body).height() + + if (typeof offset != 'object') offsetBottom = offsetTop = offset + if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element) + if (typeof offsetBottom == 'function') offsetBottom = offset.bottom(this.$element) + + var affix = this.getState(scrollHeight, height, offsetTop, offsetBottom) + + if (this.affixed != affix) { + if (this.unpin != null) this.$element.css('top', '') + + var affixType = 'affix' + (affix ? '-' + affix : '') + var e = $.Event(affixType + '.bs.affix') + + this.$element.trigger(e) + + if (e.isDefaultPrevented()) return + + this.affixed = affix + this.unpin = affix == 'bottom' ? this.getPinnedOffset() : null + + this.$element + .removeClass(Affix.RESET) + .addClass(affixType) + .trigger(affixType.replace('affix', 'affixed') + '.bs.affix') + } + + if (affix == 'bottom') { + this.$element.offset({ + top: scrollHeight - height - offsetBottom + }) + } + } + + + // AFFIX PLUGIN DEFINITION + // ======================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.affix') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.affix', (data = new Affix(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.affix + + $.fn.affix = Plugin + $.fn.affix.Constructor = Affix + + + // AFFIX NO CONFLICT + // ================= + + $.fn.affix.noConflict = function () { + $.fn.affix = old + return this + } + + + // AFFIX DATA-API + // ============== + + $(window).on('load', function () { + $('[data-spy="affix"]').each(function () { + var $spy = $(this) + var data = $spy.data() + + data.offset = data.offset || {} + + if (data.offsetBottom != null) data.offset.bottom = data.offsetBottom + if (data.offsetTop != null) data.offset.top = data.offsetTop + + Plugin.call($spy, data) + }) + }) + +}(jQuery); diff --git a/apache-tapestry/src/main/webapp/mybootstrap/js/alert.js b/apache-tapestry/src/main/webapp/mybootstrap/js/alert.js new file mode 100644 index 0000000000..1925ef011c --- /dev/null +++ b/apache-tapestry/src/main/webapp/mybootstrap/js/alert.js @@ -0,0 +1,94 @@ +/* ======================================================================== + * Bootstrap: alert.js v3.3.4 + * http://getbootstrap.com/javascript/#alerts + * ======================================================================== + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // ALERT CLASS DEFINITION + // ====================== + + var dismiss = '[data-dismiss="alert"]' + var Alert = function (el) { + $(el).on('click', dismiss, this.close) + } + + Alert.VERSION = '3.3.4' + + Alert.TRANSITION_DURATION = 150 + + Alert.prototype.close = function (e) { + var $this = $(this) + var selector = $this.attr('data-target') + + if (!selector) { + selector = $this.attr('href') + selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 + } + + var $parent = $(selector) + + if (e) e.preventDefault() + + if (!$parent.length) { + $parent = $this.closest('.alert') + } + + $parent.trigger(e = $.Event('close.bs.alert')) + + if (e.isDefaultPrevented()) return + + $parent.removeClass('in') + + function removeElement() { + // detach from parent, fire event then clean up data + $parent.detach().trigger('closed.bs.alert').remove() + } + + $.support.transition && $parent.hasClass('fade') ? + $parent + .one('bsTransitionEnd', removeElement) + .emulateTransitionEnd(Alert.TRANSITION_DURATION) : + removeElement() + } + + + // ALERT PLUGIN DEFINITION + // ======================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.alert') + + if (!data) $this.data('bs.alert', (data = new Alert(this))) + if (typeof option == 'string') data[option].call($this) + }) + } + + var old = $.fn.alert + + $.fn.alert = Plugin + $.fn.alert.Constructor = Alert + + + // ALERT NO CONFLICT + // ================= + + $.fn.alert.noConflict = function () { + $.fn.alert = old + return this + } + + + // ALERT DATA-API + // ============== + + $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close) + +}(jQuery); diff --git a/apache-tapestry/src/main/webapp/mybootstrap/js/button.js b/apache-tapestry/src/main/webapp/mybootstrap/js/button.js new file mode 100644 index 0000000000..7c7c021f95 --- /dev/null +++ b/apache-tapestry/src/main/webapp/mybootstrap/js/button.js @@ -0,0 +1,116 @@ +/* ======================================================================== + * Bootstrap: button.js v3.3.4 + * http://getbootstrap.com/javascript/#buttons + * ======================================================================== + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // BUTTON PUBLIC CLASS DEFINITION + // ============================== + + var Button = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, Button.DEFAULTS, options) + this.isLoading = false + } + + Button.VERSION = '3.3.4' + + Button.DEFAULTS = { + loadingText: 'loading...' + } + + Button.prototype.setState = function (state) { + var d = 'disabled' + var $el = this.$element + var val = $el.is('input') ? 'val' : 'html' + var data = $el.data() + + state = state + 'Text' + + if (data.resetText == null) $el.data('resetText', $el[val]()) + + // push to event loop to allow forms to submit + setTimeout($.proxy(function () { + $el[val](data[state] == null ? this.options[state] : data[state]) + + if (state == 'loadingText') { + this.isLoading = true + $el.addClass(d).attr(d, d) + } else if (this.isLoading) { + this.isLoading = false + $el.removeClass(d).removeAttr(d) + } + }, this), 0) + } + + Button.prototype.toggle = function () { + var changed = true + var $parent = this.$element.closest('[data-toggle="buttons"]') + + if ($parent.length) { + var $input = this.$element.find('input') + if ($input.prop('type') == 'radio') { + if ($input.prop('checked') && this.$element.hasClass('active')) changed = false + else $parent.find('.active').removeClass('active') + } + if (changed) $input.prop('checked', !this.$element.hasClass('active')).trigger('change') + } else { + this.$element.attr('aria-pressed', !this.$element.hasClass('active')) + } + + if (changed) this.$element.toggleClass('active') + } + + + // BUTTON PLUGIN DEFINITION + // ======================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.button') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.button', (data = new Button(this, options))) + + if (option == 'toggle') data.toggle() + else if (option) data.setState(option) + }) + } + + var old = $.fn.button + + $.fn.button = Plugin + $.fn.button.Constructor = Button + + + // BUTTON NO CONFLICT + // ================== + + $.fn.button.noConflict = function () { + $.fn.button = old + return this + } + + + // BUTTON DATA-API + // =============== + + $(document) + .on('click.bs.button.data-api', '[data-toggle^="button"]', function (e) { + var $btn = $(e.target) + if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn') + Plugin.call($btn, 'toggle') + e.preventDefault() + }) + .on('focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^="button"]', function (e) { + $(e.target).closest('.btn').toggleClass('focus', /^focus(in)?$/.test(e.type)) + }) + +}(jQuery); diff --git a/apache-tapestry/src/main/webapp/mybootstrap/js/carousel.js b/apache-tapestry/src/main/webapp/mybootstrap/js/carousel.js new file mode 100644 index 0000000000..a38ef14d0b --- /dev/null +++ b/apache-tapestry/src/main/webapp/mybootstrap/js/carousel.js @@ -0,0 +1,237 @@ +/* ======================================================================== + * Bootstrap: carousel.js v3.3.4 + * http://getbootstrap.com/javascript/#carousel + * ======================================================================== + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // CAROUSEL CLASS DEFINITION + // ========================= + + var Carousel = function (element, options) { + this.$element = $(element) + this.$indicators = this.$element.find('.carousel-indicators') + this.options = options + this.paused = null + this.sliding = null + this.interval = null + this.$active = null + this.$items = null + + this.options.keyboard && this.$element.on('keydown.bs.carousel', $.proxy(this.keydown, this)) + + this.options.pause == 'hover' && !('ontouchstart' in document.documentElement) && this.$element + .on('mouseenter.bs.carousel', $.proxy(this.pause, this)) + .on('mouseleave.bs.carousel', $.proxy(this.cycle, this)) + } + + Carousel.VERSION = '3.3.4' + + Carousel.TRANSITION_DURATION = 600 + + Carousel.DEFAULTS = { + interval: 5000, + pause: 'hover', + wrap: true, + keyboard: true + } + + Carousel.prototype.keydown = function (e) { + if (/input|textarea/i.test(e.target.tagName)) return + switch (e.which) { + case 37: this.prev(); break + case 39: this.next(); break + default: return + } + + e.preventDefault() + } + + Carousel.prototype.cycle = function (e) { + e || (this.paused = false) + + this.interval && clearInterval(this.interval) + + this.options.interval + && !this.paused + && (this.interval = setInterval($.proxy(this.next, this), this.options.interval)) + + return this + } + + Carousel.prototype.getItemIndex = function (item) { + this.$items = item.parent().children('.item') + return this.$items.index(item || this.$active) + } + + Carousel.prototype.getItemForDirection = function (direction, active) { + var activeIndex = this.getItemIndex(active) + var willWrap = (direction == 'prev' && activeIndex === 0) + || (direction == 'next' && activeIndex == (this.$items.length - 1)) + if (willWrap && !this.options.wrap) return active + var delta = direction == 'prev' ? -1 : 1 + var itemIndex = (activeIndex + delta) % this.$items.length + return this.$items.eq(itemIndex) + } + + Carousel.prototype.to = function (pos) { + var that = this + var activeIndex = this.getItemIndex(this.$active = this.$element.find('.item.active')) + + if (pos > (this.$items.length - 1) || pos < 0) return + + if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) }) // yes, "slid" + if (activeIndex == pos) return this.pause().cycle() + + return this.slide(pos > activeIndex ? 'next' : 'prev', this.$items.eq(pos)) + } + + Carousel.prototype.pause = function (e) { + e || (this.paused = true) + + if (this.$element.find('.next, .prev').length && $.support.transition) { + this.$element.trigger($.support.transition.end) + this.cycle(true) + } + + this.interval = clearInterval(this.interval) + + return this + } + + Carousel.prototype.next = function () { + if (this.sliding) return + return this.slide('next') + } + + Carousel.prototype.prev = function () { + if (this.sliding) return + return this.slide('prev') + } + + Carousel.prototype.slide = function (type, next) { + var $active = this.$element.find('.item.active') + var $next = next || this.getItemForDirection(type, $active) + var isCycling = this.interval + var direction = type == 'next' ? 'left' : 'right' + var that = this + + if ($next.hasClass('active')) return (this.sliding = false) + + var relatedTarget = $next[0] + var slideEvent = $.Event('slide.bs.carousel', { + relatedTarget: relatedTarget, + direction: direction + }) + this.$element.trigger(slideEvent) + if (slideEvent.isDefaultPrevented()) return + + this.sliding = true + + isCycling && this.pause() + + if (this.$indicators.length) { + this.$indicators.find('.active').removeClass('active') + var $nextIndicator = $(this.$indicators.children()[this.getItemIndex($next)]) + $nextIndicator && $nextIndicator.addClass('active') + } + + var slidEvent = $.Event('slid.bs.carousel', { relatedTarget: relatedTarget, direction: direction }) // yes, "slid" + if ($.support.transition && this.$element.hasClass('slide')) { + $next.addClass(type) + $next[0].offsetWidth // force reflow + $active.addClass(direction) + $next.addClass(direction) + $active + .one('bsTransitionEnd', function () { + $next.removeClass([type, direction].join(' ')).addClass('active') + $active.removeClass(['active', direction].join(' ')) + that.sliding = false + setTimeout(function () { + that.$element.trigger(slidEvent) + }, 0) + }) + .emulateTransitionEnd(Carousel.TRANSITION_DURATION) + } else { + $active.removeClass('active') + $next.addClass('active') + this.sliding = false + this.$element.trigger(slidEvent) + } + + isCycling && this.cycle() + + return this + } + + + // CAROUSEL PLUGIN DEFINITION + // ========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.carousel') + var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option) + var action = typeof option == 'string' ? option : options.slide + + if (!data) $this.data('bs.carousel', (data = new Carousel(this, options))) + if (typeof option == 'number') data.to(option) + else if (action) data[action]() + else if (options.interval) data.pause().cycle() + }) + } + + var old = $.fn.carousel + + $.fn.carousel = Plugin + $.fn.carousel.Constructor = Carousel + + + // CAROUSEL NO CONFLICT + // ==================== + + $.fn.carousel.noConflict = function () { + $.fn.carousel = old + return this + } + + + // CAROUSEL DATA-API + // ================= + + var clickHandler = function (e) { + var href + var $this = $(this) + var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) // strip for ie7 + if (!$target.hasClass('carousel')) return + var options = $.extend({}, $target.data(), $this.data()) + var slideIndex = $this.attr('data-slide-to') + if (slideIndex) options.interval = false + + Plugin.call($target, options) + + if (slideIndex) { + $target.data('bs.carousel').to(slideIndex) + } + + e.preventDefault() + } + + $(document) + .on('click.bs.carousel.data-api', '[data-slide]', clickHandler) + .on('click.bs.carousel.data-api', '[data-slide-to]', clickHandler) + + $(window).on('load', function () { + $('[data-ride="carousel"]').each(function () { + var $carousel = $(this) + Plugin.call($carousel, $carousel.data()) + }) + }) + +}(jQuery); diff --git a/apache-tapestry/src/main/webapp/mybootstrap/js/collapse.js b/apache-tapestry/src/main/webapp/mybootstrap/js/collapse.js new file mode 100644 index 0000000000..954513c5e1 --- /dev/null +++ b/apache-tapestry/src/main/webapp/mybootstrap/js/collapse.js @@ -0,0 +1,211 @@ +/* ======================================================================== + * Bootstrap: collapse.js v3.3.4 + * http://getbootstrap.com/javascript/#collapse + * ======================================================================== + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // COLLAPSE PUBLIC CLASS DEFINITION + // ================================ + + var Collapse = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, Collapse.DEFAULTS, options) + this.$trigger = $('[data-toggle="collapse"][href="#' + element.id + '"],' + + '[data-toggle="collapse"][data-target="#' + element.id + '"]') + this.transitioning = null + + if (this.options.parent) { + this.$parent = this.getParent() + } else { + this.addAriaAndCollapsedClass(this.$element, this.$trigger) + } + + if (this.options.toggle) this.toggle() + } + + Collapse.VERSION = '3.3.4' + + Collapse.TRANSITION_DURATION = 350 + + Collapse.DEFAULTS = { + toggle: true + } + + Collapse.prototype.dimension = function () { + var hasWidth = this.$element.hasClass('width') + return hasWidth ? 'width' : 'height' + } + + Collapse.prototype.show = function () { + if (this.transitioning || this.$element.hasClass('in')) return + + var activesData + var actives = this.$parent && this.$parent.children('.panel').children('.in, .collapsing') + + if (actives && actives.length) { + activesData = actives.data('bs.collapse') + if (activesData && activesData.transitioning) return + } + + var startEvent = $.Event('show.bs.collapse') + this.$element.trigger(startEvent) + if (startEvent.isDefaultPrevented()) return + + if (actives && actives.length) { + Plugin.call(actives, 'hide') + activesData || actives.data('bs.collapse', null) + } + + var dimension = this.dimension() + + this.$element + .removeClass('collapse') + .addClass('collapsing')[dimension](0) + .attr('aria-expanded', true) + + this.$trigger + .removeClass('collapsed') + .attr('aria-expanded', true) + + this.transitioning = 1 + + var complete = function () { + this.$element + .removeClass('collapsing') + .addClass('collapse in')[dimension]('') + this.transitioning = 0 + this.$element + .trigger('shown.bs.collapse') + } + + if (!$.support.transition) return complete.call(this) + + var scrollSize = $.camelCase(['scroll', dimension].join('-')) + + this.$element + .one('bsTransitionEnd', $.proxy(complete, this)) + .emulateTransitionEnd(Collapse.TRANSITION_DURATION)[dimension](this.$element[0][scrollSize]) + } + + Collapse.prototype.hide = function () { + if (this.transitioning || !this.$element.hasClass('in')) return + + var startEvent = $.Event('hide.bs.collapse') + this.$element.trigger(startEvent) + if (startEvent.isDefaultPrevented()) return + + var dimension = this.dimension() + + this.$element[dimension](this.$element[dimension]())[0].offsetHeight + + this.$element + .addClass('collapsing') + .removeClass('collapse in') + .attr('aria-expanded', false) + + this.$trigger + .addClass('collapsed') + .attr('aria-expanded', false) + + this.transitioning = 1 + + var complete = function () { + this.transitioning = 0 + this.$element + .removeClass('collapsing') + .addClass('collapse') + .trigger('hidden.bs.collapse') + } + + if (!$.support.transition) return complete.call(this) + + this.$element + [dimension](0) + .one('bsTransitionEnd', $.proxy(complete, this)) + .emulateTransitionEnd(Collapse.TRANSITION_DURATION) + } + + Collapse.prototype.toggle = function () { + this[this.$element.hasClass('in') ? 'hide' : 'show']() + } + + Collapse.prototype.getParent = function () { + return $(this.options.parent) + .find('[data-toggle="collapse"][data-parent="' + this.options.parent + '"]') + .each($.proxy(function (i, element) { + var $element = $(element) + this.addAriaAndCollapsedClass(getTargetFromTrigger($element), $element) + }, this)) + .end() + } + + Collapse.prototype.addAriaAndCollapsedClass = function ($element, $trigger) { + var isOpen = $element.hasClass('in') + + $element.attr('aria-expanded', isOpen) + $trigger + .toggleClass('collapsed', !isOpen) + .attr('aria-expanded', isOpen) + } + + function getTargetFromTrigger($trigger) { + var href + var target = $trigger.attr('data-target') + || (href = $trigger.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') // strip for ie7 + + return $(target) + } + + + // COLLAPSE PLUGIN DEFINITION + // ========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.collapse') + var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option) + + if (!data && options.toggle && /show|hide/.test(option)) options.toggle = false + if (!data) $this.data('bs.collapse', (data = new Collapse(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.collapse + + $.fn.collapse = Plugin + $.fn.collapse.Constructor = Collapse + + + // COLLAPSE NO CONFLICT + // ==================== + + $.fn.collapse.noConflict = function () { + $.fn.collapse = old + return this + } + + + // COLLAPSE DATA-API + // ================= + + $(document).on('click.bs.collapse.data-api', '[data-toggle="collapse"]', function (e) { + var $this = $(this) + + if (!$this.attr('data-target')) e.preventDefault() + + var $target = getTargetFromTrigger($this) + var data = $target.data('bs.collapse') + var option = data ? 'toggle' : $this.data() + + Plugin.call($target, option) + }) + +}(jQuery); diff --git a/apache-tapestry/src/main/webapp/mybootstrap/js/dropdown.js b/apache-tapestry/src/main/webapp/mybootstrap/js/dropdown.js new file mode 100644 index 0000000000..9874600f9d --- /dev/null +++ b/apache-tapestry/src/main/webapp/mybootstrap/js/dropdown.js @@ -0,0 +1,161 @@ +/* ======================================================================== + * Bootstrap: dropdown.js v3.3.4 + * http://getbootstrap.com/javascript/#dropdowns + * ======================================================================== + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // DROPDOWN CLASS DEFINITION + // ========================= + + var backdrop = '.dropdown-backdrop' + var toggle = '[data-toggle="dropdown"]' + var Dropdown = function (element) { + $(element).on('click.bs.dropdown', this.toggle) + } + + Dropdown.VERSION = '3.3.4' + + Dropdown.prototype.toggle = function (e) { + var $this = $(this) + + if ($this.is('.disabled, :disabled')) return + + var $parent = getParent($this) + var isActive = $parent.hasClass('open') + + clearMenus() + + if (!isActive) { + if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) { + // if mobile we use a backdrop because click events don't delegate + $('