├── README.md ├── activator ├── activator-launch-1.3.7.jar ├── activator.bat ├── build.sbt ├── client └── src │ ├── main │ └── scala │ │ └── com │ │ └── knoldus │ │ └── weather │ │ ├── ReportStyles.scala │ │ └── Weather.scala │ └── test │ └── scala │ └── com │ └── knoldus │ └── weather │ └── Weather.scala ├── project ├── build.properties └── plugins.sbt └── server ├── app ├── controllers │ └── WeatherController.scala └── views │ ├── index.scala.html │ └── main.scala.html ├── conf ├── application.conf └── routes ├── public ├── images │ ├── image.png │ └── weather.png └── stylesheets │ └── bootstrap.css └── test └── controllers └── WeatherControllerTest.scala /README.md: -------------------------------------------------------------------------------- 1 | Knoldus ScalaJs_Weather_Report 2 | ====================== 3 | 4 | Weather Information System- Get the mood of your city on one click This is simple project using Scala.js. 5 | 6 | ![weather](server/public/images/weather.png) 7 | 8 | 9 | ************************************************************************************************************* 10 | ###Getting Started with Code : 11 | 12 | ## Run the application 13 | Prerequisite : Java 8 and Later version 14 | 15 | ```shell 16 | $ sbt run 17 | ``` 18 | Go to browser and run http://localhost:9000 19 | 20 | -------------------------------------------------------------------------------- /activator: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ### ------------------------------- ### 4 | ### Helper methods for BASH scripts ### 5 | ### ------------------------------- ### 6 | 7 | realpath () { 8 | ( 9 | TARGET_FILE="$1" 10 | 11 | cd "$(dirname "$TARGET_FILE")" 12 | TARGET_FILE=$(basename "$TARGET_FILE") 13 | 14 | COUNT=0 15 | while [ -L "$TARGET_FILE" -a $COUNT -lt 100 ] 16 | do 17 | TARGET_FILE=$(readlink "$TARGET_FILE") 18 | cd "$(dirname "$TARGET_FILE")" 19 | TARGET_FILE=$(basename "$TARGET_FILE") 20 | COUNT=$(($COUNT + 1)) 21 | done 22 | 23 | if [ "$TARGET_FILE" == "." -o "$TARGET_FILE" == ".." ]; then 24 | cd "$TARGET_FILE" 25 | TARGET_FILEPATH= 26 | else 27 | TARGET_FILEPATH=/$TARGET_FILE 28 | fi 29 | 30 | # make sure we grab the actual windows path, instead of cygwin's path. 31 | if ! is_cygwin; then 32 | echo "$(pwd -P)/$TARGET_FILE" 33 | else 34 | echo $(cygwinpath "$(pwd -P)/$TARGET_FILE") 35 | fi 36 | ) 37 | } 38 | 39 | # TODO - Do we need to detect msys? 40 | 41 | # Uses uname to detect if we're in the odd cygwin environment. 42 | is_cygwin() { 43 | local os=$(uname -s) 44 | case "$os" in 45 | CYGWIN*) return 0 ;; 46 | *) return 1 ;; 47 | esac 48 | } 49 | 50 | # This can fix cygwin style /cygdrive paths so we get the 51 | # windows style paths. 52 | cygwinpath() { 53 | local file="$1" 54 | if is_cygwin; then 55 | echo $(cygpath -w $file) 56 | else 57 | echo $file 58 | fi 59 | } 60 | 61 | # Make something URI friendly 62 | make_url() { 63 | url="$1" 64 | local nospaces=${url// /%20} 65 | if is_cygwin; then 66 | echo "/${nospaces//\\//}" 67 | else 68 | echo "$nospaces" 69 | fi 70 | } 71 | 72 | # Detect if we should use JAVA_HOME or just try PATH. 73 | get_java_cmd() { 74 | if [[ -n "$JAVA_HOME" ]] && [[ -x "$JAVA_HOME/bin/java" ]]; then 75 | echo "$JAVA_HOME/bin/java" 76 | else 77 | echo "java" 78 | fi 79 | } 80 | 81 | echoerr () { 82 | echo 1>&2 "$@" 83 | } 84 | vlog () { 85 | [[ $verbose || $debug ]] && echoerr "$@" 86 | } 87 | dlog () { 88 | [[ $debug ]] && echoerr "$@" 89 | } 90 | execRunner () { 91 | # print the arguments one to a line, quoting any containing spaces 92 | [[ $verbose || $debug ]] && echo "# Executing command line:" && { 93 | for arg; do 94 | if printf "%s\n" "$arg" | grep -q ' '; then 95 | printf "\"%s\"\n" "$arg" 96 | else 97 | printf "%s\n" "$arg" 98 | fi 99 | done 100 | echo "" 101 | } 102 | 103 | exec "$@" 104 | } 105 | addJava () { 106 | dlog "[addJava] arg = '$1'" 107 | java_args=( "${java_args[@]}" "$1" ) 108 | } 109 | addApp () { 110 | dlog "[addApp] arg = '$1'" 111 | sbt_commands=( "${app_commands[@]}" "$1" ) 112 | } 113 | addResidual () { 114 | dlog "[residual] arg = '$1'" 115 | residual_args=( "${residual_args[@]}" "$1" ) 116 | } 117 | addDebugger () { 118 | addJava "-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=$1" 119 | } 120 | addConfigOpts () { 121 | dlog "[addConfigOpts] arg = '$*'" 122 | for item in $* 123 | do 124 | addJava "$item" 125 | done 126 | } 127 | # a ham-fisted attempt to move some memory settings in concert 128 | # so they need not be messed around with individually. 129 | get_mem_opts () { 130 | local mem=${1:-1024} 131 | local meta=$(( $mem / 4 )) 132 | (( $meta > 256 )) || meta=256 133 | (( $meta < 1024 )) || meta=1024 134 | 135 | # default is to set memory options but this can be overridden by code section below 136 | memopts="-Xms${mem}m -Xmx${mem}m" 137 | if [[ "${java_version}" > "1.8" ]]; then 138 | extmemopts="-XX:MetaspaceSize=64m -XX:MaxMetaspaceSize=${meta}m" 139 | else 140 | extmemopts="-XX:PermSize=64m -XX:MaxPermSize=${meta}m" 141 | fi 142 | 143 | if [[ "${java_opts}" == *-Xmx* ]] || [[ "${java_opts}" == *-Xms* ]] || [[ "${java_opts}" == *-XX:MaxPermSize* ]] || [[ "${java_opts}" == *-XX:ReservedCodeCacheSize* ]] || [[ "${java_opts}" == *-XX:MaxMetaspaceSize* ]]; then 144 | # if we detect any of these settings in ${java_opts} we need to NOT output our settings. 145 | # The reason is the Xms/Xmx, if they don't line up, cause errors. 146 | memopts="" 147 | extmemopts="" 148 | fi 149 | 150 | echo "${memopts} ${extmemopts}" 151 | } 152 | require_arg () { 153 | local type="$1" 154 | local opt="$2" 155 | local arg="$3" 156 | if [[ -z "$arg" ]] || [[ "${arg:0:1}" == "-" ]]; then 157 | die "$opt requires <$type> argument" 158 | fi 159 | } 160 | is_function_defined() { 161 | declare -f "$1" > /dev/null 162 | } 163 | 164 | # If we're *not* running in a terminal, and we don't have any arguments, then we need to add the 'ui' parameter 165 | detect_terminal_for_ui() { 166 | [[ ! -t 0 ]] && [[ "${#residual_args}" == "0" ]] && { 167 | addResidual "ui" 168 | } 169 | # SPECIAL TEST FOR MAC 170 | [[ "$(uname)" == "Darwin" ]] && [[ "$HOME" == "$PWD" ]] && [[ "${#residual_args}" == "0" ]] && { 171 | echo "Detected MAC OSX launched script...." 172 | echo "Swapping to UI" 173 | addResidual "ui" 174 | } 175 | } 176 | 177 | # Processes incoming arguments and places them in appropriate global variables. called by the run method. 178 | process_args () { 179 | while [[ $# -gt 0 ]]; do 180 | case "$1" in 181 | -h|-help) usage; exit 1 ;; 182 | -v|-verbose) verbose=1 && shift ;; 183 | -d|-debug) debug=1 && shift ;; 184 | -mem) require_arg integer "$1" "$2" && app_mem="$2" && shift 2 ;; 185 | -jvm-debug) 186 | if echo "$2" | grep -E ^[0-9]+$ > /dev/null; then 187 | addDebugger "$2" && shift 188 | else 189 | addDebugger 9999 190 | fi 191 | shift ;; 192 | -java-home) require_arg path "$1" "$2" && java_cmd="$2/bin/java" && shift 2 ;; 193 | -D*) addJava "$1" && shift ;; 194 | -J*) addJava "${1:2}" && shift ;; 195 | *) addResidual "$1" && shift ;; 196 | esac 197 | done 198 | 199 | is_function_defined process_my_args && { 200 | myargs=("${residual_args[@]}") 201 | residual_args=() 202 | process_my_args "${myargs[@]}" 203 | } 204 | } 205 | 206 | # Actually runs the script. 207 | run() { 208 | # TODO - check for sane environment 209 | 210 | # process the combined args, then reset "$@" to the residuals 211 | process_args "$@" 212 | detect_terminal_for_ui 213 | set -- "${residual_args[@]}" 214 | argumentCount=$# 215 | 216 | #check for jline terminal fixes on cygwin 217 | if is_cygwin; then 218 | stty -icanon min 1 -echo > /dev/null 2>&1 219 | addJava "-Djline.terminal=jline.UnixTerminal" 220 | addJava "-Dsbt.cygwin=true" 221 | fi 222 | 223 | # run sbt 224 | execRunner "$java_cmd" \ 225 | "-Dactivator.home=$(make_url "$activator_home")" \ 226 | $(get_mem_opts $app_mem) \ 227 | ${java_opts[@]} \ 228 | ${java_args[@]} \ 229 | -jar "$app_launcher" \ 230 | "${app_commands[@]}" \ 231 | "${residual_args[@]}" 232 | 233 | local exit_code=$? 234 | if is_cygwin; then 235 | stty icanon echo > /dev/null 2>&1 236 | fi 237 | exit $exit_code 238 | } 239 | 240 | # Loads a configuration file full of default command line options for this script. 241 | loadConfigFile() { 242 | cat "$1" | sed '/^\#/d' 243 | } 244 | 245 | ### ------------------------------- ### 246 | ### Start of customized settings ### 247 | ### ------------------------------- ### 248 | usage() { 249 | cat < [options] 251 | 252 | Command: 253 | ui Start the Activator UI 254 | new [name] [template-id] Create a new project with [name] using template [template-id] 255 | list-templates Print all available template names 256 | -h | -help Print this message 257 | 258 | Options: 259 | -v | -verbose Make this runner chattier 260 | -d | -debug Set sbt log level to debug 261 | -mem Set memory options (default: $sbt_mem, which is $(get_mem_opts $sbt_mem)) 262 | -jvm-debug Turn on JVM debugging, open at the given port. 263 | 264 | # java version (default: java from PATH, currently $(java -version 2>&1 | grep version)) 265 | -java-home Alternate JAVA_HOME 266 | 267 | # jvm options and output control 268 | -Dkey=val Pass -Dkey=val directly to the java runtime 269 | -J-X Pass option -X directly to the java runtime 270 | (-J is stripped) 271 | 272 | # environment variables (read from context) 273 | JAVA_OPTS Environment variable, if unset uses "" 274 | SBT_OPTS Environment variable, if unset uses "" 275 | ACTIVATOR_OPTS Environment variable, if unset uses "" 276 | 277 | In the case of duplicated or conflicting options, the order above 278 | shows precedence: environment variables lowest, command line options highest. 279 | EOM 280 | } 281 | 282 | ### ------------------------------- ### 283 | ### Main script ### 284 | ### ------------------------------- ### 285 | 286 | declare -a residual_args 287 | declare -a java_args 288 | declare -a app_commands 289 | declare -r real_script_path="$(realpath "$0")" 290 | declare -r activator_home="$(realpath "$(dirname "$real_script_path")")" 291 | declare -r app_version="1.3.7" 292 | 293 | declare -r app_launcher="${activator_home}/activator-launch-${app_version}.jar" 294 | declare -r script_name=activator 295 | java_cmd=$(get_java_cmd) 296 | declare -r java_opts=( "${ACTIVATOR_OPTS[@]}" "${SBT_OPTS[@]}" "${JAVA_OPTS[@]}" "${java_opts[@]}" ) 297 | userhome="$HOME" 298 | if is_cygwin; then 299 | # cygwin sets home to something f-d up, set to real windows homedir 300 | userhome="$USERPROFILE" 301 | fi 302 | declare -r activator_user_home_dir="${userhome}/.activator" 303 | declare -r java_opts_config_home="${activator_user_home_dir}/activatorconfig.txt" 304 | declare -r java_opts_config_version="${activator_user_home_dir}/${app_version}/activatorconfig.txt" 305 | 306 | # Now check to see if it's a good enough version 307 | declare -r java_version=$("$java_cmd" -version 2>&1 | awk -F '"' '/version/ {print $2}') 308 | if [[ "$java_version" == "" ]]; then 309 | echo 310 | echo No java installations was detected. 311 | echo Please go to http://www.java.com/getjava/ and download 312 | echo 313 | exit 1 314 | elif [[ ! "$java_version" > "1.6" ]]; then 315 | echo 316 | echo The java installation you have is not up to date 317 | echo Activator requires at least version 1.6+, you have 318 | echo version $java_version 319 | echo 320 | echo Please go to http://www.java.com/getjava/ and download 321 | echo a valid Java Runtime and install before running Activator. 322 | echo 323 | exit 1 324 | fi 325 | 326 | # if configuration files exist, prepend their contents to the java args so it can be processed by this runner 327 | # a "versioned" config trumps one on the top level 328 | if [[ -f "$java_opts_config_version" ]]; then 329 | addConfigOpts $(loadConfigFile "$java_opts_config_version") 330 | elif [[ -f "$java_opts_config_home" ]]; then 331 | addConfigOpts $(loadConfigFile "$java_opts_config_home") 332 | fi 333 | 334 | run "$@" 335 | -------------------------------------------------------------------------------- /activator-launch-1.3.7.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NashTech-Labs/ScalaJs_Weather_Report/278ec9adf9e236e056ea67eb74477f1f2066ad48/activator-launch-1.3.7.jar -------------------------------------------------------------------------------- /activator.bat: -------------------------------------------------------------------------------- 1 | @REM activator launcher script 2 | @REM 3 | @REM Environment: 4 | @REM In order for Activator to work you must have Java available on the classpath 5 | @REM JAVA_HOME - location of a JDK home dir (optional if java on path) 6 | @REM CFG_OPTS - JVM options (optional) 7 | @REM Configuration: 8 | @REM activatorconfig.txt found in the ACTIVATOR_HOME or ACTIVATOR_HOME/ACTIVATOR_VERSION 9 | @setlocal enabledelayedexpansion 10 | 11 | @echo off 12 | 13 | set "var1=%~1" 14 | if defined var1 ( 15 | if "%var1%"=="help" ( 16 | echo. 17 | echo Usage activator [options] [command] 18 | echo. 19 | echo Commands: 20 | echo ui Start the Activator UI 21 | echo new [name] [template-id] Create a new project with [name] using template [template-id] 22 | echo list-templates Print all available template names 23 | echo help Print this message 24 | echo. 25 | echo Options: 26 | echo -jvm-debug [port] Turn on JVM debugging, open at the given port. Defaults to 9999 if no port given. 27 | echo. 28 | echo Environment variables ^(read from context^): 29 | echo JAVA_OPTS Environment variable, if unset uses "" 30 | echo SBT_OPTS Environment variable, if unset uses "" 31 | echo ACTIVATOR_OPTS Environment variable, if unset uses "" 32 | echo. 33 | echo Please note that in order for Activator to work you must have Java available on the classpath 34 | echo. 35 | goto :end 36 | ) 37 | ) 38 | 39 | if "%ACTIVATOR_HOME%"=="" ( 40 | set "ACTIVATOR_HOME=%~dp0" 41 | @REM remove trailing "\" from path 42 | set ACTIVATOR_HOME=!ACTIVATOR_HOME:~0,-1! 43 | ) 44 | 45 | set ERROR_CODE=0 46 | set APP_VERSION=1.3.7 47 | set ACTIVATOR_LAUNCH_JAR=activator-launch-%APP_VERSION%.jar 48 | 49 | rem Detect if we were double clicked, although theoretically A user could 50 | rem manually run cmd /c 51 | for %%x in (%cmdcmdline%) do if %%~x==/c set DOUBLECLICKED=1 52 | 53 | rem FIRST we load a config file of extra options (if there is one) 54 | set "CFG_FILE_HOME=%UserProfile%\.activator\activatorconfig.txt" 55 | set "CFG_FILE_VERSION=%UserProfile%\.activator\%APP_VERSION%\activatorconfig.txt" 56 | set CFG_OPTS= 57 | if exist %CFG_FILE_VERSION% ( 58 | FOR /F "tokens=* eol=# usebackq delims=" %%i IN ("%CFG_FILE_VERSION%") DO ( 59 | set DO_NOT_REUSE_ME=%%i 60 | rem ZOMG (Part #2) WE use !! here to delay the expansion of 61 | rem CFG_OPTS, otherwise it remains "" for this loop. 62 | set CFG_OPTS=!CFG_OPTS! !DO_NOT_REUSE_ME! 63 | ) 64 | ) 65 | if "%CFG_OPTS%"=="" ( 66 | if exist %CFG_FILE_HOME% ( 67 | FOR /F "tokens=* eol=# usebackq delims=" %%i IN ("%CFG_FILE_HOME%") DO ( 68 | set DO_NOT_REUSE_ME=%%i 69 | rem ZOMG (Part #2) WE use !! here to delay the expansion of 70 | rem CFG_OPTS, otherwise it remains "" for this loop. 71 | set CFG_OPTS=!CFG_OPTS! !DO_NOT_REUSE_ME! 72 | ) 73 | ) 74 | ) 75 | 76 | rem We use the value of the JAVACMD environment variable if defined 77 | set _JAVACMD=%JAVACMD% 78 | 79 | if "%_JAVACMD%"=="" ( 80 | if not "%JAVA_HOME%"=="" ( 81 | if exist "%JAVA_HOME%\bin\java.exe" set "_JAVACMD=%JAVA_HOME%\bin\java.exe" 82 | 83 | rem if there is a java home set we make sure it is the first picked up when invoking 'java' 84 | SET "PATH=%JAVA_HOME%\bin;%PATH%" 85 | ) 86 | ) 87 | 88 | if "%_JAVACMD%"=="" set _JAVACMD=java 89 | 90 | rem Detect if this java is ok to use. 91 | for /F %%j in ('"%_JAVACMD%" -version 2^>^&1') do ( 92 | if %%~j==java set JAVAINSTALLED=1 93 | if %%~j==openjdk set JAVAINSTALLED=1 94 | ) 95 | 96 | rem Detect the same thing about javac 97 | if "%_JAVACCMD%"=="" ( 98 | if not "%JAVA_HOME%"=="" ( 99 | if exist "%JAVA_HOME%\bin\javac.exe" set "_JAVACCMD=%JAVA_HOME%\bin\javac.exe" 100 | ) 101 | ) 102 | if "%_JAVACCMD%"=="" set _JAVACCMD=javac 103 | for /F %%j in ('"%_JAVACCMD%" -version 2^>^&1') do ( 104 | if %%~j==javac set JAVACINSTALLED=1 105 | ) 106 | 107 | rem BAT has no logical or, so we do it OLD SCHOOL! Oppan Redmond Style 108 | set JAVAOK=true 109 | if not defined JAVAINSTALLED set JAVAOK=false 110 | if not defined JAVACINSTALLED set JAVAOK=false 111 | 112 | if "%JAVAOK%"=="false" ( 113 | echo. 114 | echo A Java JDK is not installed or can't be found. 115 | if not "%JAVA_HOME%"=="" ( 116 | echo JAVA_HOME = "%JAVA_HOME%" 117 | ) 118 | echo. 119 | echo Please go to 120 | echo http://www.oracle.com/technetwork/java/javase/downloads/index.html 121 | echo and download a valid Java JDK and install before running Activator. 122 | echo. 123 | echo If you think this message is in error, please check 124 | echo your environment variables to see if "java.exe" and "javac.exe" are 125 | echo available via JAVA_HOME or PATH. 126 | echo. 127 | if defined DOUBLECLICKED pause 128 | exit /B 1 129 | ) 130 | 131 | rem Check what Java version is being used to determine what memory options to use 132 | for /f "tokens=3" %%g in ('java -version 2^>^&1 ^| findstr /i "version"') do ( 133 | set JAVA_VERSION=%%g 134 | ) 135 | 136 | rem Strips away the " characters 137 | set JAVA_VERSION=%JAVA_VERSION:"=% 138 | 139 | rem TODO Check if there are existing mem settings in JAVA_OPTS/CFG_OPTS and use those instead of the below 140 | for /f "delims=. tokens=1-3" %%v in ("%JAVA_VERSION%") do ( 141 | set MAJOR=%%v 142 | set MINOR=%%w 143 | set BUILD=%%x 144 | 145 | set META_SIZE=-XX:MetaspaceSize=64M -XX:MaxMetaspaceSize=256M 146 | if "!MINOR!" LSS "8" ( 147 | set META_SIZE=-XX:PermSize=64M -XX:MaxPermSize=256M 148 | ) 149 | 150 | set MEM_OPTS=!META_SIZE! 151 | ) 152 | 153 | rem We use the value of the JAVA_OPTS environment variable if defined, rather than the config. 154 | set _JAVA_OPTS=%JAVA_OPTS% 155 | if "%_JAVA_OPTS%"=="" set _JAVA_OPTS=%CFG_OPTS% 156 | 157 | set DEBUG_OPTS= 158 | 159 | rem Loop through the arguments, building remaining args in args variable 160 | set args= 161 | :argsloop 162 | if not "%~1"=="" ( 163 | rem Checks if the argument contains "-D" and if true, adds argument 1 with 2 and puts an equal sign between them. 164 | rem This is done since batch considers "=" to be a delimiter so we need to circumvent this behavior with a small hack. 165 | set arg1=%~1 166 | if "!arg1:~0,2!"=="-D" ( 167 | set "args=%args% "%~1"="%~2"" 168 | shift 169 | shift 170 | goto argsloop 171 | ) 172 | 173 | if "%~1"=="-jvm-debug" ( 174 | if not "%~2"=="" ( 175 | rem This piece of magic somehow checks that an argument is a number 176 | for /F "delims=0123456789" %%i in ("%~2") do ( 177 | set var="%%i" 178 | ) 179 | if defined var ( 180 | rem Not a number, assume no argument given and default to 9999 181 | set JPDA_PORT=9999 182 | ) else ( 183 | rem Port was given, shift arguments 184 | set JPDA_PORT=%~2 185 | shift 186 | ) 187 | ) else ( 188 | set JPDA_PORT=9999 189 | ) 190 | shift 191 | 192 | set DEBUG_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=!JPDA_PORT! 193 | goto argsloop 194 | ) 195 | rem else 196 | set "args=%args% "%~1"" 197 | shift 198 | goto argsloop 199 | ) 200 | 201 | :run 202 | 203 | if "!args!"=="" ( 204 | if defined DOUBLECLICKED ( 205 | set CMDS="ui" 206 | ) else set CMDS=!args! 207 | ) else set CMDS=!args! 208 | 209 | rem We add a / in front, so we get file:///C: instead of file://C: 210 | rem Java considers the later a UNC path. 211 | rem We also attempt a solid effort at making it URI friendly. 212 | rem We don't even bother with UNC paths. 213 | set JAVA_FRIENDLY_HOME_1=/!ACTIVATOR_HOME:\=/! 214 | set JAVA_FRIENDLY_HOME=/!JAVA_FRIENDLY_HOME_1: =%%20! 215 | 216 | rem Checks if the command contains spaces to know if it should be wrapped in quotes or not 217 | set NON_SPACED_CMD=%_JAVACMD: =% 218 | if "%_JAVACMD%"=="%NON_SPACED_CMD%" %_JAVACMD% %DEBUG_OPTS% %MEM_OPTS% %ACTIVATOR_OPTS% %SBT_OPTS% %_JAVA_OPTS% "-Dactivator.home=%JAVA_FRIENDLY_HOME%" -jar "%ACTIVATOR_HOME%\%ACTIVATOR_LAUNCH_JAR%" %CMDS% 219 | if NOT "%_JAVACMD%"=="%NON_SPACED_CMD%" "%_JAVACMD%" %DEBUG_OPTS% %MEM_OPTS% %ACTIVATOR_OPTS% %SBT_OPTS% %_JAVA_OPTS% "-Dactivator.home=%JAVA_FRIENDLY_HOME%" -jar "%ACTIVATOR_HOME%\%ACTIVATOR_LAUNCH_JAR%" %CMDS% 220 | 221 | if ERRORLEVEL 1 goto error 222 | goto end 223 | 224 | :error 225 | set ERROR_CODE=1 226 | 227 | :end 228 | 229 | @endlocal 230 | 231 | exit /B %ERROR_CODE% 232 | -------------------------------------------------------------------------------- /build.sbt: -------------------------------------------------------------------------------- 1 | import sbt.Keys._ 2 | import sbt.Project.projectToRef 3 | import de.johoop.cpd4sbt.CopyPasteDetector._ 4 | 5 | 6 | name := "Knoldus-Scala.js" 7 | 8 | version := "0.1" 9 | 10 | 11 | lazy val clients = Seq(client) 12 | lazy val scalaV = "2.11.7" 13 | 14 | 15 | lazy val server = (project in file("server")).settings( 16 | scalaVersion := scalaV, 17 | cpdSettings, 18 | scalaJSProjects := clients, 19 | pipelineStages := Seq(scalaJSProd, gzip), 20 | resolvers += "scalaz-bintray" at "https://dl.bintray.com/scalaz/releases", 21 | scalacOptions ++= Seq("-deprecation", "-Xlint","-feature"), 22 | libraryDependencies ++= Seq( 23 | "com.vmunier" %%% "play-scalajs-scripts" % "0.3.0", 24 | "org.scalaj" % "scalaj-http_2.11" % "2.3.0", 25 | specs2 % Test 26 | ) 27 | ).enablePlugins(PlayScala). 28 | aggregate(clients.map(projectToRef): _*). 29 | dependsOn(sharedJvm) 30 | 31 | 32 | lazy val client = (project in file("client")).settings( 33 | scalaVersion := scalaV, 34 | cpdSettings, 35 | persistLauncher := true, 36 | persistLauncher in Test := false, 37 | scalacOptions ++= Seq("-deprecation", "-Xlint"), 38 | libraryDependencies ++= Seq( 39 | "org.scala-js" %%% "scalajs-dom" % "0.9.0", 40 | "be.doeraene" %%% "scalajs-jquery" % "0.9.0", 41 | "com.lihaoyi" %%% "scalatags" % "0.5.4", 42 | "com.github.japgolly.scalacss" %%% "ext-scalatags" % "0.4.0", 43 | "com.github.japgolly.scalacss" %%% "core" % "0.4.0" 44 | ), 45 | jsDependencies += 46 | "org.webjars" % "jquery" % "2.1.4" / "2.1.4/jquery.js", 47 | 48 | jsDependencies += RuntimeDOM, 49 | 50 | // uTest settings 51 | libraryDependencies += "com.lihaoyi" %%% "utest" % "0.3.0" % "test", 52 | testFrameworks += new TestFramework("utest.runner.Framework") 53 | ).enablePlugins(ScalaJSPlugin, ScalaJSPlay). 54 | dependsOn(sharedJs) 55 | 56 | 57 | lazy val shared = (crossProject.crossType(CrossType.Pure) in file("shared")). 58 | settings(scalaVersion := scalaV). 59 | jsConfigure(_ enablePlugins ScalaJSPlay) 60 | 61 | lazy val sharedJvm = shared.jvm 62 | lazy val sharedJs = shared.js 63 | 64 | // loads the Play project at sbt startup 65 | onLoad in Global := (Command.process("project server", _: State)) compose (onLoad in Global).value -------------------------------------------------------------------------------- /client/src/main/scala/com/knoldus/weather/ReportStyles.scala: -------------------------------------------------------------------------------- 1 | package com.knoldus.weather 2 | 3 | import scalacss.Defaults._ 4 | 5 | object ReportStyles extends StyleSheet.Inline { 6 | 7 | import dsl._ 8 | 9 | val mainDiv = style( 10 | addClassName("col-md-12"), 11 | borderBottom := "1px solid #eee", 12 | backgroundColor(Color("#3D4048")) 13 | ) 14 | 15 | val heading = style( 16 | marginBottom(5 px), 17 | color.rgb(220, 208, 192), 18 | textAlign.center 19 | ) 20 | 21 | val firstSpan = style( 22 | marginLeft(20 px), 23 | textTransform.uppercase, 24 | textShadow := "2px 2px 4px #000" 25 | ) 26 | 27 | val secondSpan = style( 28 | textShadow := "1px 1px 1px #000" 29 | ) 30 | 31 | val imageCommon = mixin( 32 | height(60 px), 33 | width(60 px) 34 | ) 35 | 36 | val firstImg = style(imageCommon) 37 | 38 | val secondImg = style( 39 | imageCommon, 40 | marginLeft(20 px) 41 | ) 42 | 43 | val secondDiv = style( 44 | addClassName("col-md-12"), 45 | marginTop(10 %%) 46 | ) 47 | val search = style( 48 | width(60 %%), 49 | height(35 px), 50 | margin := "0% 0px 0px 16%", 51 | borderRadius(0 px), 52 | paddingLeft(5 px) 53 | ) 54 | 55 | val bootstrapButton = style( 56 | addClassName("btn btn-info"), 57 | height(35 px), 58 | margin := "-1px 0px 0px 0%", 59 | borderRadius(0 px) 60 | ) 61 | 62 | val mainContainer = style( 63 | addClassName("col-md-12 maincontainer"), 64 | marginTop(30 px), 65 | borderTop := "2px solid #ccc", 66 | paddingTop(30 px), 67 | borderBottom := "2px solid #ccc", 68 | paddingBottom(30 px), 69 | display.none 70 | ) 71 | 72 | val innerDiv = style( 73 | width(530 px), 74 | height(400 px), 75 | marginLeft(60 px) 76 | ) 77 | 78 | val city = style( 79 | fontSize(28 px), 80 | color := "#67890a", 81 | fontWeight.bold 82 | ) 83 | 84 | val table = style( 85 | addClassName("table-bordered table-striped"), 86 | width(540 px), 87 | textAlign.center, 88 | marginTop(10 px) 89 | ) 90 | 91 | val commonTD = mixin( 92 | padding(0 px), 93 | fontWeight.bold 94 | ) 95 | 96 | val td = style( 97 | padding(20 px) 98 | ) 99 | 100 | val firstTd = style( 101 | commonTD, 102 | fontSize(22 px) 103 | ) 104 | 105 | val secondTd = style(commonTD) 106 | 107 | val mapCanvas = style( 108 | height(430 px), 109 | width(512 px) 110 | ) 111 | } -------------------------------------------------------------------------------- /client/src/main/scala/com/knoldus/weather/Weather.scala: -------------------------------------------------------------------------------- 1 | package com.knoldus.weather 2 | 3 | import org.scalajs.dom 4 | import org.scalajs.dom.{ XMLHttpRequest, document } 5 | import org.scalajs.jquery.{ JQuery, jQuery, JQueryAjaxSettings, JQueryXHR } 6 | import org.scalajs.dom.raw.HTMLElement 7 | 8 | import scala.scalajs.js 9 | import scala.scalajs.js.Dynamic.{ global => g, literal => lit, newInstance => jsnew } 10 | import scala.scalajs.js.annotation.JSExport 11 | import scala.scalajs.js.{ Array, Date, JSON } 12 | import scalacss.Defaults._ 13 | import scalacss.ScalatagsCss._ 14 | import scalatags.Text._ 15 | import scalatags.Text.all._ 16 | 17 | trait DataGenerator { 18 | 19 | def initialize(lat: Double, long: Double) = { 20 | val map_canvas = document.getElementById("map_canvas") 21 | val map_options = lit(center = (jsnew(g.google.maps.LatLng))(lat, long), zoom = 3, mapTypeId = g.google.maps.MapTypeId.ROADMAP) 22 | val gogleMap = (jsnew(g.google.maps.Map))(map_canvas, map_options) 23 | val marker = (jsnew(g.google.maps.Marker))(lit(map = gogleMap, position = (jsnew(g.google.maps.LatLng)(lat, long)))) 24 | } 25 | 26 | def msToTime(unix_timestamp: Long): String = { 27 | val date = new Date(unix_timestamp * 1000); 28 | val hrs = date.getHours(); 29 | val mins = date.getMinutes(); 30 | val secs = date.getSeconds(); 31 | hrs + ":" + mins + ":" + secs 32 | } 33 | } 34 | 35 | class WeatherReport extends DataGenerator { 36 | 37 | @JSExport 38 | def showReport(): Unit = { 39 | val renderHtml = new WeatherFrag(scalatags.Text) 40 | dom.document.body.innerHTML = renderHtml.htmlFrag.render 41 | } 42 | 43 | @JSExport 44 | def showDetail() { 45 | cleanUI 46 | 47 | val name = jQuery("#name").value() 48 | jQuery.ajax(js.Dynamic.literal( 49 | `type` = "GET", 50 | url = "/weather/" + name, 51 | success = { (data: String, textStatus: String, jqXHR: JQueryXHR) => 52 | populateWeatherReprt(data) 53 | } 54 | ).asInstanceOf[JQueryAjaxSettings]) 55 | } 56 | 57 | private def cleanUI: JQuery = { 58 | jQuery("#cityName").empty() 59 | jQuery("#weather").empty() 60 | jQuery("#pressure").empty() 61 | jQuery("#humidity").empty() 62 | jQuery("#sunrise").empty() 63 | jQuery("#sunset").empty() 64 | jQuery("#geocoords").empty() 65 | jQuery("#temp").empty() 66 | } 67 | 68 | private def populateWeatherReprt(data: String) = { 69 | val result = JSON.parse(data) 70 | val weather = result.weather.asInstanceOf[Array[js.Dynamic]](0) 71 | jQuery("#tempDetail").attr("style", "display:block;") 72 | jQuery("#cityName").append(result.name + "," + result.sys.country) 73 | val image = "http://openweathermap.org/img/w/" + weather.icon + ".png" 74 | jQuery("#temp").append("" + Math.floor(result.main.temp.toString.toDouble - 273.15)) 75 | jQuery("#weather").append("" + weather.main) 76 | jQuery("#pressure").append("" + result.main.pressure + " hpa") 77 | jQuery("#humidity").append(result.main.humidity + " %") 78 | jQuery("#sunrise").append(msToTime(result.sys.sunrise.toString.toLong)) 79 | jQuery("#sunset").append(msToTime(result.sys.sunset.toString.toLong)) 80 | jQuery("#geocoords").append("[" + result.coord.lon + ", " + result.coord.lat + "]") 81 | initialize(result.coord.lat.toString.toDouble, result.coord.lon.toString.toDouble) 82 | } 83 | } 84 | 85 | @JSExport 86 | object Weather extends WeatherReport with js.JSApp { 87 | @JSExport 88 | def main(): Unit = showReport 89 | } 90 | 91 | class WeatherFrag[Builder, Output <: FragT, FragT](val bundle: scalatags.generic.Bundle[Builder, Output, FragT]) { 92 | 93 | val htmlFrag = html( 94 | ReportStyles.render[TypedTag[String]], 95 | body( 96 | div( 97 | ReportStyles.mainDiv, 98 | h1( 99 | ReportStyles.heading, 100 | img(ReportStyles.firstImg, src := "/assets/images/image.png"), 101 | span(ReportStyles.firstSpan, "Weather Report - "), 102 | span(ReportStyles.secondSpan, "Get the mood of your city on one click"), 103 | img(ReportStyles.secondImg, src := "/assets/images/image.png") 104 | ) 105 | ), 106 | div( 107 | ReportStyles.secondDiv, id := "search", 108 | input( 109 | ReportStyles.search, 110 | id := "name", name := "name", placeholder := "Enter a city", 111 | `type` := "text", value := "Delhi", size := 15 112 | ), 113 | button( 114 | ReportStyles.bootstrapButton, 115 | `type` := "button", name := "submit", id := "submit", 116 | onclick := "com.knoldus.weather.Weather().showDetail();", "Search" 117 | ) 118 | ), 119 | div(ReportStyles.mainContainer, id := "tempDetail", 120 | div( 121 | div( 122 | `class` := "col-md-6", 123 | div( 124 | ReportStyles.innerDiv, 125 | div(ReportStyles.city, id := "cityName"), 126 | table( 127 | ReportStyles.table, 128 | tr( 129 | td( 130 | ReportStyles.firstTd, 131 | div(id := "temp") 132 | ), 133 | td( 134 | ReportStyles.secondTd, 135 | div(id := "weather") 136 | ) 137 | ), 138 | tr( 139 | td(ReportStyles.td, "Pressure"), 140 | td(id := "pressure") 141 | ), 142 | tr( 143 | td(ReportStyles.td, "Humidity"), 144 | td(id := "humidity") 145 | ), 146 | tr( 147 | td(ReportStyles.td, "Sunrise"), 148 | td(id := "sunrise") 149 | ), 150 | tr( 151 | td(ReportStyles.td, "Sunset"), 152 | td(id := "sunset") 153 | ), 154 | tr( 155 | td(ReportStyles.td, "Geo coords"), 156 | td(id := "geocoords") 157 | ) 158 | ) 159 | ) 160 | ), 161 | div( 162 | `class` := "col-md-6", 163 | div(ReportStyles.mapCanvas, id := "map_canvas") 164 | ) 165 | )) 166 | ) 167 | ) 168 | 169 | } -------------------------------------------------------------------------------- /client/src/test/scala/com/knoldus/weather/Weather.scala: -------------------------------------------------------------------------------- 1 | package com.knoldus.weather 2 | 3 | import org.scalajs.jquery.jQuery 4 | import utest._ 5 | 6 | import scala.scalajs.js 7 | import scala.scalajs.js.JSON 8 | 9 | object WeatherTest extends TestSuite { 10 | 11 | // Setup UI 12 | 13 | val weather = new WeatherReport { 14 | override def initialize(lat: Double, long: Double) = () 15 | } 16 | 17 | // Setup UI 18 | weather.showReport() 19 | 20 | def tests = TestSuite { 21 | "Page should contain search text box with button." - { 22 | assert(jQuery("#name").value() == "Delhi") 23 | val button = jQuery("#submit") 24 | assert(button.length == 1) 25 | } 26 | } 27 | } 28 | 29 | -------------------------------------------------------------------------------- /project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=0.13.9 2 | -------------------------------------------------------------------------------- /project/plugins.sbt: -------------------------------------------------------------------------------- 1 | // Comment to get more information during initialization 2 | logLevel := Level.Warn 3 | 4 | // Resolvers 5 | resolvers += "Typesafe repository" at "https://repo.typesafe.com/typesafe/releases/" 6 | 7 | // The Play plugin 8 | addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.5.0") 9 | 10 | // Scala-js plugins 11 | addSbtPlugin("org.scala-js" % "sbt-scalajs" % "0.6.7") 12 | 13 | // plugin for gzip compressing web assets. 14 | addSbtPlugin("com.typesafe.sbt" % "sbt-gzip" % "1.0.0") 15 | 16 | // Play-scala.js Integration plugin 17 | addSbtPlugin("com.vmunier" % "sbt-play-scalajs" % "0.3.0") 18 | 19 | // Plugins for improving code quality 20 | 21 | // Plugins to check scala style warnings 22 | addSbtPlugin("org.scalastyle" %% "scalastyle-sbt-plugin" % "0.8.0") 23 | 24 | // Plugin to format scala code while compilation 25 | addSbtPlugin("org.scalariform" % "sbt-scalariform" % "1.6.0") 26 | 27 | // Plugin for source code statistics and analytics 28 | addSbtPlugin("com.orrsella" % "sbt-stats" % "1.0.5") 29 | 30 | // Plugin for copy paste detector 31 | addSbtPlugin("de.johoop" % "cpd4sbt" % "1.1.5") 32 | 33 | resolvers += Resolver.sonatypeRepo("releases") 34 | 35 | addSbtPlugin("org.brianmckenna" % "sbt-wartremover" % "0.14") 36 | 37 | addSbtPlugin("com.orrsella" % "sbt-stats" % "1.0.5") 38 | -------------------------------------------------------------------------------- /server/app/controllers/WeatherController.scala: -------------------------------------------------------------------------------- 1 | package controllers 2 | 3 | import play.api.mvc._ 4 | 5 | import scalaj.http.Http 6 | import com.typesafe.config.ConfigFactory 7 | 8 | class WeatherController extends Controller { 9 | 10 | /** 11 | * Display Weather Information 12 | */ 13 | def index: Action[AnyContent] = Action { 14 | Ok(views.html.index()) 15 | } 16 | 17 | /** 18 | * This action is used to handle Ajax request 19 | * 20 | * @return 21 | */ 22 | def ajaxCall(city: String) = Action { implicit request => 23 | val key = ConfigFactory.load().getString("appId") 24 | val response = Http("http://api.openweathermap.org/data/2.5/weather").params(Map("q" -> city, "appid" -> key)).asString 25 | Ok(response.body) 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /server/app/views/index.scala.html: -------------------------------------------------------------------------------- 1 | @dashboardContent = { 2 | 5 | } 6 | 7 | @main("Weather Information System", content = dashboardContent) -------------------------------------------------------------------------------- /server/app/views/main.scala.html: -------------------------------------------------------------------------------- 1 | @* 2 | * This template is called from the `index` template. This template 3 | * handles the rendering of the page header and body tags. It takes 4 | * three arguments, a `String` for the title of the page and an `Html` 5 | * object to insert into the body of the page and an `Int` for refreshing the 6 | * page after a set interval. 7 | *@ 8 | @(title: String, content: Html) 9 | 10 | 11 | 12 | 13 | @title 14 | 15 | 16 | 17 | 18 | 19 | @content 20 | @playscalajs.html.scripts("client") 21 | 22 | 23 | -------------------------------------------------------------------------------- /server/conf/application.conf: -------------------------------------------------------------------------------- 1 | # This is the main configuration file for the application. 2 | appId="dabbe19700759dfe1d05821c3876b9c5" -------------------------------------------------------------------------------- /server/conf/routes: -------------------------------------------------------------------------------- 1 | # Routes 2 | # This file defines all application routes (Higher priority routes first) 3 | # ~~~~ 4 | 5 | # A weather controller showing weather information system 6 | GET / controllers.WeatherController.index 7 | 8 | # Refresh Weather Information 9 | GET /weather/:city controllers.WeatherController.ajaxCall(city:String) 10 | 11 | 12 | # Map static resources from the /public folder to the /assets URL path 13 | GET /assets/*file controllers.Assets.versioned(path="/public", file: Asset) 14 | -------------------------------------------------------------------------------- /server/public/images/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NashTech-Labs/ScalaJs_Weather_Report/278ec9adf9e236e056ea67eb74477f1f2066ad48/server/public/images/image.png -------------------------------------------------------------------------------- /server/public/images/weather.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NashTech-Labs/ScalaJs_Weather_Report/278ec9adf9e236e056ea67eb74477f1f2066ad48/server/public/images/weather.png -------------------------------------------------------------------------------- /server/public/stylesheets/bootstrap.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap v3.1.0 (http://getbootstrap.com) 3 | * Copyright 2011-2014 Twitter, Inc. 4 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) 5 | */ 6 | 7 | /*! normalize.css v3.0.0 | MIT License | git.io/normalize */ 8 | html { 9 | font-family: sans-serif; 10 | -webkit-text-size-adjust: 100%; 11 | -ms-text-size-adjust: 100%; 12 | } 13 | body { 14 | margin: 0; 15 | } 16 | article, 17 | aside, 18 | details, 19 | figcaption, 20 | figure, 21 | footer, 22 | header, 23 | hgroup, 24 | main, 25 | nav, 26 | section, 27 | summary { 28 | display: block; 29 | } 30 | audio, 31 | canvas, 32 | progress, 33 | video { 34 | display: inline-block; 35 | vertical-align: baseline; 36 | } 37 | audio:not([controls]) { 38 | display: none; 39 | height: 0; 40 | } 41 | [hidden], 42 | template { 43 | display: none; 44 | } 45 | a { 46 | background: transparent; 47 | } 48 | a:active, 49 | a:hover { 50 | outline: 0; 51 | } 52 | abbr[title] { 53 | border-bottom: 1px dotted; 54 | } 55 | b, 56 | strong { 57 | font-weight: bold; 58 | } 59 | dfn { 60 | font-style: italic; 61 | } 62 | h1 { 63 | margin: .67em 0; 64 | font-size: 2em; 65 | } 66 | mark { 67 | color: #000; 68 | background: #ff0; 69 | } 70 | small { 71 | font-size: 80%; 72 | } 73 | sub, 74 | sup { 75 | position: relative; 76 | font-size: 75%; 77 | line-height: 0; 78 | vertical-align: baseline; 79 | } 80 | sup { 81 | top: -.5em; 82 | } 83 | sub { 84 | bottom: -.25em; 85 | } 86 | img { 87 | border: 0; 88 | } 89 | svg:not(:root) { 90 | overflow: hidden; 91 | } 92 | figure { 93 | margin: 1em 40px; 94 | } 95 | hr { 96 | height: 0; 97 | -moz-box-sizing: content-box; 98 | box-sizing: content-box; 99 | } 100 | pre { 101 | overflow: auto; 102 | } 103 | code, 104 | kbd, 105 | pre, 106 | samp { 107 | font-family: monospace, monospace; 108 | font-size: 1em; 109 | } 110 | button, 111 | input, 112 | optgroup, 113 | select, 114 | textarea { 115 | margin: 0; 116 | font: inherit; 117 | color: inherit; 118 | } 119 | button { 120 | overflow: visible; 121 | } 122 | button, 123 | select { 124 | text-transform: none; 125 | } 126 | button, 127 | html input[type="button"], 128 | input[type="reset"], 129 | input[type="submit"] { 130 | -webkit-appearance: button; 131 | cursor: pointer; 132 | } 133 | button[disabled], 134 | html input[disabled] { 135 | cursor: default; 136 | } 137 | button::-moz-focus-inner, 138 | input::-moz-focus-inner { 139 | padding: 0; 140 | border: 0; 141 | } 142 | input { 143 | line-height: normal; 144 | } 145 | input[type="checkbox"], 146 | input[type="radio"] { 147 | box-sizing: border-box; 148 | padding: 0; 149 | } 150 | input[type="number"]::-webkit-inner-spin-button, 151 | input[type="number"]::-webkit-outer-spin-button { 152 | height: auto; 153 | } 154 | input[type="search"] { 155 | -webkit-box-sizing: content-box; 156 | -moz-box-sizing: content-box; 157 | box-sizing: content-box; 158 | -webkit-appearance: textfield; 159 | } 160 | input[type="search"]::-webkit-search-cancel-button, 161 | input[type="search"]::-webkit-search-decoration { 162 | -webkit-appearance: none; 163 | } 164 | fieldset { 165 | padding: .35em .625em .75em; 166 | margin: 0 2px; 167 | border: 1px solid #c0c0c0; 168 | } 169 | legend { 170 | padding: 0; 171 | border: 0; 172 | } 173 | textarea { 174 | overflow: auto; 175 | } 176 | optgroup { 177 | font-weight: bold; 178 | } 179 | table { 180 | border-spacing: 0; 181 | border-collapse: collapse; 182 | } 183 | td, 184 | th { 185 | padding: 0; 186 | } 187 | @media print { 188 | * { 189 | color: #000 !important; 190 | text-shadow: none !important; 191 | background: transparent !important; 192 | box-shadow: none !important; 193 | } 194 | a, 195 | a:visited { 196 | text-decoration: underline; 197 | } 198 | a[href]:after { 199 | content: " (" attr(href) ")"; 200 | } 201 | abbr[title]:after { 202 | content: " (" attr(title) ")"; 203 | } 204 | a[href^="javascript:"]:after, 205 | a[href^="#"]:after { 206 | content: ""; 207 | } 208 | pre, 209 | blockquote { 210 | border: 1px solid #999; 211 | 212 | page-break-inside: avoid; 213 | } 214 | thead { 215 | display: table-header-group; 216 | } 217 | tr, 218 | img { 219 | page-break-inside: avoid; 220 | } 221 | img { 222 | max-width: 100% !important; 223 | } 224 | p, 225 | h2, 226 | h3 { 227 | orphans: 3; 228 | widows: 3; 229 | } 230 | h2, 231 | h3 { 232 | page-break-after: avoid; 233 | } 234 | select { 235 | background: #fff !important; 236 | } 237 | .navbar { 238 | display: none; 239 | } 240 | .table td, 241 | .table th { 242 | background-color: #fff !important; 243 | } 244 | .btn > .caret, 245 | .dropup > .btn > .caret { 246 | border-top-color: #000 !important; 247 | } 248 | .label { 249 | border: 1px solid #000; 250 | } 251 | .table { 252 | border-collapse: collapse !important; 253 | } 254 | .table-bordered th, 255 | .table-bordered td { 256 | border: 1px solid #ddd !important; 257 | } 258 | } 259 | * { 260 | -webkit-box-sizing: border-box; 261 | -moz-box-sizing: border-box; 262 | box-sizing: border-box; 263 | } 264 | *:before, 265 | *:after { 266 | -webkit-box-sizing: border-box; 267 | -moz-box-sizing: border-box; 268 | box-sizing: border-box; 269 | } 270 | html { 271 | font-size: 62.5%; 272 | 273 | -webkit-tap-highlight-color: rgba(0, 0, 0, 0); 274 | } 275 | body { 276 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 277 | font-size: 14px; 278 | line-height: 1.428571429; 279 | color: #333; 280 | background-color: #fff; 281 | } 282 | input, 283 | button, 284 | select, 285 | textarea { 286 | font-family: inherit; 287 | font-size: inherit; 288 | line-height: inherit; 289 | } 290 | a { 291 | color: #428bca; 292 | text-decoration: none; 293 | } 294 | a:hover, 295 | a:focus { 296 | color: #2a6496; 297 | text-decoration: underline; 298 | } 299 | a:focus { 300 | outline: thin dotted; 301 | outline: 5px auto -webkit-focus-ring-color; 302 | outline-offset: -2px; 303 | } 304 | figure { 305 | margin: 0; 306 | } 307 | img { 308 | vertical-align: middle; 309 | } 310 | .img-responsive { 311 | display: block; 312 | max-width: 100%; 313 | height: auto; 314 | } 315 | .img-rounded { 316 | border-radius: 6px; 317 | } 318 | .img-thumbnail { 319 | display: inline-block; 320 | max-width: 100%; 321 | height: auto; 322 | padding: 4px; 323 | line-height: 1.428571429; 324 | background-color: #fff; 325 | border: 1px solid #ddd; 326 | border-radius: 4px; 327 | -webkit-transition: all .2s ease-in-out; 328 | transition: all .2s ease-in-out; 329 | } 330 | .img-circle { 331 | border-radius: 50%; 332 | } 333 | hr { 334 | margin-top: 20px; 335 | margin-bottom: 20px; 336 | border: 0; 337 | border-top: 1px solid #eee; 338 | } 339 | .sr-only { 340 | position: absolute; 341 | width: 1px; 342 | height: 1px; 343 | padding: 0; 344 | margin: -1px; 345 | overflow: hidden; 346 | clip: rect(0, 0, 0, 0); 347 | border: 0; 348 | } 349 | h1, 350 | h2, 351 | h3, 352 | h4, 353 | h5, 354 | h6, 355 | .h1, 356 | .h2, 357 | .h3, 358 | .h4, 359 | .h5, 360 | .h6 { 361 | font-family: inherit; 362 | font-weight: 500; 363 | line-height: 1.1; 364 | color: inherit; 365 | } 366 | h1 small, 367 | h2 small, 368 | h3 small, 369 | h4 small, 370 | h5 small, 371 | h6 small, 372 | .h1 small, 373 | .h2 small, 374 | .h3 small, 375 | .h4 small, 376 | .h5 small, 377 | .h6 small, 378 | h1 .small, 379 | h2 .small, 380 | h3 .small, 381 | h4 .small, 382 | h5 .small, 383 | h6 .small, 384 | .h1 .small, 385 | .h2 .small, 386 | .h3 .small, 387 | .h4 .small, 388 | .h5 .small, 389 | .h6 .small { 390 | font-weight: normal; 391 | line-height: 1; 392 | color: #999; 393 | } 394 | h1, 395 | .h1, 396 | h2, 397 | .h2, 398 | h3, 399 | .h3 { 400 | margin-top: 20px; 401 | margin-bottom: 10px; 402 | } 403 | h1 small, 404 | .h1 small, 405 | h2 small, 406 | .h2 small, 407 | h3 small, 408 | .h3 small, 409 | h1 .small, 410 | .h1 .small, 411 | h2 .small, 412 | .h2 .small, 413 | h3 .small, 414 | .h3 .small { 415 | font-size: 65%; 416 | } 417 | h4, 418 | .h4, 419 | h5, 420 | .h5, 421 | h6, 422 | .h6 { 423 | margin-top: 10px; 424 | margin-bottom: 10px; 425 | } 426 | h4 small, 427 | .h4 small, 428 | h5 small, 429 | .h5 small, 430 | h6 small, 431 | .h6 small, 432 | h4 .small, 433 | .h4 .small, 434 | h5 .small, 435 | .h5 .small, 436 | h6 .small, 437 | .h6 .small { 438 | font-size: 75%; 439 | } 440 | h1, 441 | .h1 { 442 | font-size: 36px; 443 | } 444 | h2, 445 | .h2 { 446 | font-size: 30px; 447 | } 448 | h3, 449 | .h3 { 450 | font-size: 24px; 451 | } 452 | h4, 453 | .h4 { 454 | font-size: 18px; 455 | } 456 | h5, 457 | .h5 { 458 | font-size: 14px; 459 | } 460 | h6, 461 | .h6 { 462 | font-size: 12px; 463 | } 464 | p { 465 | margin: 0 0 10px; 466 | } 467 | .lead { 468 | margin-bottom: 20px; 469 | font-size: 16px; 470 | font-weight: 200; 471 | line-height: 1.4; 472 | } 473 | @media (min-width: 768px) { 474 | .lead { 475 | font-size: 21px; 476 | } 477 | } 478 | small, 479 | .small { 480 | font-size: 85%; 481 | } 482 | cite { 483 | font-style: normal; 484 | } 485 | .text-left { 486 | text-align: left; 487 | } 488 | .text-right { 489 | text-align: right; 490 | } 491 | .text-center { 492 | text-align: center; 493 | } 494 | .text-justify { 495 | text-align: justify; 496 | } 497 | .text-muted { 498 | color: #999; 499 | } 500 | .text-primary { 501 | color: #428bca; 502 | } 503 | a.text-primary:hover { 504 | color: #3071a9; 505 | } 506 | .text-success { 507 | color: #3c763d; 508 | } 509 | a.text-success:hover { 510 | color: #2b542c; 511 | } 512 | .text-info { 513 | color: #31708f; 514 | } 515 | a.text-info:hover { 516 | color: #245269; 517 | } 518 | .text-warning { 519 | color: #8a6d3b; 520 | } 521 | a.text-warning:hover { 522 | color: #66512c; 523 | } 524 | .text-danger { 525 | color: #a94442; 526 | } 527 | a.text-danger:hover { 528 | color: #843534; 529 | } 530 | .bg-primary { 531 | color: #fff; 532 | background-color: #428bca; 533 | } 534 | a.bg-primary:hover { 535 | background-color: #3071a9; 536 | } 537 | .bg-success { 538 | background-color: #dff0d8; 539 | } 540 | a.bg-success:hover { 541 | background-color: #c1e2b3; 542 | } 543 | .bg-info { 544 | background-color: #d9edf7; 545 | } 546 | a.bg-info:hover { 547 | background-color: #afd9ee; 548 | } 549 | .bg-warning { 550 | background-color: #fcf8e3; 551 | } 552 | a.bg-warning:hover { 553 | background-color: #f7ecb5; 554 | } 555 | .bg-danger { 556 | background-color: #f2dede; 557 | } 558 | a.bg-danger:hover { 559 | background-color: #e4b9b9; 560 | } 561 | .page-header { 562 | padding-bottom: 9px; 563 | margin: 40px 0 20px; 564 | border-bottom: 1px solid #eee; 565 | } 566 | ul, 567 | ol { 568 | margin-top: 0; 569 | margin-bottom: 10px; 570 | } 571 | ul ul, 572 | ol ul, 573 | ul ol, 574 | ol ol { 575 | margin-bottom: 0; 576 | } 577 | .list-unstyled { 578 | padding-left: 0; 579 | list-style: none; 580 | } 581 | .list-inline { 582 | padding-left: 0; 583 | list-style: none; 584 | } 585 | .list-inline > li { 586 | display: inline-block; 587 | padding-right: 5px; 588 | padding-left: 5px; 589 | } 590 | .list-inline > li:first-child { 591 | padding-left: 0; 592 | } 593 | dl { 594 | margin-top: 0; 595 | margin-bottom: 20px; 596 | } 597 | dt, 598 | dd { 599 | line-height: 1.428571429; 600 | } 601 | dt { 602 | font-weight: bold; 603 | } 604 | dd { 605 | margin-left: 0; 606 | } 607 | @media (min-width: 768px) { 608 | .dl-horizontal dt { 609 | float: left; 610 | width: 160px; 611 | overflow: hidden; 612 | clear: left; 613 | text-align: right; 614 | text-overflow: ellipsis; 615 | white-space: nowrap; 616 | } 617 | .dl-horizontal dd { 618 | margin-left: 180px; 619 | } 620 | } 621 | abbr[title], 622 | abbr[data-original-title] { 623 | cursor: help; 624 | border-bottom: 1px dotted #999; 625 | } 626 | .initialism { 627 | font-size: 90%; 628 | text-transform: uppercase; 629 | } 630 | blockquote { 631 | padding: 10px 20px; 632 | margin: 0 0 20px; 633 | font-size: 17.5px; 634 | border-left: 5px solid #eee; 635 | } 636 | blockquote p:last-child, 637 | blockquote ul:last-child, 638 | blockquote ol:last-child { 639 | margin-bottom: 0; 640 | } 641 | blockquote footer, 642 | blockquote small, 643 | blockquote .small { 644 | display: block; 645 | font-size: 80%; 646 | line-height: 1.428571429; 647 | color: #999; 648 | } 649 | blockquote footer:before, 650 | blockquote small:before, 651 | blockquote .small:before { 652 | content: '\2014 \00A0'; 653 | } 654 | .blockquote-reverse, 655 | blockquote.pull-right { 656 | padding-right: 15px; 657 | padding-left: 0; 658 | text-align: right; 659 | border-right: 5px solid #eee; 660 | border-left: 0; 661 | } 662 | .blockquote-reverse footer:before, 663 | blockquote.pull-right footer:before, 664 | .blockquote-reverse small:before, 665 | blockquote.pull-right small:before, 666 | .blockquote-reverse .small:before, 667 | blockquote.pull-right .small:before { 668 | content: ''; 669 | } 670 | .blockquote-reverse footer:after, 671 | blockquote.pull-right footer:after, 672 | .blockquote-reverse small:after, 673 | blockquote.pull-right small:after, 674 | .blockquote-reverse .small:after, 675 | blockquote.pull-right .small:after { 676 | content: '\00A0 \2014'; 677 | } 678 | blockquote:before, 679 | blockquote:after { 680 | content: ""; 681 | } 682 | address { 683 | margin-bottom: 20px; 684 | font-style: normal; 685 | line-height: 1.428571429; 686 | } 687 | code, 688 | kbd, 689 | pre, 690 | samp { 691 | font-family: Menlo, Monaco, Consolas, "Courier New", monospace; 692 | } 693 | code { 694 | padding: 2px 4px; 695 | font-size: 90%; 696 | color: #c7254e; 697 | white-space: nowrap; 698 | background-color: #f9f2f4; 699 | border-radius: 4px; 700 | } 701 | kbd { 702 | padding: 2px 4px; 703 | font-size: 90%; 704 | color: #fff; 705 | background-color: #333; 706 | border-radius: 3px; 707 | box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); 708 | } 709 | pre { 710 | display: block; 711 | padding: 9.5px; 712 | margin: 0 0 10px; 713 | font-size: 13px; 714 | line-height: 1.428571429; 715 | color: #333; 716 | word-break: break-all; 717 | word-wrap: break-word; 718 | background-color: #f5f5f5; 719 | border: 1px solid #ccc; 720 | border-radius: 4px; 721 | } 722 | pre code { 723 | padding: 0; 724 | font-size: inherit; 725 | color: inherit; 726 | white-space: pre-wrap; 727 | background-color: transparent; 728 | border-radius: 0; 729 | } 730 | .pre-scrollable { 731 | max-height: 340px; 732 | overflow-y: scroll; 733 | } 734 | .container { 735 | padding-right: 15px; 736 | padding-left: 15px; 737 | margin-right: auto; 738 | margin-left: auto; 739 | } 740 | @media (min-width: 768px) { 741 | .container { 742 | width: 750px; 743 | } 744 | } 745 | @media (min-width: 992px) { 746 | .container { 747 | width: 970px; 748 | } 749 | } 750 | @media (min-width: 1200px) { 751 | .container { 752 | width: 1170px; 753 | } 754 | } 755 | .container-fluid { 756 | padding-right: 15px; 757 | padding-left: 15px; 758 | margin-right: auto; 759 | margin-left: auto; 760 | } 761 | .row { 762 | margin-right: -15px; 763 | margin-left: -15px; 764 | } 765 | .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 { 766 | position: relative; 767 | min-height: 1px; 768 | padding-right: 15px; 769 | padding-left: 15px; 770 | } 771 | .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 { 772 | float: left; 773 | } 774 | .col-xs-12 { 775 | width: 100%; 776 | } 777 | .col-xs-11 { 778 | width: 91.66666666666666%; 779 | } 780 | .col-xs-10 { 781 | width: 83.33333333333334%; 782 | } 783 | .col-xs-9 { 784 | width: 75%; 785 | } 786 | .col-xs-8 { 787 | width: 66.66666666666666%; 788 | } 789 | .col-xs-7 { 790 | width: 58.333333333333336%; 791 | } 792 | .col-xs-6 { 793 | width: 50%; 794 | } 795 | .col-xs-5 { 796 | width: 41.66666666666667%; 797 | } 798 | .col-xs-4 { 799 | width: 33.33333333333333%; 800 | } 801 | .col-xs-3 { 802 | width: 25%; 803 | } 804 | .col-xs-2 { 805 | width: 16.666666666666664%; 806 | } 807 | .col-xs-1 { 808 | width: 8.333333333333332%; 809 | } 810 | .col-xs-pull-12 { 811 | right: 100%; 812 | } 813 | .col-xs-pull-11 { 814 | right: 91.66666666666666%; 815 | } 816 | .col-xs-pull-10 { 817 | right: 83.33333333333334%; 818 | } 819 | .col-xs-pull-9 { 820 | right: 75%; 821 | } 822 | .col-xs-pull-8 { 823 | right: 66.66666666666666%; 824 | } 825 | .col-xs-pull-7 { 826 | right: 58.333333333333336%; 827 | } 828 | .col-xs-pull-6 { 829 | right: 50%; 830 | } 831 | .col-xs-pull-5 { 832 | right: 41.66666666666667%; 833 | } 834 | .col-xs-pull-4 { 835 | right: 33.33333333333333%; 836 | } 837 | .col-xs-pull-3 { 838 | right: 25%; 839 | } 840 | .col-xs-pull-2 { 841 | right: 16.666666666666664%; 842 | } 843 | .col-xs-pull-1 { 844 | right: 8.333333333333332%; 845 | } 846 | .col-xs-pull-0 { 847 | right: 0; 848 | } 849 | .col-xs-push-12 { 850 | left: 100%; 851 | } 852 | .col-xs-push-11 { 853 | left: 91.66666666666666%; 854 | } 855 | .col-xs-push-10 { 856 | left: 83.33333333333334%; 857 | } 858 | .col-xs-push-9 { 859 | left: 75%; 860 | } 861 | .col-xs-push-8 { 862 | left: 66.66666666666666%; 863 | } 864 | .col-xs-push-7 { 865 | left: 58.333333333333336%; 866 | } 867 | .col-xs-push-6 { 868 | left: 50%; 869 | } 870 | .col-xs-push-5 { 871 | left: 41.66666666666667%; 872 | } 873 | .col-xs-push-4 { 874 | left: 33.33333333333333%; 875 | } 876 | .col-xs-push-3 { 877 | left: 25%; 878 | } 879 | .col-xs-push-2 { 880 | left: 16.666666666666664%; 881 | } 882 | .col-xs-push-1 { 883 | left: 8.333333333333332%; 884 | } 885 | .col-xs-push-0 { 886 | left: 0; 887 | } 888 | .col-xs-offset-12 { 889 | margin-left: 100%; 890 | } 891 | .col-xs-offset-11 { 892 | margin-left: 91.66666666666666%; 893 | } 894 | .col-xs-offset-10 { 895 | margin-left: 83.33333333333334%; 896 | } 897 | .col-xs-offset-9 { 898 | margin-left: 75%; 899 | } 900 | .col-xs-offset-8 { 901 | margin-left: 66.66666666666666%; 902 | } 903 | .col-xs-offset-7 { 904 | margin-left: 58.333333333333336%; 905 | } 906 | .col-xs-offset-6 { 907 | margin-left: 50%; 908 | } 909 | .col-xs-offset-5 { 910 | margin-left: 41.66666666666667%; 911 | } 912 | .col-xs-offset-4 { 913 | margin-left: 33.33333333333333%; 914 | } 915 | .col-xs-offset-3 { 916 | margin-left: 25%; 917 | } 918 | .col-xs-offset-2 { 919 | margin-left: 16.666666666666664%; 920 | } 921 | .col-xs-offset-1 { 922 | margin-left: 8.333333333333332%; 923 | } 924 | .col-xs-offset-0 { 925 | margin-left: 0; 926 | } 927 | @media (min-width: 768px) { 928 | .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 { 929 | float: left; 930 | } 931 | .col-sm-12 { 932 | width: 100%; 933 | } 934 | .col-sm-11 { 935 | width: 91.66666666666666%; 936 | } 937 | .col-sm-10 { 938 | width: 83.33333333333334%; 939 | } 940 | .col-sm-9 { 941 | width: 75%; 942 | } 943 | .col-sm-8 { 944 | width: 66.66666666666666%; 945 | } 946 | .col-sm-7 { 947 | width: 58.333333333333336%; 948 | } 949 | .col-sm-6 { 950 | width: 50%; 951 | } 952 | .col-sm-5 { 953 | width: 41.66666666666667%; 954 | } 955 | .col-sm-4 { 956 | width: 33.33333333333333%; 957 | } 958 | .col-sm-3 { 959 | width: 25%; 960 | } 961 | .col-sm-2 { 962 | width: 16.666666666666664%; 963 | } 964 | .col-sm-1 { 965 | width: 8.333333333333332%; 966 | } 967 | .col-sm-pull-12 { 968 | right: 100%; 969 | } 970 | .col-sm-pull-11 { 971 | right: 91.66666666666666%; 972 | } 973 | .col-sm-pull-10 { 974 | right: 83.33333333333334%; 975 | } 976 | .col-sm-pull-9 { 977 | right: 75%; 978 | } 979 | .col-sm-pull-8 { 980 | right: 66.66666666666666%; 981 | } 982 | .col-sm-pull-7 { 983 | right: 58.333333333333336%; 984 | } 985 | .col-sm-pull-6 { 986 | right: 50%; 987 | } 988 | .col-sm-pull-5 { 989 | right: 41.66666666666667%; 990 | } 991 | .col-sm-pull-4 { 992 | right: 33.33333333333333%; 993 | } 994 | .col-sm-pull-3 { 995 | right: 25%; 996 | } 997 | .col-sm-pull-2 { 998 | right: 16.666666666666664%; 999 | } 1000 | .col-sm-pull-1 { 1001 | right: 8.333333333333332%; 1002 | } 1003 | .col-sm-pull-0 { 1004 | right: 0; 1005 | } 1006 | .col-sm-push-12 { 1007 | left: 100%; 1008 | } 1009 | .col-sm-push-11 { 1010 | left: 91.66666666666666%; 1011 | } 1012 | .col-sm-push-10 { 1013 | left: 83.33333333333334%; 1014 | } 1015 | .col-sm-push-9 { 1016 | left: 75%; 1017 | } 1018 | .col-sm-push-8 { 1019 | left: 66.66666666666666%; 1020 | } 1021 | .col-sm-push-7 { 1022 | left: 58.333333333333336%; 1023 | } 1024 | .col-sm-push-6 { 1025 | left: 50%; 1026 | } 1027 | .col-sm-push-5 { 1028 | left: 41.66666666666667%; 1029 | } 1030 | .col-sm-push-4 { 1031 | left: 33.33333333333333%; 1032 | } 1033 | .col-sm-push-3 { 1034 | left: 25%; 1035 | } 1036 | .col-sm-push-2 { 1037 | left: 16.666666666666664%; 1038 | } 1039 | .col-sm-push-1 { 1040 | left: 8.333333333333332%; 1041 | } 1042 | .col-sm-push-0 { 1043 | left: 0; 1044 | } 1045 | .col-sm-offset-12 { 1046 | margin-left: 100%; 1047 | } 1048 | .col-sm-offset-11 { 1049 | margin-left: 91.66666666666666%; 1050 | } 1051 | .col-sm-offset-10 { 1052 | margin-left: 83.33333333333334%; 1053 | } 1054 | .col-sm-offset-9 { 1055 | margin-left: 75%; 1056 | } 1057 | .col-sm-offset-8 { 1058 | margin-left: 66.66666666666666%; 1059 | } 1060 | .col-sm-offset-7 { 1061 | margin-left: 58.333333333333336%; 1062 | } 1063 | .col-sm-offset-6 { 1064 | margin-left: 50%; 1065 | } 1066 | .col-sm-offset-5 { 1067 | margin-left: 41.66666666666667%; 1068 | } 1069 | .col-sm-offset-4 { 1070 | margin-left: 33.33333333333333%; 1071 | } 1072 | .col-sm-offset-3 { 1073 | margin-left: 25%; 1074 | } 1075 | .col-sm-offset-2 { 1076 | margin-left: 16.666666666666664%; 1077 | } 1078 | .col-sm-offset-1 { 1079 | margin-left: 8.333333333333332%; 1080 | } 1081 | .col-sm-offset-0 { 1082 | margin-left: 0; 1083 | } 1084 | } 1085 | @media (min-width: 992px) { 1086 | .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 { 1087 | float: left; 1088 | } 1089 | .col-md-12 { 1090 | width: 100%; 1091 | } 1092 | .col-md-11 { 1093 | width: 91.66666666666666%; 1094 | } 1095 | .col-md-10 { 1096 | width: 83.33333333333334%; 1097 | } 1098 | .col-md-9 { 1099 | width: 75%; 1100 | } 1101 | .col-md-8 { 1102 | width: 66.66666666666666%; 1103 | } 1104 | .col-md-7 { 1105 | width: 58.333333333333336%; 1106 | } 1107 | .col-md-6 { 1108 | width: 50%; 1109 | } 1110 | .col-md-5 { 1111 | width: 41.66666666666667%; 1112 | } 1113 | .col-md-4 { 1114 | width: 33.33333333333333%; 1115 | } 1116 | .col-md-3 { 1117 | width: 25%; 1118 | } 1119 | .col-md-2 { 1120 | width: 16.666666666666664%; 1121 | } 1122 | .col-md-1 { 1123 | width: 8.333333333333332%; 1124 | } 1125 | .col-md-pull-12 { 1126 | right: 100%; 1127 | } 1128 | .col-md-pull-11 { 1129 | right: 91.66666666666666%; 1130 | } 1131 | .col-md-pull-10 { 1132 | right: 83.33333333333334%; 1133 | } 1134 | .col-md-pull-9 { 1135 | right: 75%; 1136 | } 1137 | .col-md-pull-8 { 1138 | right: 66.66666666666666%; 1139 | } 1140 | .col-md-pull-7 { 1141 | right: 58.333333333333336%; 1142 | } 1143 | .col-md-pull-6 { 1144 | right: 50%; 1145 | } 1146 | .col-md-pull-5 { 1147 | right: 41.66666666666667%; 1148 | } 1149 | .col-md-pull-4 { 1150 | right: 33.33333333333333%; 1151 | } 1152 | .col-md-pull-3 { 1153 | right: 25%; 1154 | } 1155 | .col-md-pull-2 { 1156 | right: 16.666666666666664%; 1157 | } 1158 | .col-md-pull-1 { 1159 | right: 8.333333333333332%; 1160 | } 1161 | .col-md-pull-0 { 1162 | right: 0; 1163 | } 1164 | .col-md-push-12 { 1165 | left: 100%; 1166 | } 1167 | .col-md-push-11 { 1168 | left: 91.66666666666666%; 1169 | } 1170 | .col-md-push-10 { 1171 | left: 83.33333333333334%; 1172 | } 1173 | .col-md-push-9 { 1174 | left: 75%; 1175 | } 1176 | .col-md-push-8 { 1177 | left: 66.66666666666666%; 1178 | } 1179 | .col-md-push-7 { 1180 | left: 58.333333333333336%; 1181 | } 1182 | .col-md-push-6 { 1183 | left: 50%; 1184 | } 1185 | .col-md-push-5 { 1186 | left: 41.66666666666667%; 1187 | } 1188 | .col-md-push-4 { 1189 | left: 33.33333333333333%; 1190 | } 1191 | .col-md-push-3 { 1192 | left: 25%; 1193 | } 1194 | .col-md-push-2 { 1195 | left: 16.666666666666664%; 1196 | } 1197 | .col-md-push-1 { 1198 | left: 8.333333333333332%; 1199 | } 1200 | .col-md-push-0 { 1201 | left: 0; 1202 | } 1203 | .col-md-offset-12 { 1204 | margin-left: 100%; 1205 | } 1206 | .col-md-offset-11 { 1207 | margin-left: 91.66666666666666%; 1208 | } 1209 | .col-md-offset-10 { 1210 | margin-left: 83.33333333333334%; 1211 | } 1212 | .col-md-offset-9 { 1213 | margin-left: 75%; 1214 | } 1215 | .col-md-offset-8 { 1216 | margin-left: 66.66666666666666%; 1217 | } 1218 | .col-md-offset-7 { 1219 | margin-left: 58.333333333333336%; 1220 | } 1221 | .col-md-offset-6 { 1222 | margin-left: 50%; 1223 | } 1224 | .col-md-offset-5 { 1225 | margin-left: 41.66666666666667%; 1226 | } 1227 | .col-md-offset-4 { 1228 | margin-left: 33.33333333333333%; 1229 | } 1230 | .col-md-offset-3 { 1231 | margin-left: 25%; 1232 | } 1233 | .col-md-offset-2 { 1234 | margin-left: 16.666666666666664%; 1235 | } 1236 | .col-md-offset-1 { 1237 | margin-left: 8.333333333333332%; 1238 | } 1239 | .col-md-offset-0 { 1240 | margin-left: 0; 1241 | } 1242 | } 1243 | @media (min-width: 1200px) { 1244 | .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 { 1245 | float: left; 1246 | } 1247 | .col-lg-12 { 1248 | width: 100%; 1249 | } 1250 | .col-lg-11 { 1251 | width: 91.66666666666666%; 1252 | } 1253 | .col-lg-10 { 1254 | width: 83.33333333333334%; 1255 | } 1256 | .col-lg-9 { 1257 | width: 75%; 1258 | } 1259 | .col-lg-8 { 1260 | width: 66.66666666666666%; 1261 | } 1262 | .col-lg-7 { 1263 | width: 58.333333333333336%; 1264 | } 1265 | .col-lg-6 { 1266 | width: 50%; 1267 | } 1268 | .col-lg-5 { 1269 | width: 41.66666666666667%; 1270 | } 1271 | .col-lg-4 { 1272 | width: 33.33333333333333%; 1273 | } 1274 | .col-lg-3 { 1275 | width: 25%; 1276 | } 1277 | .col-lg-2 { 1278 | width: 16.666666666666664%; 1279 | } 1280 | .col-lg-1 { 1281 | width: 8.333333333333332%; 1282 | } 1283 | .col-lg-pull-12 { 1284 | right: 100%; 1285 | } 1286 | .col-lg-pull-11 { 1287 | right: 91.66666666666666%; 1288 | } 1289 | .col-lg-pull-10 { 1290 | right: 83.33333333333334%; 1291 | } 1292 | .col-lg-pull-9 { 1293 | right: 75%; 1294 | } 1295 | .col-lg-pull-8 { 1296 | right: 66.66666666666666%; 1297 | } 1298 | .col-lg-pull-7 { 1299 | right: 58.333333333333336%; 1300 | } 1301 | .col-lg-pull-6 { 1302 | right: 50%; 1303 | } 1304 | .col-lg-pull-5 { 1305 | right: 41.66666666666667%; 1306 | } 1307 | .col-lg-pull-4 { 1308 | right: 33.33333333333333%; 1309 | } 1310 | .col-lg-pull-3 { 1311 | right: 25%; 1312 | } 1313 | .col-lg-pull-2 { 1314 | right: 16.666666666666664%; 1315 | } 1316 | .col-lg-pull-1 { 1317 | right: 8.333333333333332%; 1318 | } 1319 | .col-lg-pull-0 { 1320 | right: 0; 1321 | } 1322 | .col-lg-push-12 { 1323 | left: 100%; 1324 | } 1325 | .col-lg-push-11 { 1326 | left: 91.66666666666666%; 1327 | } 1328 | .col-lg-push-10 { 1329 | left: 83.33333333333334%; 1330 | } 1331 | .col-lg-push-9 { 1332 | left: 75%; 1333 | } 1334 | .col-lg-push-8 { 1335 | left: 66.66666666666666%; 1336 | } 1337 | .col-lg-push-7 { 1338 | left: 58.333333333333336%; 1339 | } 1340 | .col-lg-push-6 { 1341 | left: 50%; 1342 | } 1343 | .col-lg-push-5 { 1344 | left: 41.66666666666667%; 1345 | } 1346 | .col-lg-push-4 { 1347 | left: 33.33333333333333%; 1348 | } 1349 | .col-lg-push-3 { 1350 | left: 25%; 1351 | } 1352 | .col-lg-push-2 { 1353 | left: 16.666666666666664%; 1354 | } 1355 | .col-lg-push-1 { 1356 | left: 8.333333333333332%; 1357 | } 1358 | .col-lg-push-0 { 1359 | left: 0; 1360 | } 1361 | .col-lg-offset-12 { 1362 | margin-left: 100%; 1363 | } 1364 | .col-lg-offset-11 { 1365 | margin-left: 91.66666666666666%; 1366 | } 1367 | .col-lg-offset-10 { 1368 | margin-left: 83.33333333333334%; 1369 | } 1370 | .col-lg-offset-9 { 1371 | margin-left: 75%; 1372 | } 1373 | .col-lg-offset-8 { 1374 | margin-left: 66.66666666666666%; 1375 | } 1376 | .col-lg-offset-7 { 1377 | margin-left: 58.333333333333336%; 1378 | } 1379 | .col-lg-offset-6 { 1380 | margin-left: 50%; 1381 | } 1382 | .col-lg-offset-5 { 1383 | margin-left: 41.66666666666667%; 1384 | } 1385 | .col-lg-offset-4 { 1386 | margin-left: 33.33333333333333%; 1387 | } 1388 | .col-lg-offset-3 { 1389 | margin-left: 25%; 1390 | } 1391 | .col-lg-offset-2 { 1392 | margin-left: 16.666666666666664%; 1393 | } 1394 | .col-lg-offset-1 { 1395 | margin-left: 8.333333333333332%; 1396 | } 1397 | .col-lg-offset-0 { 1398 | margin-left: 0; 1399 | } 1400 | } 1401 | table { 1402 | max-width: 100%; 1403 | background-color: transparent; 1404 | } 1405 | th { 1406 | text-align: left; 1407 | } 1408 | .table { 1409 | width: 100%; 1410 | margin-bottom: 20px; 1411 | } 1412 | .table > thead > tr > th, 1413 | .table > tbody > tr > th, 1414 | .table > tfoot > tr > th, 1415 | .table > thead > tr > td, 1416 | .table > tbody > tr > td, 1417 | .table > tfoot > tr > td { 1418 | padding: 8px; 1419 | line-height: 1.428571429; 1420 | vertical-align: top; 1421 | border-top: 1px solid #ddd; 1422 | } 1423 | .table > thead > tr > th { 1424 | vertical-align: bottom; 1425 | border-bottom: 2px solid #ddd; 1426 | } 1427 | .table > caption + thead > tr:first-child > th, 1428 | .table > colgroup + thead > tr:first-child > th, 1429 | .table > thead:first-child > tr:first-child > th, 1430 | .table > caption + thead > tr:first-child > td, 1431 | .table > colgroup + thead > tr:first-child > td, 1432 | .table > thead:first-child > tr:first-child > td { 1433 | border-top: 0; 1434 | } 1435 | .table > tbody + tbody { 1436 | border-top: 2px solid #ddd; 1437 | } 1438 | .table .table { 1439 | background-color: #fff; 1440 | } 1441 | .table-condensed > thead > tr > th, 1442 | .table-condensed > tbody > tr > th, 1443 | .table-condensed > tfoot > tr > th, 1444 | .table-condensed > thead > tr > td, 1445 | .table-condensed > tbody > tr > td, 1446 | .table-condensed > tfoot > tr > td { 1447 | padding: 5px; 1448 | } 1449 | .table-bordered { 1450 | border: 1px solid #ddd; 1451 | } 1452 | .table-bordered > thead > tr > th, 1453 | .table-bordered > tbody > tr > th, 1454 | .table-bordered > tfoot > tr > th, 1455 | .table-bordered > thead > tr > td, 1456 | .table-bordered > tbody > tr > td, 1457 | .table-bordered > tfoot > tr > td { 1458 | border: 1px solid #ddd; 1459 | } 1460 | .table-bordered > thead > tr > th, 1461 | .table-bordered > thead > tr > td { 1462 | border-bottom-width: 2px; 1463 | } 1464 | .table-striped > tbody > tr:nth-child(odd) > td, 1465 | .table-striped > tbody > tr:nth-child(odd) > th { 1466 | background-color: #f9f9f9; 1467 | } 1468 | .table-hover > tbody > tr:hover > td, 1469 | .table-hover > tbody > tr:hover > th { 1470 | background-color: #f5f5f5; 1471 | } 1472 | table col[class*="col-"] { 1473 | position: static; 1474 | display: table-column; 1475 | float: none; 1476 | } 1477 | table td[class*="col-"], 1478 | table th[class*="col-"] { 1479 | position: static; 1480 | display: table-cell; 1481 | float: none; 1482 | } 1483 | .table > thead > tr > td.active, 1484 | .table > tbody > tr > td.active, 1485 | .table > tfoot > tr > td.active, 1486 | .table > thead > tr > th.active, 1487 | .table > tbody > tr > th.active, 1488 | .table > tfoot > tr > th.active, 1489 | .table > thead > tr.active > td, 1490 | .table > tbody > tr.active > td, 1491 | .table > tfoot > tr.active > td, 1492 | .table > thead > tr.active > th, 1493 | .table > tbody > tr.active > th, 1494 | .table > tfoot > tr.active > th { 1495 | background-color: #f5f5f5; 1496 | } 1497 | .table-hover > tbody > tr > td.active:hover, 1498 | .table-hover > tbody > tr > th.active:hover, 1499 | .table-hover > tbody > tr.active:hover > td, 1500 | .table-hover > tbody > tr.active:hover > th { 1501 | background-color: #e8e8e8; 1502 | } 1503 | .table > thead > tr > td.success, 1504 | .table > tbody > tr > td.success, 1505 | .table > tfoot > tr > td.success, 1506 | .table > thead > tr > th.success, 1507 | .table > tbody > tr > th.success, 1508 | .table > tfoot > tr > th.success, 1509 | .table > thead > tr.success > td, 1510 | .table > tbody > tr.success > td, 1511 | .table > tfoot > tr.success > td, 1512 | .table > thead > tr.success > th, 1513 | .table > tbody > tr.success > th, 1514 | .table > tfoot > tr.success > th { 1515 | background-color: #dff0d8; 1516 | } 1517 | .table-hover > tbody > tr > td.success:hover, 1518 | .table-hover > tbody > tr > th.success:hover, 1519 | .table-hover > tbody > tr.success:hover > td, 1520 | .table-hover > tbody > tr.success:hover > th { 1521 | background-color: #d0e9c6; 1522 | } 1523 | .table > thead > tr > td.info, 1524 | .table > tbody > tr > td.info, 1525 | .table > tfoot > tr > td.info, 1526 | .table > thead > tr > th.info, 1527 | .table > tbody > tr > th.info, 1528 | .table > tfoot > tr > th.info, 1529 | .table > thead > tr.info > td, 1530 | .table > tbody > tr.info > td, 1531 | .table > tfoot > tr.info > td, 1532 | .table > thead > tr.info > th, 1533 | .table > tbody > tr.info > th, 1534 | .table > tfoot > tr.info > th { 1535 | background-color: #d9edf7; 1536 | } 1537 | .table-hover > tbody > tr > td.info:hover, 1538 | .table-hover > tbody > tr > th.info:hover, 1539 | .table-hover > tbody > tr.info:hover > td, 1540 | .table-hover > tbody > tr.info:hover > th { 1541 | background-color: #c4e3f3; 1542 | } 1543 | .table > thead > tr > td.warning, 1544 | .table > tbody > tr > td.warning, 1545 | .table > tfoot > tr > td.warning, 1546 | .table > thead > tr > th.warning, 1547 | .table > tbody > tr > th.warning, 1548 | .table > tfoot > tr > th.warning, 1549 | .table > thead > tr.warning > td, 1550 | .table > tbody > tr.warning > td, 1551 | .table > tfoot > tr.warning > td, 1552 | .table > thead > tr.warning > th, 1553 | .table > tbody > tr.warning > th, 1554 | .table > tfoot > tr.warning > th { 1555 | background-color: #fcf8e3; 1556 | } 1557 | .table-hover > tbody > tr > td.warning:hover, 1558 | .table-hover > tbody > tr > th.warning:hover, 1559 | .table-hover > tbody > tr.warning:hover > td, 1560 | .table-hover > tbody > tr.warning:hover > th { 1561 | background-color: #faf2cc; 1562 | } 1563 | .table > thead > tr > td.danger, 1564 | .table > tbody > tr > td.danger, 1565 | .table > tfoot > tr > td.danger, 1566 | .table > thead > tr > th.danger, 1567 | .table > tbody > tr > th.danger, 1568 | .table > tfoot > tr > th.danger, 1569 | .table > thead > tr.danger > td, 1570 | .table > tbody > tr.danger > td, 1571 | .table > tfoot > tr.danger > td, 1572 | .table > thead > tr.danger > th, 1573 | .table > tbody > tr.danger > th, 1574 | .table > tfoot > tr.danger > th { 1575 | background-color: #f2dede; 1576 | } 1577 | .table-hover > tbody > tr > td.danger:hover, 1578 | .table-hover > tbody > tr > th.danger:hover, 1579 | .table-hover > tbody > tr.danger:hover > td, 1580 | .table-hover > tbody > tr.danger:hover > th { 1581 | background-color: #ebcccc; 1582 | } 1583 | @media (max-width: 767px) { 1584 | .table-responsive { 1585 | width: 100%; 1586 | margin-bottom: 15px; 1587 | overflow-x: scroll; 1588 | overflow-y: hidden; 1589 | -webkit-overflow-scrolling: touch; 1590 | -ms-overflow-style: -ms-autohiding-scrollbar; 1591 | border: 1px solid #ddd; 1592 | } 1593 | .table-responsive > .table { 1594 | margin-bottom: 0; 1595 | } 1596 | .table-responsive > .table > thead > tr > th, 1597 | .table-responsive > .table > tbody > tr > th, 1598 | .table-responsive > .table > tfoot > tr > th, 1599 | .table-responsive > .table > thead > tr > td, 1600 | .table-responsive > .table > tbody > tr > td, 1601 | .table-responsive > .table > tfoot > tr > td { 1602 | white-space: nowrap; 1603 | } 1604 | .table-responsive > .table-bordered { 1605 | border: 0; 1606 | } 1607 | .table-responsive > .table-bordered > thead > tr > th:first-child, 1608 | .table-responsive > .table-bordered > tbody > tr > th:first-child, 1609 | .table-responsive > .table-bordered > tfoot > tr > th:first-child, 1610 | .table-responsive > .table-bordered > thead > tr > td:first-child, 1611 | .table-responsive > .table-bordered > tbody > tr > td:first-child, 1612 | .table-responsive > .table-bordered > tfoot > tr > td:first-child { 1613 | border-left: 0; 1614 | } 1615 | .table-responsive > .table-bordered > thead > tr > th:last-child, 1616 | .table-responsive > .table-bordered > tbody > tr > th:last-child, 1617 | .table-responsive > .table-bordered > tfoot > tr > th:last-child, 1618 | .table-responsive > .table-bordered > thead > tr > td:last-child, 1619 | .table-responsive > .table-bordered > tbody > tr > td:last-child, 1620 | .table-responsive > .table-bordered > tfoot > tr > td:last-child { 1621 | border-right: 0; 1622 | } 1623 | .table-responsive > .table-bordered > tbody > tr:last-child > th, 1624 | .table-responsive > .table-bordered > tfoot > tr:last-child > th, 1625 | .table-responsive > .table-bordered > tbody > tr:last-child > td, 1626 | .table-responsive > .table-bordered > tfoot > tr:last-child > td { 1627 | border-bottom: 0; 1628 | } 1629 | } 1630 | fieldset { 1631 | min-width: 0; 1632 | padding: 0; 1633 | margin: 0; 1634 | border: 0; 1635 | } 1636 | legend { 1637 | display: block; 1638 | width: 100%; 1639 | padding: 0; 1640 | margin-bottom: 20px; 1641 | font-size: 21px; 1642 | line-height: inherit; 1643 | color: #333; 1644 | border: 0; 1645 | border-bottom: 1px solid #e5e5e5; 1646 | } 1647 | label { 1648 | display: inline-block; 1649 | margin-bottom: 5px; 1650 | font-weight: bold; 1651 | } 1652 | input[type="search"] { 1653 | -webkit-box-sizing: border-box; 1654 | -moz-box-sizing: border-box; 1655 | box-sizing: border-box; 1656 | } 1657 | input[type="radio"], 1658 | input[type="checkbox"] { 1659 | margin: 4px 0 0; 1660 | margin-top: 1px \9; 1661 | /* IE8-9 */ 1662 | line-height: normal; 1663 | } 1664 | input[type="file"] { 1665 | display: block; 1666 | } 1667 | input[type="range"] { 1668 | display: block; 1669 | width: 100%; 1670 | } 1671 | select[multiple], 1672 | select[size] { 1673 | height: auto; 1674 | } 1675 | input[type="file"]:focus, 1676 | input[type="radio"]:focus, 1677 | input[type="checkbox"]:focus { 1678 | outline: thin dotted; 1679 | outline: 5px auto -webkit-focus-ring-color; 1680 | outline-offset: -2px; 1681 | } 1682 | output { 1683 | display: block; 1684 | padding-top: 7px; 1685 | font-size: 14px; 1686 | line-height: 1.428571429; 1687 | color: #555; 1688 | } 1689 | .form-control { 1690 | display: block; 1691 | width: 100%; 1692 | height: 34px; 1693 | padding: 6px 12px; 1694 | font-size: 14px; 1695 | line-height: 1.428571429; 1696 | color: #555; 1697 | background-color: #fff; 1698 | background-image: none; 1699 | border: 1px solid #ccc; 1700 | border-radius: 4px; 1701 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); 1702 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); 1703 | -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; 1704 | transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; 1705 | } 1706 | .form-control:focus { 1707 | border-color: #66afe9; 1708 | outline: 0; 1709 | -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); 1710 | box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); 1711 | } 1712 | .form-control:-moz-placeholder { 1713 | color: #999; 1714 | } 1715 | .form-control::-moz-placeholder { 1716 | color: #999; 1717 | opacity: 1; 1718 | } 1719 | .form-control:-ms-input-placeholder { 1720 | color: #999; 1721 | } 1722 | .form-control::-webkit-input-placeholder { 1723 | color: #999; 1724 | } 1725 | .form-control[disabled], 1726 | .form-control[readonly], 1727 | fieldset[disabled] .form-control { 1728 | cursor: not-allowed; 1729 | background-color: #eee; 1730 | opacity: 1; 1731 | } 1732 | textarea.form-control { 1733 | height: auto; 1734 | } 1735 | input[type="date"] { 1736 | line-height: 34px; 1737 | } 1738 | .form-group { 1739 | margin-bottom: 15px; 1740 | } 1741 | .radio, 1742 | .checkbox { 1743 | display: block; 1744 | min-height: 20px; 1745 | padding-left: 20px; 1746 | margin-top: 10px; 1747 | margin-bottom: 10px; 1748 | } 1749 | .radio label, 1750 | .checkbox label { 1751 | display: inline; 1752 | font-weight: normal; 1753 | cursor: pointer; 1754 | } 1755 | .radio input[type="radio"], 1756 | .radio-inline input[type="radio"], 1757 | .checkbox input[type="checkbox"], 1758 | .checkbox-inline input[type="checkbox"] { 1759 | float: left; 1760 | margin-left: -20px; 1761 | } 1762 | .radio + .radio, 1763 | .checkbox + .checkbox { 1764 | margin-top: -5px; 1765 | } 1766 | .radio-inline, 1767 | .checkbox-inline { 1768 | display: inline-block; 1769 | padding-left: 20px; 1770 | margin-bottom: 0; 1771 | font-weight: normal; 1772 | vertical-align: middle; 1773 | cursor: pointer; 1774 | } 1775 | .radio-inline + .radio-inline, 1776 | .checkbox-inline + .checkbox-inline { 1777 | margin-top: 0; 1778 | margin-left: 10px; 1779 | } 1780 | input[type="radio"][disabled], 1781 | input[type="checkbox"][disabled], 1782 | .radio[disabled], 1783 | .radio-inline[disabled], 1784 | .checkbox[disabled], 1785 | .checkbox-inline[disabled], 1786 | fieldset[disabled] input[type="radio"], 1787 | fieldset[disabled] input[type="checkbox"], 1788 | fieldset[disabled] .radio, 1789 | fieldset[disabled] .radio-inline, 1790 | fieldset[disabled] .checkbox, 1791 | fieldset[disabled] .checkbox-inline { 1792 | cursor: not-allowed; 1793 | } 1794 | .input-sm { 1795 | height: 30px; 1796 | padding: 5px 10px; 1797 | font-size: 12px; 1798 | line-height: 1.5; 1799 | border-radius: 3px; 1800 | } 1801 | select.input-sm { 1802 | height: 30px; 1803 | line-height: 30px; 1804 | } 1805 | textarea.input-sm, 1806 | select[multiple].input-sm { 1807 | height: auto; 1808 | } 1809 | .input-lg { 1810 | height: 46px; 1811 | padding: 10px 16px; 1812 | font-size: 18px; 1813 | line-height: 1.33; 1814 | border-radius: 6px; 1815 | } 1816 | select.input-lg { 1817 | height: 46px; 1818 | line-height: 46px; 1819 | } 1820 | textarea.input-lg, 1821 | select[multiple].input-lg { 1822 | height: auto; 1823 | } 1824 | .has-feedback { 1825 | position: relative; 1826 | } 1827 | .has-feedback .form-control { 1828 | padding-right: 42.5px; 1829 | } 1830 | .has-feedback .form-control-feedback { 1831 | position: absolute; 1832 | top: 25px; 1833 | right: 0; 1834 | display: block; 1835 | width: 34px; 1836 | height: 34px; 1837 | line-height: 34px; 1838 | text-align: center; 1839 | } 1840 | .has-success .help-block, 1841 | .has-success .control-label, 1842 | .has-success .radio, 1843 | .has-success .checkbox, 1844 | .has-success .radio-inline, 1845 | .has-success .checkbox-inline { 1846 | color: #3c763d; 1847 | } 1848 | .has-success .form-control { 1849 | border-color: #3c763d; 1850 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); 1851 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); 1852 | } 1853 | .has-success .form-control:focus { 1854 | border-color: #2b542c; 1855 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; 1856 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; 1857 | } 1858 | .has-success .input-group-addon { 1859 | color: #3c763d; 1860 | background-color: #dff0d8; 1861 | border-color: #3c763d; 1862 | } 1863 | .has-success .form-control-feedback { 1864 | color: #3c763d; 1865 | } 1866 | .has-warning .help-block, 1867 | .has-warning .control-label, 1868 | .has-warning .radio, 1869 | .has-warning .checkbox, 1870 | .has-warning .radio-inline, 1871 | .has-warning .checkbox-inline { 1872 | color: #8a6d3b; 1873 | } 1874 | .has-warning .form-control { 1875 | border-color: #8a6d3b; 1876 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); 1877 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); 1878 | } 1879 | .has-warning .form-control:focus { 1880 | border-color: #66512c; 1881 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; 1882 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; 1883 | } 1884 | .has-warning .input-group-addon { 1885 | color: #8a6d3b; 1886 | background-color: #fcf8e3; 1887 | border-color: #8a6d3b; 1888 | } 1889 | .has-warning .form-control-feedback { 1890 | color: #8a6d3b; 1891 | } 1892 | .has-error .help-block, 1893 | .has-error .control-label, 1894 | .has-error .radio, 1895 | .has-error .checkbox, 1896 | .has-error .radio-inline, 1897 | .has-error .checkbox-inline { 1898 | color: #a94442; 1899 | } 1900 | .has-error .form-control { 1901 | border-color: #a94442; 1902 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); 1903 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); 1904 | } 1905 | .has-error .form-control:focus { 1906 | border-color: #843534; 1907 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; 1908 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; 1909 | } 1910 | .has-error .input-group-addon { 1911 | color: #a94442; 1912 | background-color: #f2dede; 1913 | border-color: #a94442; 1914 | } 1915 | .has-error .form-control-feedback { 1916 | color: #a94442; 1917 | } 1918 | .form-control-static { 1919 | margin-bottom: 0; 1920 | } 1921 | .help-block { 1922 | display: block; 1923 | margin-top: 5px; 1924 | margin-bottom: 10px; 1925 | color: #737373; 1926 | } 1927 | @media (min-width: 768px) { 1928 | .form-inline .form-group { 1929 | display: inline-block; 1930 | margin-bottom: 0; 1931 | vertical-align: middle; 1932 | } 1933 | .form-inline .form-control { 1934 | display: inline-block; 1935 | width: auto; 1936 | vertical-align: middle; 1937 | } 1938 | .form-inline .control-label { 1939 | margin-bottom: 0; 1940 | vertical-align: middle; 1941 | } 1942 | .form-inline .radio, 1943 | .form-inline .checkbox { 1944 | display: inline-block; 1945 | padding-left: 0; 1946 | margin-top: 0; 1947 | margin-bottom: 0; 1948 | vertical-align: middle; 1949 | } 1950 | .form-inline .radio input[type="radio"], 1951 | .form-inline .checkbox input[type="checkbox"] { 1952 | float: none; 1953 | margin-left: 0; 1954 | } 1955 | .form-inline .has-feedback .form-control-feedback { 1956 | top: 0; 1957 | } 1958 | } 1959 | .form-horizontal .control-label, 1960 | .form-horizontal .radio, 1961 | .form-horizontal .checkbox, 1962 | .form-horizontal .radio-inline, 1963 | .form-horizontal .checkbox-inline { 1964 | padding-top: 7px; 1965 | margin-top: 0; 1966 | margin-bottom: 0; 1967 | } 1968 | .form-horizontal .radio, 1969 | .form-horizontal .checkbox { 1970 | min-height: 27px; 1971 | } 1972 | .form-horizontal .form-group { 1973 | margin-right: -15px; 1974 | margin-left: -15px; 1975 | } 1976 | .form-horizontal .form-control-static { 1977 | padding-top: 7px; 1978 | } 1979 | @media (min-width: 768px) { 1980 | .form-horizontal .control-label { 1981 | text-align: right; 1982 | } 1983 | } 1984 | .form-horizontal .has-feedback .form-control-feedback { 1985 | top: 0; 1986 | right: 15px; 1987 | } 1988 | .btn { 1989 | display: inline-block; 1990 | padding: 6px 12px; 1991 | margin-bottom: 0; 1992 | font-size: 14px; 1993 | font-weight: normal; 1994 | line-height: 1.428571429; 1995 | text-align: center; 1996 | white-space: nowrap; 1997 | vertical-align: middle; 1998 | cursor: pointer; 1999 | -webkit-user-select: none; 2000 | -moz-user-select: none; 2001 | -ms-user-select: none; 2002 | -o-user-select: none; 2003 | user-select: none; 2004 | background-image: none; 2005 | border: 1px solid transparent; 2006 | border-radius: 4px; 2007 | } 2008 | .btn:focus { 2009 | outline: thin dotted; 2010 | outline: 5px auto -webkit-focus-ring-color; 2011 | outline-offset: -2px; 2012 | } 2013 | .btn:hover, 2014 | .btn:focus { 2015 | color: #333; 2016 | text-decoration: none; 2017 | } 2018 | .btn:active, 2019 | .btn.active { 2020 | background-image: none; 2021 | outline: 0; 2022 | -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); 2023 | box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); 2024 | } 2025 | .btn.disabled, 2026 | .btn[disabled], 2027 | fieldset[disabled] .btn { 2028 | pointer-events: none; 2029 | cursor: not-allowed; 2030 | filter: alpha(opacity=65); 2031 | -webkit-box-shadow: none; 2032 | box-shadow: none; 2033 | opacity: .65; 2034 | } 2035 | .btn-default { 2036 | color: #333; 2037 | background-color: #fff; 2038 | border-color: #ccc; 2039 | } 2040 | .btn-default:hover, 2041 | .btn-default:focus, 2042 | .btn-default:active, 2043 | .btn-default.active, 2044 | .open .dropdown-toggle.btn-default { 2045 | color: #333; 2046 | background-color: #ebebeb; 2047 | border-color: #adadad; 2048 | } 2049 | .btn-default:active, 2050 | .btn-default.active, 2051 | .open .dropdown-toggle.btn-default { 2052 | background-image: none; 2053 | } 2054 | .btn-default.disabled, 2055 | .btn-default[disabled], 2056 | fieldset[disabled] .btn-default, 2057 | .btn-default.disabled:hover, 2058 | .btn-default[disabled]:hover, 2059 | fieldset[disabled] .btn-default:hover, 2060 | .btn-default.disabled:focus, 2061 | .btn-default[disabled]:focus, 2062 | fieldset[disabled] .btn-default:focus, 2063 | .btn-default.disabled:active, 2064 | .btn-default[disabled]:active, 2065 | fieldset[disabled] .btn-default:active, 2066 | .btn-default.disabled.active, 2067 | .btn-default[disabled].active, 2068 | fieldset[disabled] .btn-default.active { 2069 | background-color: #fff; 2070 | border-color: #ccc; 2071 | } 2072 | .btn-default .badge { 2073 | color: #fff; 2074 | background-color: #333; 2075 | } 2076 | .btn-primary { 2077 | color: #fff; 2078 | background-color: #428bca; 2079 | border-color: #357ebd; 2080 | } 2081 | .btn-primary:hover, 2082 | .btn-primary:focus, 2083 | .btn-primary:active, 2084 | .btn-primary.active, 2085 | .open .dropdown-toggle.btn-primary { 2086 | color: #fff; 2087 | background-color: #3276b1; 2088 | border-color: #285e8e; 2089 | } 2090 | .btn-primary:active, 2091 | .btn-primary.active, 2092 | .open .dropdown-toggle.btn-primary { 2093 | background-image: none; 2094 | } 2095 | .btn-primary.disabled, 2096 | .btn-primary[disabled], 2097 | fieldset[disabled] .btn-primary, 2098 | .btn-primary.disabled:hover, 2099 | .btn-primary[disabled]:hover, 2100 | fieldset[disabled] .btn-primary:hover, 2101 | .btn-primary.disabled:focus, 2102 | .btn-primary[disabled]:focus, 2103 | fieldset[disabled] .btn-primary:focus, 2104 | .btn-primary.disabled:active, 2105 | .btn-primary[disabled]:active, 2106 | fieldset[disabled] .btn-primary:active, 2107 | .btn-primary.disabled.active, 2108 | .btn-primary[disabled].active, 2109 | fieldset[disabled] .btn-primary.active { 2110 | background-color: #428bca; 2111 | border-color: #357ebd; 2112 | } 2113 | .btn-primary .badge { 2114 | color: #428bca; 2115 | background-color: #fff; 2116 | } 2117 | .btn-success { 2118 | color: #fff; 2119 | background-color: #5cb85c; 2120 | border-color: #4cae4c; 2121 | } 2122 | .btn-success:hover, 2123 | .btn-success:focus, 2124 | .btn-success:active, 2125 | .btn-success.active, 2126 | .open .dropdown-toggle.btn-success { 2127 | color: #fff; 2128 | background-color: #47a447; 2129 | border-color: #398439; 2130 | } 2131 | .btn-success:active, 2132 | .btn-success.active, 2133 | .open .dropdown-toggle.btn-success { 2134 | background-image: none; 2135 | } 2136 | .btn-success.disabled, 2137 | .btn-success[disabled], 2138 | fieldset[disabled] .btn-success, 2139 | .btn-success.disabled:hover, 2140 | .btn-success[disabled]:hover, 2141 | fieldset[disabled] .btn-success:hover, 2142 | .btn-success.disabled:focus, 2143 | .btn-success[disabled]:focus, 2144 | fieldset[disabled] .btn-success:focus, 2145 | .btn-success.disabled:active, 2146 | .btn-success[disabled]:active, 2147 | fieldset[disabled] .btn-success:active, 2148 | .btn-success.disabled.active, 2149 | .btn-success[disabled].active, 2150 | fieldset[disabled] .btn-success.active { 2151 | background-color: #5cb85c; 2152 | border-color: #4cae4c; 2153 | } 2154 | .btn-success .badge { 2155 | color: #5cb85c; 2156 | background-color: #fff; 2157 | } 2158 | .btn-info { 2159 | color: #fff; 2160 | background-color: #5bc0de; 2161 | border-color: #46b8da; 2162 | } 2163 | .btn-info:hover, 2164 | .btn-info:focus, 2165 | .btn-info:active, 2166 | .btn-info.active, 2167 | .open .dropdown-toggle.btn-info { 2168 | color: #fff; 2169 | background-color: #39b3d7; 2170 | border-color: #269abc; 2171 | } 2172 | .btn-info:active, 2173 | .btn-info.active, 2174 | .open .dropdown-toggle.btn-info { 2175 | background-image: none; 2176 | } 2177 | .btn-info.disabled, 2178 | .btn-info[disabled], 2179 | fieldset[disabled] .btn-info, 2180 | .btn-info.disabled:hover, 2181 | .btn-info[disabled]:hover, 2182 | fieldset[disabled] .btn-info:hover, 2183 | .btn-info.disabled:focus, 2184 | .btn-info[disabled]:focus, 2185 | fieldset[disabled] .btn-info:focus, 2186 | .btn-info.disabled:active, 2187 | .btn-info[disabled]:active, 2188 | fieldset[disabled] .btn-info:active, 2189 | .btn-info.disabled.active, 2190 | .btn-info[disabled].active, 2191 | fieldset[disabled] .btn-info.active { 2192 | background-color: #5bc0de; 2193 | border-color: #46b8da; 2194 | } 2195 | .btn-info .badge { 2196 | color: #5bc0de; 2197 | background-color: #fff; 2198 | } 2199 | .btn-warning { 2200 | color: #fff; 2201 | background-color: #f0ad4e; 2202 | border-color: #eea236; 2203 | } 2204 | .btn-warning:hover, 2205 | .btn-warning:focus, 2206 | .btn-warning:active, 2207 | .btn-warning.active, 2208 | .open .dropdown-toggle.btn-warning { 2209 | color: #fff; 2210 | background-color: #ed9c28; 2211 | border-color: #d58512; 2212 | } 2213 | .btn-warning:active, 2214 | .btn-warning.active, 2215 | .open .dropdown-toggle.btn-warning { 2216 | background-image: none; 2217 | } 2218 | .btn-warning.disabled, 2219 | .btn-warning[disabled], 2220 | fieldset[disabled] .btn-warning, 2221 | .btn-warning.disabled:hover, 2222 | .btn-warning[disabled]:hover, 2223 | fieldset[disabled] .btn-warning:hover, 2224 | .btn-warning.disabled:focus, 2225 | .btn-warning[disabled]:focus, 2226 | fieldset[disabled] .btn-warning:focus, 2227 | .btn-warning.disabled:active, 2228 | .btn-warning[disabled]:active, 2229 | fieldset[disabled] .btn-warning:active, 2230 | .btn-warning.disabled.active, 2231 | .btn-warning[disabled].active, 2232 | fieldset[disabled] .btn-warning.active { 2233 | background-color: #f0ad4e; 2234 | border-color: #eea236; 2235 | } 2236 | .btn-warning .badge { 2237 | color: #f0ad4e; 2238 | background-color: #fff; 2239 | } 2240 | .btn-danger { 2241 | color: #fff; 2242 | background-color: #d9534f; 2243 | border-color: #d43f3a; 2244 | } 2245 | .btn-danger:hover, 2246 | .btn-danger:focus, 2247 | .btn-danger:active, 2248 | .btn-danger.active, 2249 | .open .dropdown-toggle.btn-danger { 2250 | color: #fff; 2251 | background-color: #d2322d; 2252 | border-color: #ac2925; 2253 | } 2254 | .btn-danger:active, 2255 | .btn-danger.active, 2256 | .open .dropdown-toggle.btn-danger { 2257 | background-image: none; 2258 | } 2259 | .btn-danger.disabled, 2260 | .btn-danger[disabled], 2261 | fieldset[disabled] .btn-danger, 2262 | .btn-danger.disabled:hover, 2263 | .btn-danger[disabled]:hover, 2264 | fieldset[disabled] .btn-danger:hover, 2265 | .btn-danger.disabled:focus, 2266 | .btn-danger[disabled]:focus, 2267 | fieldset[disabled] .btn-danger:focus, 2268 | .btn-danger.disabled:active, 2269 | .btn-danger[disabled]:active, 2270 | fieldset[disabled] .btn-danger:active, 2271 | .btn-danger.disabled.active, 2272 | .btn-danger[disabled].active, 2273 | fieldset[disabled] .btn-danger.active { 2274 | background-color: #d9534f; 2275 | border-color: #d43f3a; 2276 | } 2277 | .btn-danger .badge { 2278 | color: #d9534f; 2279 | background-color: #fff; 2280 | } 2281 | .btn-link { 2282 | font-weight: normal; 2283 | color: #428bca; 2284 | cursor: pointer; 2285 | border-radius: 0; 2286 | } 2287 | .btn-link, 2288 | .btn-link:active, 2289 | .btn-link[disabled], 2290 | fieldset[disabled] .btn-link { 2291 | background-color: transparent; 2292 | -webkit-box-shadow: none; 2293 | box-shadow: none; 2294 | } 2295 | .btn-link, 2296 | .btn-link:hover, 2297 | .btn-link:focus, 2298 | .btn-link:active { 2299 | border-color: transparent; 2300 | } 2301 | .btn-link:hover, 2302 | .btn-link:focus { 2303 | color: #2a6496; 2304 | text-decoration: underline; 2305 | background-color: transparent; 2306 | } 2307 | .btn-link[disabled]:hover, 2308 | fieldset[disabled] .btn-link:hover, 2309 | .btn-link[disabled]:focus, 2310 | fieldset[disabled] .btn-link:focus { 2311 | color: #999; 2312 | text-decoration: none; 2313 | } 2314 | .btn-lg { 2315 | padding: 10px 16px; 2316 | font-size: 18px; 2317 | line-height: 1.33; 2318 | border-radius: 6px; 2319 | } 2320 | .btn-sm { 2321 | padding: 5px 10px; 2322 | font-size: 12px; 2323 | line-height: 1.5; 2324 | border-radius: 3px; 2325 | } 2326 | .btn-xs { 2327 | padding: 1px 5px; 2328 | font-size: 12px; 2329 | line-height: 1.5; 2330 | border-radius: 3px; 2331 | } 2332 | .btn-block { 2333 | display: block; 2334 | width: 100%; 2335 | padding-right: 0; 2336 | padding-left: 0; 2337 | } 2338 | .btn-block + .btn-block { 2339 | margin-top: 5px; 2340 | } 2341 | input[type="submit"].btn-block, 2342 | input[type="reset"].btn-block, 2343 | input[type="button"].btn-block { 2344 | width: 100%; 2345 | } 2346 | .fade { 2347 | opacity: 0; 2348 | -webkit-transition: opacity .15s linear; 2349 | transition: opacity .15s linear; 2350 | } 2351 | .fade.in { 2352 | opacity: 1; 2353 | } 2354 | .collapse { 2355 | display: none; 2356 | } 2357 | .collapse.in { 2358 | display: block; 2359 | } 2360 | .collapsing { 2361 | position: relative; 2362 | height: 0; 2363 | overflow: hidden; 2364 | -webkit-transition: height .35s ease; 2365 | transition: height .35s ease; 2366 | } 2367 | @font-face { 2368 | font-family: 'Glyphicons Halflings'; 2369 | 2370 | src: url('../fonts/glyphicons-halflings-regular.eot'); 2371 | src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), 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'); 2372 | } 2373 | .glyphicon { 2374 | position: relative; 2375 | top: 1px; 2376 | display: inline-block; 2377 | font-family: 'Glyphicons Halflings'; 2378 | font-style: normal; 2379 | font-weight: normal; 2380 | line-height: 1; 2381 | 2382 | -webkit-font-smoothing: antialiased; 2383 | -moz-osx-font-smoothing: grayscale; 2384 | } 2385 | .glyphicon-asterisk:before { 2386 | content: "\2a"; 2387 | } 2388 | .glyphicon-plus:before { 2389 | content: "\2b"; 2390 | } 2391 | .glyphicon-euro:before { 2392 | content: "\20ac"; 2393 | } 2394 | .glyphicon-minus:before { 2395 | content: "\2212"; 2396 | } 2397 | .glyphicon-cloud:before { 2398 | content: "\2601"; 2399 | } 2400 | .glyphicon-envelope:before { 2401 | content: "\2709"; 2402 | } 2403 | .glyphicon-pencil:before { 2404 | content: "\270f"; 2405 | } 2406 | .glyphicon-glass:before { 2407 | content: "\e001"; 2408 | } 2409 | .glyphicon-music:before { 2410 | content: "\e002"; 2411 | } 2412 | .glyphicon-search:before { 2413 | content: "\e003"; 2414 | } 2415 | .glyphicon-heart:before { 2416 | content: "\e005"; 2417 | } 2418 | .glyphicon-star:before { 2419 | content: "\e006"; 2420 | } 2421 | .glyphicon-star-empty:before { 2422 | content: "\e007"; 2423 | } 2424 | .glyphicon-user:before { 2425 | content: "\e008"; 2426 | } 2427 | .glyphicon-film:before { 2428 | content: "\e009"; 2429 | } 2430 | .glyphicon-th-large:before { 2431 | content: "\e010"; 2432 | } 2433 | .glyphicon-th:before { 2434 | content: "\e011"; 2435 | } 2436 | .glyphicon-th-list:before { 2437 | content: "\e012"; 2438 | } 2439 | .glyphicon-ok:before { 2440 | content: "\e013"; 2441 | } 2442 | .glyphicon-remove:before { 2443 | content: "\e014"; 2444 | } 2445 | .glyphicon-zoom-in:before { 2446 | content: "\e015"; 2447 | } 2448 | .glyphicon-zoom-out:before { 2449 | content: "\e016"; 2450 | } 2451 | .glyphicon-off:before { 2452 | content: "\e017"; 2453 | } 2454 | .glyphicon-signal:before { 2455 | content: "\e018"; 2456 | } 2457 | .glyphicon-cog:before { 2458 | content: "\e019"; 2459 | } 2460 | .glyphicon-trash:before { 2461 | content: "\e020"; 2462 | } 2463 | .glyphicon-home:before { 2464 | content: "\e021"; 2465 | } 2466 | .glyphicon-file:before { 2467 | content: "\e022"; 2468 | } 2469 | .glyphicon-time:before { 2470 | content: "\e023"; 2471 | } 2472 | .glyphicon-road:before { 2473 | content: "\e024"; 2474 | } 2475 | .glyphicon-download-alt:before { 2476 | content: "\e025"; 2477 | } 2478 | .glyphicon-download:before { 2479 | content: "\e026"; 2480 | } 2481 | .glyphicon-upload:before { 2482 | content: "\e027"; 2483 | } 2484 | .glyphicon-inbox:before { 2485 | content: "\e028"; 2486 | } 2487 | .glyphicon-play-circle:before { 2488 | content: "\e029"; 2489 | } 2490 | .glyphicon-repeat:before { 2491 | content: "\e030"; 2492 | } 2493 | .glyphicon-refresh:before { 2494 | content: "\e031"; 2495 | } 2496 | .glyphicon-list-alt:before { 2497 | content: "\e032"; 2498 | } 2499 | .glyphicon-lock:before { 2500 | content: "\e033"; 2501 | } 2502 | .glyphicon-flag:before { 2503 | content: "\e034"; 2504 | } 2505 | .glyphicon-headphones:before { 2506 | content: "\e035"; 2507 | } 2508 | .glyphicon-volume-off:before { 2509 | content: "\e036"; 2510 | } 2511 | .glyphicon-volume-down:before { 2512 | content: "\e037"; 2513 | } 2514 | .glyphicon-volume-up:before { 2515 | content: "\e038"; 2516 | } 2517 | .glyphicon-qrcode:before { 2518 | content: "\e039"; 2519 | } 2520 | .glyphicon-barcode:before { 2521 | content: "\e040"; 2522 | } 2523 | .glyphicon-tag:before { 2524 | content: "\e041"; 2525 | } 2526 | .glyphicon-tags:before { 2527 | content: "\e042"; 2528 | } 2529 | .glyphicon-book:before { 2530 | content: "\e043"; 2531 | } 2532 | .glyphicon-bookmark:before { 2533 | content: "\e044"; 2534 | } 2535 | .glyphicon-print:before { 2536 | content: "\e045"; 2537 | } 2538 | .glyphicon-camera:before { 2539 | content: "\e046"; 2540 | } 2541 | .glyphicon-font:before { 2542 | content: "\e047"; 2543 | } 2544 | .glyphicon-bold:before { 2545 | content: "\e048"; 2546 | } 2547 | .glyphicon-italic:before { 2548 | content: "\e049"; 2549 | } 2550 | .glyphicon-text-height:before { 2551 | content: "\e050"; 2552 | } 2553 | .glyphicon-text-width:before { 2554 | content: "\e051"; 2555 | } 2556 | .glyphicon-align-left:before { 2557 | content: "\e052"; 2558 | } 2559 | .glyphicon-align-center:before { 2560 | content: "\e053"; 2561 | } 2562 | .glyphicon-align-right:before { 2563 | content: "\e054"; 2564 | } 2565 | .glyphicon-align-justify:before { 2566 | content: "\e055"; 2567 | } 2568 | .glyphicon-list:before { 2569 | content: "\e056"; 2570 | } 2571 | .glyphicon-indent-left:before { 2572 | content: "\e057"; 2573 | } 2574 | .glyphicon-indent-right:before { 2575 | content: "\e058"; 2576 | } 2577 | .glyphicon-facetime-video:before { 2578 | content: "\e059"; 2579 | } 2580 | .glyphicon-picture:before { 2581 | content: "\e060"; 2582 | } 2583 | .glyphicon-map-marker:before { 2584 | content: "\e062"; 2585 | } 2586 | .glyphicon-adjust:before { 2587 | content: "\e063"; 2588 | } 2589 | .glyphicon-tint:before { 2590 | content: "\e064"; 2591 | } 2592 | .glyphicon-edit:before { 2593 | content: "\e065"; 2594 | } 2595 | .glyphicon-share:before { 2596 | content: "\e066"; 2597 | } 2598 | .glyphicon-check:before { 2599 | content: "\e067"; 2600 | } 2601 | .glyphicon-move:before { 2602 | content: "\e068"; 2603 | } 2604 | .glyphicon-step-backward:before { 2605 | content: "\e069"; 2606 | } 2607 | .glyphicon-fast-backward:before { 2608 | content: "\e070"; 2609 | } 2610 | .glyphicon-backward:before { 2611 | content: "\e071"; 2612 | } 2613 | .glyphicon-play:before { 2614 | content: "\e072"; 2615 | } 2616 | .glyphicon-pause:before { 2617 | content: "\e073"; 2618 | } 2619 | .glyphicon-stop:before { 2620 | content: "\e074"; 2621 | } 2622 | .glyphicon-forward:before { 2623 | content: "\e075"; 2624 | } 2625 | .glyphicon-fast-forward:before { 2626 | content: "\e076"; 2627 | } 2628 | .glyphicon-step-forward:before { 2629 | content: "\e077"; 2630 | } 2631 | .glyphicon-eject:before { 2632 | content: "\e078"; 2633 | } 2634 | .glyphicon-chevron-left:before { 2635 | content: "\e079"; 2636 | } 2637 | .glyphicon-chevron-right:before { 2638 | content: "\e080"; 2639 | } 2640 | .glyphicon-plus-sign:before { 2641 | content: "\e081"; 2642 | } 2643 | .glyphicon-minus-sign:before { 2644 | content: "\e082"; 2645 | } 2646 | .glyphicon-remove-sign:before { 2647 | content: "\e083"; 2648 | } 2649 | .glyphicon-ok-sign:before { 2650 | content: "\e084"; 2651 | } 2652 | .glyphicon-question-sign:before { 2653 | content: "\e085"; 2654 | } 2655 | .glyphicon-info-sign:before { 2656 | content: "\e086"; 2657 | } 2658 | .glyphicon-screenshot:before { 2659 | content: "\e087"; 2660 | } 2661 | .glyphicon-remove-circle:before { 2662 | content: "\e088"; 2663 | } 2664 | .glyphicon-ok-circle:before { 2665 | content: "\e089"; 2666 | } 2667 | .glyphicon-ban-circle:before { 2668 | content: "\e090"; 2669 | } 2670 | .glyphicon-arrow-left:before { 2671 | content: "\e091"; 2672 | } 2673 | .glyphicon-arrow-right:before { 2674 | content: "\e092"; 2675 | } 2676 | .glyphicon-arrow-up:before { 2677 | content: "\e093"; 2678 | } 2679 | .glyphicon-arrow-down:before { 2680 | content: "\e094"; 2681 | } 2682 | .glyphicon-share-alt:before { 2683 | content: "\e095"; 2684 | } 2685 | .glyphicon-resize-full:before { 2686 | content: "\e096"; 2687 | } 2688 | .glyphicon-resize-small:before { 2689 | content: "\e097"; 2690 | } 2691 | .glyphicon-exclamation-sign:before { 2692 | content: "\e101"; 2693 | } 2694 | .glyphicon-gift:before { 2695 | content: "\e102"; 2696 | } 2697 | .glyphicon-leaf:before { 2698 | content: "\e103"; 2699 | } 2700 | .glyphicon-fire:before { 2701 | content: "\e104"; 2702 | } 2703 | .glyphicon-eye-open:before { 2704 | content: "\e105"; 2705 | } 2706 | .glyphicon-eye-close:before { 2707 | content: "\e106"; 2708 | } 2709 | .glyphicon-warning-sign:before { 2710 | content: "\e107"; 2711 | } 2712 | .glyphicon-plane:before { 2713 | content: "\e108"; 2714 | } 2715 | .glyphicon-calendar:before { 2716 | content: "\e109"; 2717 | } 2718 | .glyphicon-random:before { 2719 | content: "\e110"; 2720 | } 2721 | .glyphicon-comment:before { 2722 | content: "\e111"; 2723 | } 2724 | .glyphicon-magnet:before { 2725 | content: "\e112"; 2726 | } 2727 | .glyphicon-chevron-up:before { 2728 | content: "\e113"; 2729 | } 2730 | .glyphicon-chevron-down:before { 2731 | content: "\e114"; 2732 | } 2733 | .glyphicon-retweet:before { 2734 | content: "\e115"; 2735 | } 2736 | .glyphicon-shopping-cart:before { 2737 | content: "\e116"; 2738 | } 2739 | .glyphicon-folder-close:before { 2740 | content: "\e117"; 2741 | } 2742 | .glyphicon-folder-open:before { 2743 | content: "\e118"; 2744 | } 2745 | .glyphicon-resize-vertical:before { 2746 | content: "\e119"; 2747 | } 2748 | .glyphicon-resize-horizontal:before { 2749 | content: "\e120"; 2750 | } 2751 | .glyphicon-hdd:before { 2752 | content: "\e121"; 2753 | } 2754 | .glyphicon-bullhorn:before { 2755 | content: "\e122"; 2756 | } 2757 | .glyphicon-bell:before { 2758 | content: "\e123"; 2759 | } 2760 | .glyphicon-certificate:before { 2761 | content: "\e124"; 2762 | } 2763 | .glyphicon-thumbs-up:before { 2764 | content: "\e125"; 2765 | } 2766 | .glyphicon-thumbs-down:before { 2767 | content: "\e126"; 2768 | } 2769 | .glyphicon-hand-right:before { 2770 | content: "\e127"; 2771 | } 2772 | .glyphicon-hand-left:before { 2773 | content: "\e128"; 2774 | } 2775 | .glyphicon-hand-up:before { 2776 | content: "\e129"; 2777 | } 2778 | .glyphicon-hand-down:before { 2779 | content: "\e130"; 2780 | } 2781 | .glyphicon-circle-arrow-right:before { 2782 | content: "\e131"; 2783 | } 2784 | .glyphicon-circle-arrow-left:before { 2785 | content: "\e132"; 2786 | } 2787 | .glyphicon-circle-arrow-up:before { 2788 | content: "\e133"; 2789 | } 2790 | .glyphicon-circle-arrow-down:before { 2791 | content: "\e134"; 2792 | } 2793 | .glyphicon-globe:before { 2794 | content: "\e135"; 2795 | } 2796 | .glyphicon-wrench:before { 2797 | content: "\e136"; 2798 | } 2799 | .glyphicon-tasks:before { 2800 | content: "\e137"; 2801 | } 2802 | .glyphicon-filter:before { 2803 | content: "\e138"; 2804 | } 2805 | .glyphicon-briefcase:before { 2806 | content: "\e139"; 2807 | } 2808 | .glyphicon-fullscreen:before { 2809 | content: "\e140"; 2810 | } 2811 | .glyphicon-dashboard:before { 2812 | content: "\e141"; 2813 | } 2814 | .glyphicon-paperclip:before { 2815 | content: "\e142"; 2816 | } 2817 | .glyphicon-heart-empty:before { 2818 | content: "\e143"; 2819 | } 2820 | .glyphicon-link:before { 2821 | content: "\e144"; 2822 | } 2823 | .glyphicon-phone:before { 2824 | content: "\e145"; 2825 | } 2826 | .glyphicon-pushpin:before { 2827 | content: "\e146"; 2828 | } 2829 | .glyphicon-usd:before { 2830 | content: "\e148"; 2831 | } 2832 | .glyphicon-gbp:before { 2833 | content: "\e149"; 2834 | } 2835 | .glyphicon-sort:before { 2836 | content: "\e150"; 2837 | } 2838 | .glyphicon-sort-by-alphabet:before { 2839 | content: "\e151"; 2840 | } 2841 | .glyphicon-sort-by-alphabet-alt:before { 2842 | content: "\e152"; 2843 | } 2844 | .glyphicon-sort-by-order:before { 2845 | content: "\e153"; 2846 | } 2847 | .glyphicon-sort-by-order-alt:before { 2848 | content: "\e154"; 2849 | } 2850 | .glyphicon-sort-by-attributes:before { 2851 | content: "\e155"; 2852 | } 2853 | .glyphicon-sort-by-attributes-alt:before { 2854 | content: "\e156"; 2855 | } 2856 | .glyphicon-unchecked:before { 2857 | content: "\e157"; 2858 | } 2859 | .glyphicon-expand:before { 2860 | content: "\e158"; 2861 | } 2862 | .glyphicon-collapse-down:before { 2863 | content: "\e159"; 2864 | } 2865 | .glyphicon-collapse-up:before { 2866 | content: "\e160"; 2867 | } 2868 | .glyphicon-log-in:before { 2869 | content: "\e161"; 2870 | } 2871 | .glyphicon-flash:before { 2872 | content: "\e162"; 2873 | } 2874 | .glyphicon-log-out:before { 2875 | content: "\e163"; 2876 | } 2877 | .glyphicon-new-window:before { 2878 | content: "\e164"; 2879 | } 2880 | .glyphicon-record:before { 2881 | content: "\e165"; 2882 | } 2883 | .glyphicon-save:before { 2884 | content: "\e166"; 2885 | } 2886 | .glyphicon-open:before { 2887 | content: "\e167"; 2888 | } 2889 | .glyphicon-saved:before { 2890 | content: "\e168"; 2891 | } 2892 | .glyphicon-import:before { 2893 | content: "\e169"; 2894 | } 2895 | .glyphicon-export:before { 2896 | content: "\e170"; 2897 | } 2898 | .glyphicon-send:before { 2899 | content: "\e171"; 2900 | } 2901 | .glyphicon-floppy-disk:before { 2902 | content: "\e172"; 2903 | } 2904 | .glyphicon-floppy-saved:before { 2905 | content: "\e173"; 2906 | } 2907 | .glyphicon-floppy-remove:before { 2908 | content: "\e174"; 2909 | } 2910 | .glyphicon-floppy-save:before { 2911 | content: "\e175"; 2912 | } 2913 | .glyphicon-floppy-open:before { 2914 | content: "\e176"; 2915 | } 2916 | .glyphicon-credit-card:before { 2917 | content: "\e177"; 2918 | } 2919 | .glyphicon-transfer:before { 2920 | content: "\e178"; 2921 | } 2922 | .glyphicon-cutlery:before { 2923 | content: "\e179"; 2924 | } 2925 | .glyphicon-header:before { 2926 | content: "\e180"; 2927 | } 2928 | .glyphicon-compressed:before { 2929 | content: "\e181"; 2930 | } 2931 | .glyphicon-earphone:before { 2932 | content: "\e182"; 2933 | } 2934 | .glyphicon-phone-alt:before { 2935 | content: "\e183"; 2936 | } 2937 | .glyphicon-tower:before { 2938 | content: "\e184"; 2939 | } 2940 | .glyphicon-stats:before { 2941 | content: "\e185"; 2942 | } 2943 | .glyphicon-sd-video:before { 2944 | content: "\e186"; 2945 | } 2946 | .glyphicon-hd-video:before { 2947 | content: "\e187"; 2948 | } 2949 | .glyphicon-subtitles:before { 2950 | content: "\e188"; 2951 | } 2952 | .glyphicon-sound-stereo:before { 2953 | content: "\e189"; 2954 | } 2955 | .glyphicon-sound-dolby:before { 2956 | content: "\e190"; 2957 | } 2958 | .glyphicon-sound-5-1:before { 2959 | content: "\e191"; 2960 | } 2961 | .glyphicon-sound-6-1:before { 2962 | content: "\e192"; 2963 | } 2964 | .glyphicon-sound-7-1:before { 2965 | content: "\e193"; 2966 | } 2967 | .glyphicon-copyright-mark:before { 2968 | content: "\e194"; 2969 | } 2970 | .glyphicon-registration-mark:before { 2971 | content: "\e195"; 2972 | } 2973 | .glyphicon-cloud-download:before { 2974 | content: "\e197"; 2975 | } 2976 | .glyphicon-cloud-upload:before { 2977 | content: "\e198"; 2978 | } 2979 | .glyphicon-tree-conifer:before { 2980 | content: "\e199"; 2981 | } 2982 | .glyphicon-tree-deciduous:before { 2983 | content: "\e200"; 2984 | } 2985 | .caret { 2986 | display: inline-block; 2987 | width: 0; 2988 | height: 0; 2989 | margin-left: 2px; 2990 | vertical-align: middle; 2991 | border-top: 4px solid; 2992 | border-right: 4px solid transparent; 2993 | border-left: 4px solid transparent; 2994 | } 2995 | .dropdown { 2996 | position: relative; 2997 | } 2998 | .dropdown-toggle:focus { 2999 | outline: 0; 3000 | } 3001 | .dropdown-menu { 3002 | position: absolute; 3003 | top: 100%; 3004 | left: 0; 3005 | z-index: 1000; 3006 | display: none; 3007 | float: left; 3008 | min-width: 160px; 3009 | padding: 5px 0; 3010 | margin: 2px 0 0; 3011 | font-size: 14px; 3012 | list-style: none; 3013 | background-color: #fff; 3014 | background-clip: padding-box; 3015 | border: 1px solid #ccc; 3016 | border: 1px solid rgba(0, 0, 0, .15); 3017 | border-radius: 4px; 3018 | -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175); 3019 | box-shadow: 0 6px 12px rgba(0, 0, 0, .175); 3020 | } 3021 | .dropdown-menu.pull-right { 3022 | right: 0; 3023 | left: auto; 3024 | } 3025 | .dropdown-menu .divider { 3026 | height: 1px; 3027 | margin: 9px 0; 3028 | overflow: hidden; 3029 | background-color: #e5e5e5; 3030 | } 3031 | .dropdown-menu > li > a { 3032 | display: block; 3033 | padding: 3px 20px; 3034 | clear: both; 3035 | font-weight: normal; 3036 | line-height: 1.428571429; 3037 | color: #333; 3038 | white-space: nowrap; 3039 | } 3040 | .dropdown-menu > li > a:hover, 3041 | .dropdown-menu > li > a:focus { 3042 | color: #262626; 3043 | text-decoration: none; 3044 | background-color: #f5f5f5; 3045 | } 3046 | .dropdown-menu > .active > a, 3047 | .dropdown-menu > .active > a:hover, 3048 | .dropdown-menu > .active > a:focus { 3049 | color: #fff; 3050 | text-decoration: none; 3051 | background-color: #428bca; 3052 | outline: 0; 3053 | } 3054 | .dropdown-menu > .disabled > a, 3055 | .dropdown-menu > .disabled > a:hover, 3056 | .dropdown-menu > .disabled > a:focus { 3057 | color: #999; 3058 | } 3059 | .dropdown-menu > .disabled > a:hover, 3060 | .dropdown-menu > .disabled > a:focus { 3061 | text-decoration: none; 3062 | cursor: not-allowed; 3063 | background-color: transparent; 3064 | background-image: none; 3065 | filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); 3066 | } 3067 | .open > .dropdown-menu { 3068 | display: block; 3069 | } 3070 | .open > a { 3071 | outline: 0; 3072 | } 3073 | .dropdown-menu-right { 3074 | right: 0; 3075 | left: auto; 3076 | } 3077 | .dropdown-menu-left { 3078 | right: auto; 3079 | left: 0; 3080 | } 3081 | .dropdown-header { 3082 | display: block; 3083 | padding: 3px 20px; 3084 | font-size: 12px; 3085 | line-height: 1.428571429; 3086 | color: #999; 3087 | } 3088 | .dropdown-backdrop { 3089 | position: fixed; 3090 | top: 0; 3091 | right: 0; 3092 | bottom: 0; 3093 | left: 0; 3094 | z-index: 990; 3095 | } 3096 | .pull-right > .dropdown-menu { 3097 | right: 0; 3098 | left: auto; 3099 | } 3100 | .dropup .caret, 3101 | .navbar-fixed-bottom .dropdown .caret { 3102 | content: ""; 3103 | border-top: 0; 3104 | border-bottom: 4px solid; 3105 | } 3106 | .dropup .dropdown-menu, 3107 | .navbar-fixed-bottom .dropdown .dropdown-menu { 3108 | top: auto; 3109 | bottom: 100%; 3110 | margin-bottom: 1px; 3111 | } 3112 | @media (min-width: 768px) { 3113 | .navbar-right .dropdown-menu { 3114 | right: 0; 3115 | left: auto; 3116 | } 3117 | .navbar-right .dropdown-menu-left { 3118 | right: auto; 3119 | left: 0; 3120 | } 3121 | } 3122 | .btn-group, 3123 | .btn-group-vertical { 3124 | position: relative; 3125 | display: inline-block; 3126 | vertical-align: middle; 3127 | } 3128 | .btn-group > .btn, 3129 | .btn-group-vertical > .btn { 3130 | position: relative; 3131 | float: left; 3132 | } 3133 | .btn-group > .btn:hover, 3134 | .btn-group-vertical > .btn:hover, 3135 | .btn-group > .btn:focus, 3136 | .btn-group-vertical > .btn:focus, 3137 | .btn-group > .btn:active, 3138 | .btn-group-vertical > .btn:active, 3139 | .btn-group > .btn.active, 3140 | .btn-group-vertical > .btn.active { 3141 | z-index: 2; 3142 | } 3143 | .btn-group > .btn:focus, 3144 | .btn-group-vertical > .btn:focus { 3145 | outline: none; 3146 | } 3147 | .btn-group .btn + .btn, 3148 | .btn-group .btn + .btn-group, 3149 | .btn-group .btn-group + .btn, 3150 | .btn-group .btn-group + .btn-group { 3151 | margin-left: -1px; 3152 | } 3153 | .btn-toolbar { 3154 | margin-left: -5px; 3155 | } 3156 | .btn-toolbar .btn-group, 3157 | .btn-toolbar .input-group { 3158 | float: left; 3159 | } 3160 | .btn-toolbar > .btn, 3161 | .btn-toolbar > .btn-group, 3162 | .btn-toolbar > .input-group { 3163 | margin-left: 5px; 3164 | } 3165 | .btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { 3166 | border-radius: 0; 3167 | } 3168 | .btn-group > .btn:first-child { 3169 | margin-left: 0; 3170 | } 3171 | .btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { 3172 | border-top-right-radius: 0; 3173 | border-bottom-right-radius: 0; 3174 | } 3175 | .btn-group > .btn:last-child:not(:first-child), 3176 | .btn-group > .dropdown-toggle:not(:first-child) { 3177 | border-top-left-radius: 0; 3178 | border-bottom-left-radius: 0; 3179 | } 3180 | .btn-group > .btn-group { 3181 | float: left; 3182 | } 3183 | .btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { 3184 | border-radius: 0; 3185 | } 3186 | .btn-group > .btn-group:first-child > .btn:last-child, 3187 | .btn-group > .btn-group:first-child > .dropdown-toggle { 3188 | border-top-right-radius: 0; 3189 | border-bottom-right-radius: 0; 3190 | } 3191 | .btn-group > .btn-group:last-child > .btn:first-child { 3192 | border-top-left-radius: 0; 3193 | border-bottom-left-radius: 0; 3194 | } 3195 | .btn-group .dropdown-toggle:active, 3196 | .btn-group.open .dropdown-toggle { 3197 | outline: 0; 3198 | } 3199 | .btn-group-xs > .btn { 3200 | padding: 1px 5px; 3201 | font-size: 12px; 3202 | line-height: 1.5; 3203 | border-radius: 3px; 3204 | } 3205 | .btn-group-sm > .btn { 3206 | padding: 5px 10px; 3207 | font-size: 12px; 3208 | line-height: 1.5; 3209 | border-radius: 3px; 3210 | } 3211 | .btn-group-lg > .btn { 3212 | padding: 10px 16px; 3213 | font-size: 18px; 3214 | line-height: 1.33; 3215 | border-radius: 6px; 3216 | } 3217 | .btn-group > .btn + .dropdown-toggle { 3218 | padding-right: 8px; 3219 | padding-left: 8px; 3220 | } 3221 | .btn-group > .btn-lg + .dropdown-toggle { 3222 | padding-right: 12px; 3223 | padding-left: 12px; 3224 | } 3225 | .btn-group.open .dropdown-toggle { 3226 | -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); 3227 | box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); 3228 | } 3229 | .btn-group.open .dropdown-toggle.btn-link { 3230 | -webkit-box-shadow: none; 3231 | box-shadow: none; 3232 | } 3233 | .btn .caret { 3234 | margin-left: 0; 3235 | } 3236 | .btn-lg .caret { 3237 | border-width: 5px 5px 0; 3238 | border-bottom-width: 0; 3239 | } 3240 | .dropup .btn-lg .caret { 3241 | border-width: 0 5px 5px; 3242 | } 3243 | .btn-group-vertical > .btn, 3244 | .btn-group-vertical > .btn-group, 3245 | .btn-group-vertical > .btn-group > .btn { 3246 | display: block; 3247 | float: none; 3248 | width: 100%; 3249 | max-width: 100%; 3250 | } 3251 | .btn-group-vertical > .btn-group > .btn { 3252 | float: none; 3253 | } 3254 | .btn-group-vertical > .btn + .btn, 3255 | .btn-group-vertical > .btn + .btn-group, 3256 | .btn-group-vertical > .btn-group + .btn, 3257 | .btn-group-vertical > .btn-group + .btn-group { 3258 | margin-top: -1px; 3259 | margin-left: 0; 3260 | } 3261 | .btn-group-vertical > .btn:not(:first-child):not(:last-child) { 3262 | border-radius: 0; 3263 | } 3264 | .btn-group-vertical > .btn:first-child:not(:last-child) { 3265 | border-top-right-radius: 4px; 3266 | border-bottom-right-radius: 0; 3267 | border-bottom-left-radius: 0; 3268 | } 3269 | .btn-group-vertical > .btn:last-child:not(:first-child) { 3270 | border-top-left-radius: 0; 3271 | border-top-right-radius: 0; 3272 | border-bottom-left-radius: 4px; 3273 | } 3274 | .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { 3275 | border-radius: 0; 3276 | } 3277 | .btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, 3278 | .btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { 3279 | border-bottom-right-radius: 0; 3280 | border-bottom-left-radius: 0; 3281 | } 3282 | .btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { 3283 | border-top-left-radius: 0; 3284 | border-top-right-radius: 0; 3285 | } 3286 | .btn-group-justified { 3287 | display: table; 3288 | width: 100%; 3289 | table-layout: fixed; 3290 | border-collapse: separate; 3291 | } 3292 | .btn-group-justified > .btn, 3293 | .btn-group-justified > .btn-group { 3294 | display: table-cell; 3295 | float: none; 3296 | width: 1%; 3297 | } 3298 | .btn-group-justified > .btn-group .btn { 3299 | width: 100%; 3300 | } 3301 | [data-toggle="buttons"] > .btn > input[type="radio"], 3302 | [data-toggle="buttons"] > .btn > input[type="checkbox"] { 3303 | display: none; 3304 | } 3305 | .input-group { 3306 | position: relative; 3307 | display: table; 3308 | border-collapse: separate; 3309 | } 3310 | .input-group[class*="col-"] { 3311 | float: none; 3312 | padding-right: 0; 3313 | padding-left: 0; 3314 | } 3315 | .input-group .form-control { 3316 | float: left; 3317 | width: 100%; 3318 | margin-bottom: 0; 3319 | } 3320 | .input-group-lg > .form-control, 3321 | .input-group-lg > .input-group-addon, 3322 | .input-group-lg > .input-group-btn > .btn { 3323 | height: 46px; 3324 | padding: 10px 16px; 3325 | font-size: 18px; 3326 | line-height: 1.33; 3327 | border-radius: 6px; 3328 | } 3329 | select.input-group-lg > .form-control, 3330 | select.input-group-lg > .input-group-addon, 3331 | select.input-group-lg > .input-group-btn > .btn { 3332 | height: 46px; 3333 | line-height: 46px; 3334 | } 3335 | textarea.input-group-lg > .form-control, 3336 | textarea.input-group-lg > .input-group-addon, 3337 | textarea.input-group-lg > .input-group-btn > .btn, 3338 | select[multiple].input-group-lg > .form-control, 3339 | select[multiple].input-group-lg > .input-group-addon, 3340 | select[multiple].input-group-lg > .input-group-btn > .btn { 3341 | height: auto; 3342 | } 3343 | .input-group-sm > .form-control, 3344 | .input-group-sm > .input-group-addon, 3345 | .input-group-sm > .input-group-btn > .btn { 3346 | height: 30px; 3347 | padding: 5px 10px; 3348 | font-size: 12px; 3349 | line-height: 1.5; 3350 | border-radius: 3px; 3351 | } 3352 | select.input-group-sm > .form-control, 3353 | select.input-group-sm > .input-group-addon, 3354 | select.input-group-sm > .input-group-btn > .btn { 3355 | height: 30px; 3356 | line-height: 30px; 3357 | } 3358 | textarea.input-group-sm > .form-control, 3359 | textarea.input-group-sm > .input-group-addon, 3360 | textarea.input-group-sm > .input-group-btn > .btn, 3361 | select[multiple].input-group-sm > .form-control, 3362 | select[multiple].input-group-sm > .input-group-addon, 3363 | select[multiple].input-group-sm > .input-group-btn > .btn { 3364 | height: auto; 3365 | } 3366 | .input-group-addon, 3367 | .input-group-btn, 3368 | .input-group .form-control { 3369 | display: table-cell; 3370 | } 3371 | .input-group-addon:not(:first-child):not(:last-child), 3372 | .input-group-btn:not(:first-child):not(:last-child), 3373 | .input-group .form-control:not(:first-child):not(:last-child) { 3374 | border-radius: 0; 3375 | } 3376 | .input-group-addon, 3377 | .input-group-btn { 3378 | width: 1%; 3379 | white-space: nowrap; 3380 | vertical-align: middle; 3381 | } 3382 | .input-group-addon { 3383 | padding: 6px 12px; 3384 | font-size: 14px; 3385 | font-weight: normal; 3386 | line-height: 1; 3387 | color: #555; 3388 | text-align: center; 3389 | background-color: #eee; 3390 | border: 1px solid #ccc; 3391 | border-radius: 4px; 3392 | } 3393 | .input-group-addon.input-sm { 3394 | padding: 5px 10px; 3395 | font-size: 12px; 3396 | border-radius: 3px; 3397 | } 3398 | .input-group-addon.input-lg { 3399 | padding: 10px 16px; 3400 | font-size: 18px; 3401 | border-radius: 6px; 3402 | } 3403 | .input-group-addon input[type="radio"], 3404 | .input-group-addon input[type="checkbox"] { 3405 | margin-top: 0; 3406 | } 3407 | .input-group .form-control:first-child, 3408 | .input-group-addon:first-child, 3409 | .input-group-btn:first-child > .btn, 3410 | .input-group-btn:first-child > .btn-group > .btn, 3411 | .input-group-btn:first-child > .dropdown-toggle, 3412 | .input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), 3413 | .input-group-btn:last-child > .btn-group:not(:last-child) > .btn { 3414 | border-top-right-radius: 0; 3415 | border-bottom-right-radius: 0; 3416 | } 3417 | .input-group-addon:first-child { 3418 | border-right: 0; 3419 | } 3420 | .input-group .form-control:last-child, 3421 | .input-group-addon:last-child, 3422 | .input-group-btn:last-child > .btn, 3423 | .input-group-btn:last-child > .btn-group > .btn, 3424 | .input-group-btn:last-child > .dropdown-toggle, 3425 | .input-group-btn:first-child > .btn:not(:first-child), 3426 | .input-group-btn:first-child > .btn-group:not(:first-child) > .btn { 3427 | border-top-left-radius: 0; 3428 | border-bottom-left-radius: 0; 3429 | } 3430 | .input-group-addon:last-child { 3431 | border-left: 0; 3432 | } 3433 | .input-group-btn { 3434 | position: relative; 3435 | font-size: 0; 3436 | white-space: nowrap; 3437 | } 3438 | .input-group-btn > .btn { 3439 | position: relative; 3440 | } 3441 | .input-group-btn > .btn + .btn { 3442 | margin-left: -1px; 3443 | } 3444 | .input-group-btn > .btn:hover, 3445 | .input-group-btn > .btn:focus, 3446 | .input-group-btn > .btn:active { 3447 | z-index: 2; 3448 | } 3449 | .input-group-btn:first-child > .btn, 3450 | .input-group-btn:first-child > .btn-group { 3451 | margin-right: -1px; 3452 | } 3453 | .input-group-btn:last-child > .btn, 3454 | .input-group-btn:last-child > .btn-group { 3455 | margin-left: -1px; 3456 | } 3457 | .nav { 3458 | padding-left: 0; 3459 | margin-bottom: 0; 3460 | list-style: none; 3461 | } 3462 | .nav > li { 3463 | position: relative; 3464 | display: block; 3465 | } 3466 | .nav > li > a { 3467 | position: relative; 3468 | display: block; 3469 | padding: 10px 15px; 3470 | } 3471 | .nav > li > a:hover, 3472 | .nav > li > a:focus { 3473 | text-decoration: none; 3474 | background-color: #eee; 3475 | } 3476 | .nav > li.disabled > a { 3477 | color: #999; 3478 | } 3479 | .nav > li.disabled > a:hover, 3480 | .nav > li.disabled > a:focus { 3481 | color: #999; 3482 | text-decoration: none; 3483 | cursor: not-allowed; 3484 | background-color: transparent; 3485 | } 3486 | .nav .open > a, 3487 | .nav .open > a:hover, 3488 | .nav .open > a:focus { 3489 | background-color: #eee; 3490 | border-color: #428bca; 3491 | } 3492 | .nav .nav-divider { 3493 | height: 1px; 3494 | margin: 9px 0; 3495 | overflow: hidden; 3496 | background-color: #e5e5e5; 3497 | } 3498 | .nav > li > a > img { 3499 | max-width: none; 3500 | } 3501 | .nav-tabs { 3502 | border-bottom: 1px solid #ddd; 3503 | } 3504 | .nav-tabs > li { 3505 | float: left; 3506 | margin-bottom: -1px; 3507 | } 3508 | .nav-tabs > li > a { 3509 | margin-right: 2px; 3510 | line-height: 1.428571429; 3511 | border: 1px solid transparent; 3512 | border-radius: 4px 4px 0 0; 3513 | } 3514 | .nav-tabs > li > a:hover { 3515 | border-color: #eee #eee #ddd; 3516 | } 3517 | .nav-tabs > li.active > a, 3518 | .nav-tabs > li.active > a:hover, 3519 | .nav-tabs > li.active > a:focus { 3520 | color: #555; 3521 | cursor: default; 3522 | background-color: #fff; 3523 | border: 1px solid #ddd; 3524 | border-bottom-color: transparent; 3525 | } 3526 | .nav-tabs.nav-justified { 3527 | width: 100%; 3528 | border-bottom: 0; 3529 | } 3530 | .nav-tabs.nav-justified > li { 3531 | float: none; 3532 | } 3533 | .nav-tabs.nav-justified > li > a { 3534 | margin-bottom: 5px; 3535 | text-align: center; 3536 | } 3537 | .nav-tabs.nav-justified > .dropdown .dropdown-menu { 3538 | top: auto; 3539 | left: auto; 3540 | } 3541 | @media (min-width: 768px) { 3542 | .nav-tabs.nav-justified > li { 3543 | display: table-cell; 3544 | width: 1%; 3545 | } 3546 | .nav-tabs.nav-justified > li > a { 3547 | margin-bottom: 0; 3548 | } 3549 | } 3550 | .nav-tabs.nav-justified > li > a { 3551 | margin-right: 0; 3552 | border-radius: 4px; 3553 | } 3554 | .nav-tabs.nav-justified > .active > a, 3555 | .nav-tabs.nav-justified > .active > a:hover, 3556 | .nav-tabs.nav-justified > .active > a:focus { 3557 | border: 1px solid #ddd; 3558 | } 3559 | @media (min-width: 768px) { 3560 | .nav-tabs.nav-justified > li > a { 3561 | border-bottom: 1px solid #ddd; 3562 | border-radius: 4px 4px 0 0; 3563 | } 3564 | .nav-tabs.nav-justified > .active > a, 3565 | .nav-tabs.nav-justified > .active > a:hover, 3566 | .nav-tabs.nav-justified > .active > a:focus { 3567 | border-bottom-color: #fff; 3568 | } 3569 | } 3570 | .nav-pills > li { 3571 | float: left; 3572 | } 3573 | .nav-pills > li > a { 3574 | border-radius: 4px; 3575 | } 3576 | .nav-pills > li + li { 3577 | margin-left: 2px; 3578 | } 3579 | .nav-pills > li.active > a, 3580 | .nav-pills > li.active > a:hover, 3581 | .nav-pills > li.active > a:focus { 3582 | color: #fff; 3583 | background-color: #428bca; 3584 | } 3585 | .nav-stacked > li { 3586 | float: none; 3587 | } 3588 | .nav-stacked > li + li { 3589 | margin-top: 2px; 3590 | margin-left: 0; 3591 | } 3592 | .nav-justified { 3593 | width: 100%; 3594 | } 3595 | .nav-justified > li { 3596 | float: none; 3597 | } 3598 | .nav-justified > li > a { 3599 | margin-bottom: 5px; 3600 | text-align: center; 3601 | } 3602 | .nav-justified > .dropdown .dropdown-menu { 3603 | top: auto; 3604 | left: auto; 3605 | } 3606 | @media (min-width: 768px) { 3607 | .nav-justified > li { 3608 | display: table-cell; 3609 | width: 1%; 3610 | } 3611 | .nav-justified > li > a { 3612 | margin-bottom: 0; 3613 | } 3614 | } 3615 | .nav-tabs-justified { 3616 | border-bottom: 0; 3617 | } 3618 | .nav-tabs-justified > li > a { 3619 | margin-right: 0; 3620 | border-radius: 4px; 3621 | } 3622 | .nav-tabs-justified > .active > a, 3623 | .nav-tabs-justified > .active > a:hover, 3624 | .nav-tabs-justified > .active > a:focus { 3625 | border: 1px solid #ddd; 3626 | } 3627 | @media (min-width: 768px) { 3628 | .nav-tabs-justified > li > a { 3629 | border-bottom: 1px solid #ddd; 3630 | border-radius: 4px 4px 0 0; 3631 | } 3632 | .nav-tabs-justified > .active > a, 3633 | .nav-tabs-justified > .active > a:hover, 3634 | .nav-tabs-justified > .active > a:focus { 3635 | border-bottom-color: #fff; 3636 | } 3637 | } 3638 | .tab-content > .tab-pane { 3639 | display: none; 3640 | } 3641 | .tab-content > .active { 3642 | display: block; 3643 | } 3644 | .nav-tabs .dropdown-menu { 3645 | margin-top: -1px; 3646 | border-top-left-radius: 0; 3647 | border-top-right-radius: 0; 3648 | } 3649 | .navbar { 3650 | position: relative; 3651 | min-height: 50px; 3652 | margin-bottom: 20px; 3653 | border: 1px solid transparent; 3654 | } 3655 | @media (min-width: 768px) { 3656 | .navbar { 3657 | border-radius: 4px; 3658 | } 3659 | } 3660 | @media (min-width: 768px) { 3661 | .navbar-header { 3662 | float: left; 3663 | } 3664 | } 3665 | .navbar-collapse { 3666 | max-height: 340px; 3667 | padding-right: 15px; 3668 | padding-left: 15px; 3669 | overflow-x: visible; 3670 | -webkit-overflow-scrolling: touch; 3671 | border-top: 1px solid transparent; 3672 | box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); 3673 | } 3674 | .navbar-collapse.in { 3675 | overflow-y: auto; 3676 | } 3677 | @media (min-width: 768px) { 3678 | .navbar-collapse { 3679 | width: auto; 3680 | border-top: 0; 3681 | box-shadow: none; 3682 | } 3683 | .navbar-collapse.collapse { 3684 | display: block !important; 3685 | height: auto !important; 3686 | padding-bottom: 0; 3687 | overflow: visible !important; 3688 | } 3689 | .navbar-collapse.in { 3690 | overflow-y: visible; 3691 | } 3692 | .navbar-fixed-top .navbar-collapse, 3693 | .navbar-static-top .navbar-collapse, 3694 | .navbar-fixed-bottom .navbar-collapse { 3695 | padding-right: 0; 3696 | padding-left: 0; 3697 | } 3698 | } 3699 | .container > .navbar-header, 3700 | .container-fluid > .navbar-header, 3701 | .container > .navbar-collapse, 3702 | .container-fluid > .navbar-collapse { 3703 | margin-right: -15px; 3704 | margin-left: -15px; 3705 | } 3706 | @media (min-width: 768px) { 3707 | .container > .navbar-header, 3708 | .container-fluid > .navbar-header, 3709 | .container > .navbar-collapse, 3710 | .container-fluid > .navbar-collapse { 3711 | margin-right: 0; 3712 | margin-left: 0; 3713 | } 3714 | } 3715 | .navbar-static-top { 3716 | z-index: 1000; 3717 | border-width: 0 0 1px; 3718 | } 3719 | @media (min-width: 768px) { 3720 | .navbar-static-top { 3721 | border-radius: 0; 3722 | } 3723 | } 3724 | .navbar-fixed-top, 3725 | .navbar-fixed-bottom { 3726 | position: fixed; 3727 | right: 0; 3728 | left: 0; 3729 | z-index: 1030; 3730 | } 3731 | @media (min-width: 768px) { 3732 | .navbar-fixed-top, 3733 | .navbar-fixed-bottom { 3734 | border-radius: 0; 3735 | } 3736 | } 3737 | .navbar-fixed-top { 3738 | top: 0; 3739 | border-width: 0 0 1px; 3740 | } 3741 | .navbar-fixed-bottom { 3742 | bottom: 0; 3743 | margin-bottom: 0; 3744 | border-width: 1px 0 0; 3745 | } 3746 | .navbar-brand { 3747 | float: left; 3748 | height: 20px; 3749 | padding: 15px 15px; 3750 | font-size: 18px; 3751 | line-height: 20px; 3752 | } 3753 | .navbar-brand:hover, 3754 | .navbar-brand:focus { 3755 | text-decoration: none; 3756 | } 3757 | @media (min-width: 768px) { 3758 | .navbar > .container .navbar-brand, 3759 | .navbar > .container-fluid .navbar-brand { 3760 | margin-left: -15px; 3761 | } 3762 | } 3763 | .navbar-toggle { 3764 | position: relative; 3765 | float: right; 3766 | padding: 9px 10px; 3767 | margin-top: 8px; 3768 | margin-right: 15px; 3769 | margin-bottom: 8px; 3770 | background-color: transparent; 3771 | background-image: none; 3772 | border: 1px solid transparent; 3773 | border-radius: 4px; 3774 | } 3775 | .navbar-toggle:focus { 3776 | outline: none; 3777 | } 3778 | .navbar-toggle .icon-bar { 3779 | display: block; 3780 | width: 22px; 3781 | height: 2px; 3782 | border-radius: 1px; 3783 | } 3784 | .navbar-toggle .icon-bar + .icon-bar { 3785 | margin-top: 4px; 3786 | } 3787 | @media (min-width: 768px) { 3788 | .navbar-toggle { 3789 | display: none; 3790 | } 3791 | } 3792 | .navbar-nav { 3793 | margin: 7.5px -15px; 3794 | } 3795 | .navbar-nav > li > a { 3796 | padding-top: 10px; 3797 | padding-bottom: 10px; 3798 | line-height: 20px; 3799 | } 3800 | @media (max-width: 767px) { 3801 | .navbar-nav .open .dropdown-menu { 3802 | position: static; 3803 | float: none; 3804 | width: auto; 3805 | margin-top: 0; 3806 | background-color: transparent; 3807 | border: 0; 3808 | box-shadow: none; 3809 | } 3810 | .navbar-nav .open .dropdown-menu > li > a, 3811 | .navbar-nav .open .dropdown-menu .dropdown-header { 3812 | padding: 5px 15px 5px 25px; 3813 | } 3814 | .navbar-nav .open .dropdown-menu > li > a { 3815 | line-height: 20px; 3816 | } 3817 | .navbar-nav .open .dropdown-menu > li > a:hover, 3818 | .navbar-nav .open .dropdown-menu > li > a:focus { 3819 | background-image: none; 3820 | } 3821 | } 3822 | @media (min-width: 768px) { 3823 | .navbar-nav { 3824 | float: left; 3825 | margin: 0; 3826 | } 3827 | .navbar-nav > li { 3828 | float: left; 3829 | } 3830 | .navbar-nav > li > a { 3831 | padding-top: 15px; 3832 | padding-bottom: 15px; 3833 | } 3834 | .navbar-nav.navbar-right:last-child { 3835 | margin-right: -15px; 3836 | } 3837 | } 3838 | @media (min-width: 768px) { 3839 | .navbar-left { 3840 | float: left !important; 3841 | } 3842 | .navbar-right { 3843 | float: right !important; 3844 | } 3845 | } 3846 | .navbar-form { 3847 | padding: 10px 15px; 3848 | margin-top: 8px; 3849 | margin-right: -15px; 3850 | margin-bottom: 8px; 3851 | margin-left: -15px; 3852 | border-top: 1px solid transparent; 3853 | border-bottom: 1px solid transparent; 3854 | -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); 3855 | box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); 3856 | } 3857 | @media (min-width: 768px) { 3858 | .navbar-form .form-group { 3859 | display: inline-block; 3860 | margin-bottom: 0; 3861 | vertical-align: middle; 3862 | } 3863 | .navbar-form .form-control { 3864 | display: inline-block; 3865 | width: auto; 3866 | vertical-align: middle; 3867 | } 3868 | .navbar-form .control-label { 3869 | margin-bottom: 0; 3870 | vertical-align: middle; 3871 | } 3872 | .navbar-form .radio, 3873 | .navbar-form .checkbox { 3874 | display: inline-block; 3875 | padding-left: 0; 3876 | margin-top: 0; 3877 | margin-bottom: 0; 3878 | vertical-align: middle; 3879 | } 3880 | .navbar-form .radio input[type="radio"], 3881 | .navbar-form .checkbox input[type="checkbox"] { 3882 | float: none; 3883 | margin-left: 0; 3884 | } 3885 | .navbar-form .has-feedback .form-control-feedback { 3886 | top: 0; 3887 | } 3888 | } 3889 | @media (max-width: 767px) { 3890 | .navbar-form .form-group { 3891 | margin-bottom: 5px; 3892 | } 3893 | } 3894 | @media (min-width: 768px) { 3895 | .navbar-form { 3896 | width: auto; 3897 | padding-top: 0; 3898 | padding-bottom: 0; 3899 | margin-right: 0; 3900 | margin-left: 0; 3901 | border: 0; 3902 | -webkit-box-shadow: none; 3903 | box-shadow: none; 3904 | } 3905 | .navbar-form.navbar-right:last-child { 3906 | margin-right: -15px; 3907 | } 3908 | } 3909 | .navbar-nav > li > .dropdown-menu { 3910 | margin-top: 0; 3911 | border-top-left-radius: 0; 3912 | border-top-right-radius: 0; 3913 | } 3914 | .navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { 3915 | border-bottom-right-radius: 0; 3916 | border-bottom-left-radius: 0; 3917 | } 3918 | .navbar-btn { 3919 | margin-top: 8px; 3920 | margin-bottom: 8px; 3921 | } 3922 | .navbar-btn.btn-sm { 3923 | margin-top: 10px; 3924 | margin-bottom: 10px; 3925 | } 3926 | .navbar-btn.btn-xs { 3927 | margin-top: 14px; 3928 | margin-bottom: 14px; 3929 | } 3930 | .navbar-text { 3931 | margin-top: 15px; 3932 | margin-bottom: 15px; 3933 | } 3934 | @media (min-width: 768px) { 3935 | .navbar-text { 3936 | float: left; 3937 | margin-right: 15px; 3938 | margin-left: 15px; 3939 | } 3940 | .navbar-text.navbar-right:last-child { 3941 | margin-right: 0; 3942 | } 3943 | } 3944 | .navbar-default { 3945 | background-color: #f8f8f8; 3946 | border-color: #e7e7e7; 3947 | } 3948 | .navbar-default .navbar-brand { 3949 | color: #777; 3950 | } 3951 | .navbar-default .navbar-brand:hover, 3952 | .navbar-default .navbar-brand:focus { 3953 | color: #5e5e5e; 3954 | background-color: transparent; 3955 | } 3956 | .navbar-default .navbar-text { 3957 | color: #777; 3958 | } 3959 | .navbar-default .navbar-nav > li > a { 3960 | color: #777; 3961 | } 3962 | .navbar-default .navbar-nav > li > a:hover, 3963 | .navbar-default .navbar-nav > li > a:focus { 3964 | color: #333; 3965 | background-color: transparent; 3966 | } 3967 | .navbar-default .navbar-nav > .active > a, 3968 | .navbar-default .navbar-nav > .active > a:hover, 3969 | .navbar-default .navbar-nav > .active > a:focus { 3970 | color: #555; 3971 | background-color: #e7e7e7; 3972 | } 3973 | .navbar-default .navbar-nav > .disabled > a, 3974 | .navbar-default .navbar-nav > .disabled > a:hover, 3975 | .navbar-default .navbar-nav > .disabled > a:focus { 3976 | color: #ccc; 3977 | background-color: transparent; 3978 | } 3979 | .navbar-default .navbar-toggle { 3980 | border-color: #ddd; 3981 | } 3982 | .navbar-default .navbar-toggle:hover, 3983 | .navbar-default .navbar-toggle:focus { 3984 | background-color: #ddd; 3985 | } 3986 | .navbar-default .navbar-toggle .icon-bar { 3987 | background-color: #888; 3988 | } 3989 | .navbar-default .navbar-collapse, 3990 | .navbar-default .navbar-form { 3991 | border-color: #e7e7e7; 3992 | } 3993 | .navbar-default .navbar-nav > .open > a, 3994 | .navbar-default .navbar-nav > .open > a:hover, 3995 | .navbar-default .navbar-nav > .open > a:focus { 3996 | color: #555; 3997 | background-color: #e7e7e7; 3998 | } 3999 | @media (max-width: 767px) { 4000 | .navbar-default .navbar-nav .open .dropdown-menu > li > a { 4001 | color: #777; 4002 | } 4003 | .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, 4004 | .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { 4005 | color: #333; 4006 | background-color: transparent; 4007 | } 4008 | .navbar-default .navbar-nav .open .dropdown-menu > .active > a, 4009 | .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, 4010 | .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { 4011 | color: #555; 4012 | background-color: #e7e7e7; 4013 | } 4014 | .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, 4015 | .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, 4016 | .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { 4017 | color: #ccc; 4018 | background-color: transparent; 4019 | } 4020 | } 4021 | .navbar-default .navbar-link { 4022 | color: #777; 4023 | } 4024 | .navbar-default .navbar-link:hover { 4025 | color: #333; 4026 | } 4027 | .navbar-inverse { 4028 | background-color: #222; 4029 | border-color: #080808; 4030 | } 4031 | .navbar-inverse .navbar-brand { 4032 | color: #999; 4033 | } 4034 | .navbar-inverse .navbar-brand:hover, 4035 | .navbar-inverse .navbar-brand:focus { 4036 | color: #fff; 4037 | background-color: transparent; 4038 | } 4039 | .navbar-inverse .navbar-text { 4040 | color: #999; 4041 | } 4042 | .navbar-inverse .navbar-nav > li > a { 4043 | color: #999; 4044 | } 4045 | .navbar-inverse .navbar-nav > li > a:hover, 4046 | .navbar-inverse .navbar-nav > li > a:focus { 4047 | color: #fff; 4048 | background-color: transparent; 4049 | } 4050 | .navbar-inverse .navbar-nav > .active > a, 4051 | .navbar-inverse .navbar-nav > .active > a:hover, 4052 | .navbar-inverse .navbar-nav > .active > a:focus { 4053 | color: #fff; 4054 | background-color: #080808; 4055 | } 4056 | .navbar-inverse .navbar-nav > .disabled > a, 4057 | .navbar-inverse .navbar-nav > .disabled > a:hover, 4058 | .navbar-inverse .navbar-nav > .disabled > a:focus { 4059 | color: #444; 4060 | background-color: transparent; 4061 | } 4062 | .navbar-inverse .navbar-toggle { 4063 | border-color: #333; 4064 | } 4065 | .navbar-inverse .navbar-toggle:hover, 4066 | .navbar-inverse .navbar-toggle:focus { 4067 | background-color: #333; 4068 | } 4069 | .navbar-inverse .navbar-toggle .icon-bar { 4070 | background-color: #fff; 4071 | } 4072 | .navbar-inverse .navbar-collapse, 4073 | .navbar-inverse .navbar-form { 4074 | border-color: #101010; 4075 | } 4076 | .navbar-inverse .navbar-nav > .open > a, 4077 | .navbar-inverse .navbar-nav > .open > a:hover, 4078 | .navbar-inverse .navbar-nav > .open > a:focus { 4079 | color: #fff; 4080 | background-color: #080808; 4081 | } 4082 | @media (max-width: 767px) { 4083 | .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { 4084 | border-color: #080808; 4085 | } 4086 | .navbar-inverse .navbar-nav .open .dropdown-menu .divider { 4087 | background-color: #080808; 4088 | } 4089 | .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { 4090 | color: #999; 4091 | } 4092 | .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, 4093 | .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { 4094 | color: #fff; 4095 | background-color: transparent; 4096 | } 4097 | .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, 4098 | .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, 4099 | .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { 4100 | color: #fff; 4101 | background-color: #080808; 4102 | } 4103 | .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, 4104 | .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, 4105 | .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { 4106 | color: #444; 4107 | background-color: transparent; 4108 | } 4109 | } 4110 | .navbar-inverse .navbar-link { 4111 | color: #999; 4112 | } 4113 | .navbar-inverse .navbar-link:hover { 4114 | color: #fff; 4115 | } 4116 | .breadcrumb { 4117 | padding: 8px 15px; 4118 | margin-bottom: 20px; 4119 | list-style: none; 4120 | background-color: #f5f5f5; 4121 | border-radius: 4px; 4122 | } 4123 | .breadcrumb > li { 4124 | display: inline-block; 4125 | } 4126 | .breadcrumb > li + li:before { 4127 | padding: 0 5px; 4128 | color: #ccc; 4129 | content: "/\00a0"; 4130 | } 4131 | .breadcrumb > .active { 4132 | color: #999; 4133 | } 4134 | .pagination { 4135 | display: inline-block; 4136 | padding-left: 0; 4137 | margin: 20px 0; 4138 | border-radius: 4px; 4139 | } 4140 | .pagination > li { 4141 | display: inline; 4142 | } 4143 | .pagination > li > a, 4144 | .pagination > li > span { 4145 | position: relative; 4146 | float: left; 4147 | padding: 6px 12px; 4148 | margin-left: -1px; 4149 | line-height: 1.428571429; 4150 | color: #428bca; 4151 | text-decoration: none; 4152 | background-color: #fff; 4153 | border: 1px solid #ddd; 4154 | } 4155 | .pagination > li:first-child > a, 4156 | .pagination > li:first-child > span { 4157 | margin-left: 0; 4158 | border-top-left-radius: 4px; 4159 | border-bottom-left-radius: 4px; 4160 | } 4161 | .pagination > li:last-child > a, 4162 | .pagination > li:last-child > span { 4163 | border-top-right-radius: 4px; 4164 | border-bottom-right-radius: 4px; 4165 | } 4166 | .pagination > li > a:hover, 4167 | .pagination > li > span:hover, 4168 | .pagination > li > a:focus, 4169 | .pagination > li > span:focus { 4170 | color: #2a6496; 4171 | background-color: #eee; 4172 | border-color: #ddd; 4173 | } 4174 | .pagination > .active > a, 4175 | .pagination > .active > span, 4176 | .pagination > .active > a:hover, 4177 | .pagination > .active > span:hover, 4178 | .pagination > .active > a:focus, 4179 | .pagination > .active > span:focus { 4180 | z-index: 2; 4181 | color: #fff; 4182 | cursor: default; 4183 | background-color: #428bca; 4184 | border-color: #428bca; 4185 | } 4186 | .pagination > .disabled > span, 4187 | .pagination > .disabled > span:hover, 4188 | .pagination > .disabled > span:focus, 4189 | .pagination > .disabled > a, 4190 | .pagination > .disabled > a:hover, 4191 | .pagination > .disabled > a:focus { 4192 | color: #999; 4193 | cursor: not-allowed; 4194 | background-color: #fff; 4195 | border-color: #ddd; 4196 | } 4197 | .pagination-lg > li > a, 4198 | .pagination-lg > li > span { 4199 | padding: 10px 16px; 4200 | font-size: 18px; 4201 | } 4202 | .pagination-lg > li:first-child > a, 4203 | .pagination-lg > li:first-child > span { 4204 | border-top-left-radius: 6px; 4205 | border-bottom-left-radius: 6px; 4206 | } 4207 | .pagination-lg > li:last-child > a, 4208 | .pagination-lg > li:last-child > span { 4209 | border-top-right-radius: 6px; 4210 | border-bottom-right-radius: 6px; 4211 | } 4212 | .pagination-sm > li > a, 4213 | .pagination-sm > li > span { 4214 | padding: 5px 10px; 4215 | font-size: 12px; 4216 | } 4217 | .pagination-sm > li:first-child > a, 4218 | .pagination-sm > li:first-child > span { 4219 | border-top-left-radius: 3px; 4220 | border-bottom-left-radius: 3px; 4221 | } 4222 | .pagination-sm > li:last-child > a, 4223 | .pagination-sm > li:last-child > span { 4224 | border-top-right-radius: 3px; 4225 | border-bottom-right-radius: 3px; 4226 | } 4227 | .pager { 4228 | padding-left: 0; 4229 | margin: 20px 0; 4230 | text-align: center; 4231 | list-style: none; 4232 | } 4233 | .pager li { 4234 | display: inline; 4235 | } 4236 | .pager li > a, 4237 | .pager li > span { 4238 | display: inline-block; 4239 | padding: 5px 14px; 4240 | background-color: #fff; 4241 | border: 1px solid #ddd; 4242 | border-radius: 15px; 4243 | } 4244 | .pager li > a:hover, 4245 | .pager li > a:focus { 4246 | text-decoration: none; 4247 | background-color: #eee; 4248 | } 4249 | .pager .next > a, 4250 | .pager .next > span { 4251 | float: right; 4252 | } 4253 | .pager .previous > a, 4254 | .pager .previous > span { 4255 | float: left; 4256 | } 4257 | .pager .disabled > a, 4258 | .pager .disabled > a:hover, 4259 | .pager .disabled > a:focus, 4260 | .pager .disabled > span { 4261 | color: #999; 4262 | cursor: not-allowed; 4263 | background-color: #fff; 4264 | } 4265 | .label { 4266 | display: inline; 4267 | padding: .2em .6em .3em; 4268 | font-size: 75%; 4269 | font-weight: bold; 4270 | line-height: 1; 4271 | color: #fff; 4272 | text-align: center; 4273 | white-space: nowrap; 4274 | vertical-align: baseline; 4275 | border-radius: .25em; 4276 | } 4277 | .label[href]:hover, 4278 | .label[href]:focus { 4279 | color: #fff; 4280 | text-decoration: none; 4281 | cursor: pointer; 4282 | } 4283 | .label:empty { 4284 | display: none; 4285 | } 4286 | .btn .label { 4287 | position: relative; 4288 | top: -1px; 4289 | } 4290 | .label-default { 4291 | background-color: #999; 4292 | } 4293 | .label-default[href]:hover, 4294 | .label-default[href]:focus { 4295 | background-color: #808080; 4296 | } 4297 | .label-primary { 4298 | background-color: #428bca; 4299 | } 4300 | .label-primary[href]:hover, 4301 | .label-primary[href]:focus { 4302 | background-color: #3071a9; 4303 | } 4304 | .label-success { 4305 | background-color: #5cb85c; 4306 | } 4307 | .label-success[href]:hover, 4308 | .label-success[href]:focus { 4309 | background-color: #449d44; 4310 | } 4311 | .label-info { 4312 | background-color: #5bc0de; 4313 | } 4314 | .label-info[href]:hover, 4315 | .label-info[href]:focus { 4316 | background-color: #31b0d5; 4317 | } 4318 | .label-warning { 4319 | background-color: #f0ad4e; 4320 | } 4321 | .label-warning[href]:hover, 4322 | .label-warning[href]:focus { 4323 | background-color: #ec971f; 4324 | } 4325 | .label-danger { 4326 | background-color: #d9534f; 4327 | } 4328 | .label-danger[href]:hover, 4329 | .label-danger[href]:focus { 4330 | background-color: #c9302c; 4331 | } 4332 | .badge { 4333 | display: inline-block; 4334 | min-width: 10px; 4335 | padding: 3px 7px; 4336 | font-size: 12px; 4337 | font-weight: bold; 4338 | line-height: 1; 4339 | color: #fff; 4340 | text-align: center; 4341 | white-space: nowrap; 4342 | vertical-align: baseline; 4343 | background-color: #999; 4344 | border-radius: 10px; 4345 | } 4346 | .badge:empty { 4347 | display: none; 4348 | } 4349 | .btn .badge { 4350 | position: relative; 4351 | top: -1px; 4352 | } 4353 | .btn-xs .badge { 4354 | top: 0; 4355 | padding: 1px 5px; 4356 | } 4357 | a.badge:hover, 4358 | a.badge:focus { 4359 | color: #fff; 4360 | text-decoration: none; 4361 | cursor: pointer; 4362 | } 4363 | a.list-group-item.active > .badge, 4364 | .nav-pills > .active > a > .badge { 4365 | color: #428bca; 4366 | background-color: #fff; 4367 | } 4368 | .nav-pills > li > a > .badge { 4369 | margin-left: 3px; 4370 | } 4371 | .jumbotron { 4372 | padding: 30px; 4373 | margin-bottom: 30px; 4374 | color: inherit; 4375 | background-color: #eee; 4376 | } 4377 | .jumbotron h1, 4378 | .jumbotron .h1 { 4379 | color: inherit; 4380 | } 4381 | .jumbotron p { 4382 | margin-bottom: 15px; 4383 | font-size: 21px; 4384 | font-weight: 200; 4385 | } 4386 | .container .jumbotron { 4387 | border-radius: 6px; 4388 | } 4389 | .jumbotron .container { 4390 | max-width: 100%; 4391 | } 4392 | @media screen and (min-width: 768px) { 4393 | .jumbotron { 4394 | padding-top: 48px; 4395 | padding-bottom: 48px; 4396 | } 4397 | .container .jumbotron { 4398 | padding-right: 60px; 4399 | padding-left: 60px; 4400 | } 4401 | .jumbotron h1, 4402 | .jumbotron .h1 { 4403 | font-size: 63px; 4404 | } 4405 | } 4406 | .thumbnail { 4407 | display: block; 4408 | padding: 4px; 4409 | margin-bottom: 20px; 4410 | line-height: 1.428571429; 4411 | background-color: #fff; 4412 | border: 1px solid #ddd; 4413 | border-radius: 4px; 4414 | -webkit-transition: all .2s ease-in-out; 4415 | transition: all .2s ease-in-out; 4416 | } 4417 | .thumbnail > img, 4418 | .thumbnail a > img { 4419 | display: block; 4420 | max-width: 100%; 4421 | height: auto; 4422 | margin-right: auto; 4423 | margin-left: auto; 4424 | } 4425 | a.thumbnail:hover, 4426 | a.thumbnail:focus, 4427 | a.thumbnail.active { 4428 | border-color: #428bca; 4429 | } 4430 | .thumbnail .caption { 4431 | padding: 9px; 4432 | color: #333; 4433 | } 4434 | .alert { 4435 | padding: 15px; 4436 | margin-bottom: 20px; 4437 | border: 1px solid transparent; 4438 | border-radius: 4px; 4439 | } 4440 | .alert h4 { 4441 | margin-top: 0; 4442 | color: inherit; 4443 | } 4444 | .alert .alert-link { 4445 | font-weight: bold; 4446 | } 4447 | .alert > p, 4448 | .alert > ul { 4449 | margin-bottom: 0; 4450 | } 4451 | .alert > p + p { 4452 | margin-top: 5px; 4453 | } 4454 | .alert-dismissable { 4455 | padding-right: 35px; 4456 | } 4457 | .alert-dismissable .close { 4458 | position: relative; 4459 | top: -2px; 4460 | right: -21px; 4461 | color: inherit; 4462 | } 4463 | .alert-success { 4464 | color: #3c763d; 4465 | background-color: #dff0d8; 4466 | border-color: #d6e9c6; 4467 | } 4468 | .alert-success hr { 4469 | border-top-color: #c9e2b3; 4470 | } 4471 | .alert-success .alert-link { 4472 | color: #2b542c; 4473 | } 4474 | .alert-info { 4475 | color: #31708f; 4476 | background-color: #d9edf7; 4477 | border-color: #bce8f1; 4478 | } 4479 | .alert-info hr { 4480 | border-top-color: #a6e1ec; 4481 | } 4482 | .alert-info .alert-link { 4483 | color: #245269; 4484 | } 4485 | .alert-warning { 4486 | color: #8a6d3b; 4487 | background-color: #fcf8e3; 4488 | border-color: #faebcc; 4489 | } 4490 | .alert-warning hr { 4491 | border-top-color: #f7e1b5; 4492 | } 4493 | .alert-warning .alert-link { 4494 | color: #66512c; 4495 | } 4496 | .alert-danger { 4497 | color: #a94442; 4498 | background-color: #f2dede; 4499 | border-color: #ebccd1; 4500 | } 4501 | .alert-danger hr { 4502 | border-top-color: #e4b9c0; 4503 | } 4504 | .alert-danger .alert-link { 4505 | color: #843534; 4506 | } 4507 | @-webkit-keyframes progress-bar-stripes { 4508 | from { 4509 | background-position: 40px 0; 4510 | } 4511 | to { 4512 | background-position: 0 0; 4513 | } 4514 | } 4515 | @keyframes progress-bar-stripes { 4516 | from { 4517 | background-position: 40px 0; 4518 | } 4519 | to { 4520 | background-position: 0 0; 4521 | } 4522 | } 4523 | .progress { 4524 | height: 20px; 4525 | margin-bottom: 20px; 4526 | overflow: hidden; 4527 | background-color: #f5f5f5; 4528 | border-radius: 4px; 4529 | -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); 4530 | box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); 4531 | } 4532 | .progress-bar { 4533 | float: left; 4534 | width: 0; 4535 | height: 100%; 4536 | font-size: 12px; 4537 | line-height: 20px; 4538 | color: #fff; 4539 | text-align: center; 4540 | background-color: #428bca; 4541 | -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); 4542 | box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); 4543 | -webkit-transition: width .6s ease; 4544 | transition: width .6s ease; 4545 | } 4546 | .progress-striped .progress-bar { 4547 | 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); 4548 | 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); 4549 | background-size: 40px 40px; 4550 | } 4551 | .progress.active .progress-bar { 4552 | -webkit-animation: progress-bar-stripes 2s linear infinite; 4553 | animation: progress-bar-stripes 2s linear infinite; 4554 | } 4555 | .progress-bar-success { 4556 | background-color: #5cb85c; 4557 | } 4558 | .progress-striped .progress-bar-success { 4559 | 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); 4560 | 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); 4561 | } 4562 | .progress-bar-info { 4563 | background-color: #5bc0de; 4564 | } 4565 | .progress-striped .progress-bar-info { 4566 | 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); 4567 | 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); 4568 | } 4569 | .progress-bar-warning { 4570 | background-color: #f0ad4e; 4571 | } 4572 | .progress-striped .progress-bar-warning { 4573 | 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); 4574 | 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); 4575 | } 4576 | .progress-bar-danger { 4577 | background-color: #d9534f; 4578 | } 4579 | .progress-striped .progress-bar-danger { 4580 | 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); 4581 | 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); 4582 | } 4583 | .media, 4584 | .media-body { 4585 | overflow: hidden; 4586 | zoom: 1; 4587 | } 4588 | .media, 4589 | .media .media { 4590 | margin-top: 15px; 4591 | } 4592 | .media:first-child { 4593 | margin-top: 0; 4594 | } 4595 | .media-object { 4596 | display: block; 4597 | } 4598 | .media-heading { 4599 | margin: 0 0 5px; 4600 | } 4601 | .media > .pull-left { 4602 | margin-right: 10px; 4603 | } 4604 | .media > .pull-right { 4605 | margin-left: 10px; 4606 | } 4607 | .media-list { 4608 | padding-left: 0; 4609 | list-style: none; 4610 | } 4611 | .list-group { 4612 | padding-left: 0; 4613 | margin-bottom: 20px; 4614 | } 4615 | .list-group-item { 4616 | position: relative; 4617 | display: block; 4618 | padding: 10px 15px; 4619 | margin-bottom: -1px; 4620 | background-color: #fff; 4621 | border: 1px solid #ddd; 4622 | } 4623 | .list-group-item:first-child { 4624 | border-top-left-radius: 4px; 4625 | border-top-right-radius: 4px; 4626 | } 4627 | .list-group-item:last-child { 4628 | margin-bottom: 0; 4629 | border-bottom-right-radius: 4px; 4630 | border-bottom-left-radius: 4px; 4631 | } 4632 | .list-group-item > .badge { 4633 | float: right; 4634 | } 4635 | .list-group-item > .badge + .badge { 4636 | margin-right: 5px; 4637 | } 4638 | a.list-group-item { 4639 | color: #555; 4640 | } 4641 | a.list-group-item .list-group-item-heading { 4642 | color: #333; 4643 | } 4644 | a.list-group-item:hover, 4645 | a.list-group-item:focus { 4646 | text-decoration: none; 4647 | background-color: #f5f5f5; 4648 | } 4649 | a.list-group-item.active, 4650 | a.list-group-item.active:hover, 4651 | a.list-group-item.active:focus { 4652 | z-index: 2; 4653 | color: #fff; 4654 | background-color: #428bca; 4655 | border-color: #428bca; 4656 | } 4657 | a.list-group-item.active .list-group-item-heading, 4658 | a.list-group-item.active:hover .list-group-item-heading, 4659 | a.list-group-item.active:focus .list-group-item-heading { 4660 | color: inherit; 4661 | } 4662 | a.list-group-item.active .list-group-item-text, 4663 | a.list-group-item.active:hover .list-group-item-text, 4664 | a.list-group-item.active:focus .list-group-item-text { 4665 | color: #e1edf7; 4666 | } 4667 | .list-group-item-success { 4668 | color: #3c763d; 4669 | background-color: #dff0d8; 4670 | } 4671 | a.list-group-item-success { 4672 | color: #3c763d; 4673 | } 4674 | a.list-group-item-success .list-group-item-heading { 4675 | color: inherit; 4676 | } 4677 | a.list-group-item-success:hover, 4678 | a.list-group-item-success:focus { 4679 | color: #3c763d; 4680 | background-color: #d0e9c6; 4681 | } 4682 | a.list-group-item-success.active, 4683 | a.list-group-item-success.active:hover, 4684 | a.list-group-item-success.active:focus { 4685 | color: #fff; 4686 | background-color: #3c763d; 4687 | border-color: #3c763d; 4688 | } 4689 | .list-group-item-info { 4690 | color: #31708f; 4691 | background-color: #d9edf7; 4692 | } 4693 | a.list-group-item-info { 4694 | color: #31708f; 4695 | } 4696 | a.list-group-item-info .list-group-item-heading { 4697 | color: inherit; 4698 | } 4699 | a.list-group-item-info:hover, 4700 | a.list-group-item-info:focus { 4701 | color: #31708f; 4702 | background-color: #c4e3f3; 4703 | } 4704 | a.list-group-item-info.active, 4705 | a.list-group-item-info.active:hover, 4706 | a.list-group-item-info.active:focus { 4707 | color: #fff; 4708 | background-color: #31708f; 4709 | border-color: #31708f; 4710 | } 4711 | .list-group-item-warning { 4712 | color: #8a6d3b; 4713 | background-color: #fcf8e3; 4714 | } 4715 | a.list-group-item-warning { 4716 | color: #8a6d3b; 4717 | } 4718 | a.list-group-item-warning .list-group-item-heading { 4719 | color: inherit; 4720 | } 4721 | a.list-group-item-warning:hover, 4722 | a.list-group-item-warning:focus { 4723 | color: #8a6d3b; 4724 | background-color: #faf2cc; 4725 | } 4726 | a.list-group-item-warning.active, 4727 | a.list-group-item-warning.active:hover, 4728 | a.list-group-item-warning.active:focus { 4729 | color: #fff; 4730 | background-color: #8a6d3b; 4731 | border-color: #8a6d3b; 4732 | } 4733 | .list-group-item-danger { 4734 | color: #a94442; 4735 | background-color: #f2dede; 4736 | } 4737 | a.list-group-item-danger { 4738 | color: #a94442; 4739 | } 4740 | a.list-group-item-danger .list-group-item-heading { 4741 | color: inherit; 4742 | } 4743 | a.list-group-item-danger:hover, 4744 | a.list-group-item-danger:focus { 4745 | color: #a94442; 4746 | background-color: #ebcccc; 4747 | } 4748 | a.list-group-item-danger.active, 4749 | a.list-group-item-danger.active:hover, 4750 | a.list-group-item-danger.active:focus { 4751 | color: #fff; 4752 | background-color: #a94442; 4753 | border-color: #a94442; 4754 | } 4755 | .list-group-item-heading { 4756 | margin-top: 0; 4757 | margin-bottom: 5px; 4758 | } 4759 | .list-group-item-text { 4760 | margin-bottom: 0; 4761 | line-height: 1.3; 4762 | } 4763 | .panel { 4764 | margin-bottom: 20px; 4765 | background-color: #fff; 4766 | border: 1px solid transparent; 4767 | border-radius: 4px; 4768 | -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05); 4769 | box-shadow: 0 1px 1px rgba(0, 0, 0, .05); 4770 | } 4771 | .panel-body { 4772 | padding: 15px; 4773 | } 4774 | .panel > .list-group { 4775 | margin-bottom: 0; 4776 | } 4777 | .panel > .list-group .list-group-item { 4778 | border-width: 1px 0; 4779 | border-radius: 0; 4780 | } 4781 | .panel > .list-group .list-group-item:first-child { 4782 | border-top: 0; 4783 | } 4784 | .panel > .list-group .list-group-item:last-child { 4785 | border-bottom: 0; 4786 | } 4787 | .panel > .list-group:first-child .list-group-item:first-child { 4788 | border-top-left-radius: 3px; 4789 | border-top-right-radius: 3px; 4790 | } 4791 | .panel > .list-group:last-child .list-group-item:last-child { 4792 | border-bottom-right-radius: 3px; 4793 | border-bottom-left-radius: 3px; 4794 | } 4795 | .panel-heading + .list-group .list-group-item:first-child { 4796 | border-top-width: 0; 4797 | } 4798 | .panel > .table, 4799 | .panel > .table-responsive > .table { 4800 | margin-bottom: 0; 4801 | } 4802 | .panel > .table:first-child > thead:first-child > tr:first-child td:first-child, 4803 | .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, 4804 | .panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, 4805 | .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, 4806 | .panel > .table:first-child > thead:first-child > tr:first-child th:first-child, 4807 | .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, 4808 | .panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, 4809 | .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { 4810 | border-top-left-radius: 3px; 4811 | } 4812 | .panel > .table:first-child > thead:first-child > tr:first-child td:last-child, 4813 | .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, 4814 | .panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, 4815 | .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, 4816 | .panel > .table:first-child > thead:first-child > tr:first-child th:last-child, 4817 | .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, 4818 | .panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, 4819 | .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { 4820 | border-top-right-radius: 3px; 4821 | } 4822 | .panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, 4823 | .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, 4824 | .panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, 4825 | .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, 4826 | .panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, 4827 | .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, 4828 | .panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, 4829 | .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { 4830 | border-bottom-left-radius: 3px; 4831 | } 4832 | .panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, 4833 | .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, 4834 | .panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, 4835 | .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, 4836 | .panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, 4837 | .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, 4838 | .panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, 4839 | .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { 4840 | border-bottom-right-radius: 3px; 4841 | } 4842 | .panel > .panel-body + .table, 4843 | .panel > .panel-body + .table-responsive { 4844 | border-top: 1px solid #ddd; 4845 | } 4846 | .panel > .table > tbody:first-child > tr:first-child th, 4847 | .panel > .table > tbody:first-child > tr:first-child td { 4848 | border-top: 0; 4849 | } 4850 | .panel > .table-bordered, 4851 | .panel > .table-responsive > .table-bordered { 4852 | border: 0; 4853 | } 4854 | .panel > .table-bordered > thead > tr > th:first-child, 4855 | .panel > .table-responsive > .table-bordered > thead > tr > th:first-child, 4856 | .panel > .table-bordered > tbody > tr > th:first-child, 4857 | .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, 4858 | .panel > .table-bordered > tfoot > tr > th:first-child, 4859 | .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, 4860 | .panel > .table-bordered > thead > tr > td:first-child, 4861 | .panel > .table-responsive > .table-bordered > thead > tr > td:first-child, 4862 | .panel > .table-bordered > tbody > tr > td:first-child, 4863 | .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, 4864 | .panel > .table-bordered > tfoot > tr > td:first-child, 4865 | .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { 4866 | border-left: 0; 4867 | } 4868 | .panel > .table-bordered > thead > tr > th:last-child, 4869 | .panel > .table-responsive > .table-bordered > thead > tr > th:last-child, 4870 | .panel > .table-bordered > tbody > tr > th:last-child, 4871 | .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, 4872 | .panel > .table-bordered > tfoot > tr > th:last-child, 4873 | .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, 4874 | .panel > .table-bordered > thead > tr > td:last-child, 4875 | .panel > .table-responsive > .table-bordered > thead > tr > td:last-child, 4876 | .panel > .table-bordered > tbody > tr > td:last-child, 4877 | .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, 4878 | .panel > .table-bordered > tfoot > tr > td:last-child, 4879 | .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { 4880 | border-right: 0; 4881 | } 4882 | .panel > .table-bordered > thead > tr:first-child > th, 4883 | .panel > .table-responsive > .table-bordered > thead > tr:first-child > th, 4884 | .panel > .table-bordered > tbody > tr:first-child > th, 4885 | .panel > .table-responsive > .table-bordered > tbody > tr:first-child > th, 4886 | .panel > .table-bordered > tfoot > tr:first-child > th, 4887 | .panel > .table-responsive > .table-bordered > tfoot > tr:first-child > th, 4888 | .panel > .table-bordered > thead > tr:first-child > td, 4889 | .panel > .table-responsive > .table-bordered > thead > tr:first-child > td, 4890 | .panel > .table-bordered > tbody > tr:first-child > td, 4891 | .panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, 4892 | .panel > .table-bordered > tfoot > tr:first-child > td, 4893 | .panel > .table-responsive > .table-bordered > tfoot > tr:first-child > td { 4894 | border-top: 0; 4895 | } 4896 | .panel > .table-bordered > thead > tr:last-child > th, 4897 | .panel > .table-responsive > .table-bordered > thead > tr:last-child > th, 4898 | .panel > .table-bordered > tbody > tr:last-child > th, 4899 | .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, 4900 | .panel > .table-bordered > tfoot > tr:last-child > th, 4901 | .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th, 4902 | .panel > .table-bordered > thead > tr:last-child > td, 4903 | .panel > .table-responsive > .table-bordered > thead > tr:last-child > td, 4904 | .panel > .table-bordered > tbody > tr:last-child > td, 4905 | .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, 4906 | .panel > .table-bordered > tfoot > tr:last-child > td, 4907 | .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td { 4908 | border-bottom: 0; 4909 | } 4910 | .panel > .table-responsive { 4911 | margin-bottom: 0; 4912 | border: 0; 4913 | } 4914 | .panel-heading { 4915 | padding: 10px 15px; 4916 | border-bottom: 1px solid transparent; 4917 | border-top-left-radius: 3px; 4918 | border-top-right-radius: 3px; 4919 | } 4920 | .panel-heading > .dropdown .dropdown-toggle { 4921 | color: inherit; 4922 | } 4923 | .panel-title { 4924 | margin-top: 0; 4925 | margin-bottom: 0; 4926 | font-size: 16px; 4927 | color: inherit; 4928 | } 4929 | .panel-title > a { 4930 | color: inherit; 4931 | } 4932 | .panel-footer { 4933 | padding: 10px 15px; 4934 | background-color: #f5f5f5; 4935 | border-top: 1px solid #ddd; 4936 | border-bottom-right-radius: 3px; 4937 | border-bottom-left-radius: 3px; 4938 | } 4939 | .panel-group { 4940 | margin-bottom: 20px; 4941 | } 4942 | .panel-group .panel { 4943 | margin-bottom: 0; 4944 | overflow: hidden; 4945 | border-radius: 4px; 4946 | } 4947 | .panel-group .panel + .panel { 4948 | margin-top: 5px; 4949 | } 4950 | .panel-group .panel-heading { 4951 | border-bottom: 0; 4952 | } 4953 | .panel-group .panel-heading + .panel-collapse .panel-body { 4954 | border-top: 1px solid #ddd; 4955 | } 4956 | .panel-group .panel-footer { 4957 | border-top: 0; 4958 | } 4959 | .panel-group .panel-footer + .panel-collapse .panel-body { 4960 | border-bottom: 1px solid #ddd; 4961 | } 4962 | .panel-default { 4963 | border-color: #ddd; 4964 | } 4965 | .panel-default > .panel-heading { 4966 | color: #333; 4967 | background-color: #f5f5f5; 4968 | border-color: #ddd; 4969 | } 4970 | .panel-default > .panel-heading + .panel-collapse .panel-body { 4971 | border-top-color: #ddd; 4972 | } 4973 | .panel-default > .panel-footer + .panel-collapse .panel-body { 4974 | border-bottom-color: #ddd; 4975 | } 4976 | .panel-primary { 4977 | border-color: #428bca; 4978 | } 4979 | .panel-primary > .panel-heading { 4980 | color: #fff; 4981 | background-color: #428bca; 4982 | border-color: #428bca; 4983 | } 4984 | .panel-primary > .panel-heading + .panel-collapse .panel-body { 4985 | border-top-color: #428bca; 4986 | } 4987 | .panel-primary > .panel-footer + .panel-collapse .panel-body { 4988 | border-bottom-color: #428bca; 4989 | } 4990 | .panel-success { 4991 | border-color: #d6e9c6; 4992 | } 4993 | .panel-success > .panel-heading { 4994 | color: #3c763d; 4995 | background-color: #dff0d8; 4996 | border-color: #d6e9c6; 4997 | } 4998 | .panel-success > .panel-heading + .panel-collapse .panel-body { 4999 | border-top-color: #d6e9c6; 5000 | } 5001 | .panel-success > .panel-footer + .panel-collapse .panel-body { 5002 | border-bottom-color: #d6e9c6; 5003 | } 5004 | .panel-info { 5005 | border-color: #bce8f1; 5006 | } 5007 | .panel-info > .panel-heading { 5008 | color: #31708f; 5009 | background-color: #d9edf7; 5010 | border-color: #bce8f1; 5011 | } 5012 | .panel-info > .panel-heading + .panel-collapse .panel-body { 5013 | border-top-color: #bce8f1; 5014 | } 5015 | .panel-info > .panel-footer + .panel-collapse .panel-body { 5016 | border-bottom-color: #bce8f1; 5017 | } 5018 | .panel-warning { 5019 | border-color: #faebcc; 5020 | } 5021 | .panel-warning > .panel-heading { 5022 | color: #8a6d3b; 5023 | background-color: #fcf8e3; 5024 | border-color: #faebcc; 5025 | } 5026 | .panel-warning > .panel-heading + .panel-collapse .panel-body { 5027 | border-top-color: #faebcc; 5028 | } 5029 | .panel-warning > .panel-footer + .panel-collapse .panel-body { 5030 | border-bottom-color: #faebcc; 5031 | } 5032 | .panel-danger { 5033 | border-color: #ebccd1; 5034 | } 5035 | .panel-danger > .panel-heading { 5036 | color: #a94442; 5037 | background-color: #f2dede; 5038 | border-color: #ebccd1; 5039 | } 5040 | .panel-danger > .panel-heading + .panel-collapse .panel-body { 5041 | border-top-color: #ebccd1; 5042 | } 5043 | .panel-danger > .panel-footer + .panel-collapse .panel-body { 5044 | border-bottom-color: #ebccd1; 5045 | } 5046 | .well { 5047 | min-height: 20px; 5048 | padding: 19px; 5049 | margin-bottom: 20px; 5050 | background-color: #f5f5f5; 5051 | border: 1px solid #e3e3e3; 5052 | border-radius: 4px; 5053 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); 5054 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); 5055 | } 5056 | .well blockquote { 5057 | border-color: #ddd; 5058 | border-color: rgba(0, 0, 0, .15); 5059 | } 5060 | .well-lg { 5061 | padding: 24px; 5062 | border-radius: 6px; 5063 | } 5064 | .well-sm { 5065 | padding: 9px; 5066 | border-radius: 3px; 5067 | } 5068 | .close { 5069 | float: right; 5070 | font-size: 21px; 5071 | font-weight: bold; 5072 | line-height: 1; 5073 | color: #000; 5074 | text-shadow: 0 1px 0 #fff; 5075 | filter: alpha(opacity=20); 5076 | opacity: .2; 5077 | } 5078 | .close:hover, 5079 | .close:focus { 5080 | color: #000; 5081 | text-decoration: none; 5082 | cursor: pointer; 5083 | filter: alpha(opacity=50); 5084 | opacity: .5; 5085 | } 5086 | button.close { 5087 | -webkit-appearance: none; 5088 | padding: 0; 5089 | cursor: pointer; 5090 | background: transparent; 5091 | border: 0; 5092 | } 5093 | .modal-open { 5094 | overflow: hidden; 5095 | } 5096 | .modal { 5097 | position: fixed; 5098 | top: 0; 5099 | right: 0; 5100 | bottom: 0; 5101 | left: 0; 5102 | z-index: 1050; 5103 | display: none; 5104 | overflow: auto; 5105 | overflow-y: scroll; 5106 | -webkit-overflow-scrolling: touch; 5107 | outline: 0; 5108 | } 5109 | .modal.fade .modal-dialog { 5110 | -webkit-transition: -webkit-transform .3s ease-out; 5111 | -moz-transition: -moz-transform .3s ease-out; 5112 | -o-transition: -o-transform .3s ease-out; 5113 | transition: transform .3s ease-out; 5114 | -webkit-transform: translate(0, -25%); 5115 | -ms-transform: translate(0, -25%); 5116 | transform: translate(0, -25%); 5117 | } 5118 | .modal.in .modal-dialog { 5119 | -webkit-transform: translate(0, 0); 5120 | -ms-transform: translate(0, 0); 5121 | transform: translate(0, 0); 5122 | } 5123 | .modal-dialog { 5124 | position: relative; 5125 | width: auto; 5126 | margin: 10px; 5127 | } 5128 | .modal-content { 5129 | position: relative; 5130 | background-color: #fff; 5131 | background-clip: padding-box; 5132 | border: 1px solid #999; 5133 | border: 1px solid rgba(0, 0, 0, .2); 5134 | border-radius: 6px; 5135 | outline: none; 5136 | -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5); 5137 | box-shadow: 0 3px 9px rgba(0, 0, 0, .5); 5138 | } 5139 | .modal-backdrop { 5140 | position: fixed; 5141 | top: 0; 5142 | right: 0; 5143 | bottom: 0; 5144 | left: 0; 5145 | z-index: 1040; 5146 | background-color: #000; 5147 | } 5148 | .modal-backdrop.fade { 5149 | filter: alpha(opacity=0); 5150 | opacity: 0; 5151 | } 5152 | .modal-backdrop.in { 5153 | filter: alpha(opacity=50); 5154 | opacity: .5; 5155 | } 5156 | .modal-header { 5157 | min-height: 16.428571429px; 5158 | padding: 15px; 5159 | border-bottom: 1px solid #e5e5e5; 5160 | } 5161 | .modal-header .close { 5162 | margin-top: -2px; 5163 | } 5164 | .modal-title { 5165 | margin: 0; 5166 | line-height: 1.428571429; 5167 | } 5168 | .modal-body { 5169 | position: relative; 5170 | padding: 20px; 5171 | } 5172 | .modal-footer { 5173 | padding: 19px 20px 20px; 5174 | margin-top: 15px; 5175 | text-align: right; 5176 | border-top: 1px solid #e5e5e5; 5177 | } 5178 | .modal-footer .btn + .btn { 5179 | margin-bottom: 0; 5180 | margin-left: 5px; 5181 | } 5182 | .modal-footer .btn-group .btn + .btn { 5183 | margin-left: -1px; 5184 | } 5185 | .modal-footer .btn-block + .btn-block { 5186 | margin-left: 0; 5187 | } 5188 | @media (min-width: 768px) { 5189 | .modal-dialog { 5190 | width: 600px; 5191 | margin: 30px auto; 5192 | } 5193 | .modal-content { 5194 | -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5); 5195 | box-shadow: 0 5px 15px rgba(0, 0, 0, .5); 5196 | } 5197 | .modal-sm { 5198 | width: 300px; 5199 | } 5200 | .modal-lg { 5201 | width: 900px; 5202 | } 5203 | } 5204 | .tooltip { 5205 | position: absolute; 5206 | z-index: 1030; 5207 | display: block; 5208 | font-size: 12px; 5209 | line-height: 1.4; 5210 | visibility: visible; 5211 | filter: alpha(opacity=0); 5212 | opacity: 0; 5213 | } 5214 | .tooltip.in { 5215 | filter: alpha(opacity=90); 5216 | opacity: .9; 5217 | } 5218 | .tooltip.top { 5219 | padding: 5px 0; 5220 | margin-top: -3px; 5221 | } 5222 | .tooltip.right { 5223 | padding: 0 5px; 5224 | margin-left: 3px; 5225 | } 5226 | .tooltip.bottom { 5227 | padding: 5px 0; 5228 | margin-top: 3px; 5229 | } 5230 | .tooltip.left { 5231 | padding: 0 5px; 5232 | margin-left: -3px; 5233 | } 5234 | .tooltip-inner { 5235 | max-width: 200px; 5236 | padding: 3px 8px; 5237 | color: #fff; 5238 | text-align: center; 5239 | text-decoration: none; 5240 | background-color: #000; 5241 | border-radius: 4px; 5242 | } 5243 | .tooltip-arrow { 5244 | position: absolute; 5245 | width: 0; 5246 | height: 0; 5247 | border-color: transparent; 5248 | border-style: solid; 5249 | } 5250 | .tooltip.top .tooltip-arrow { 5251 | bottom: 0; 5252 | left: 50%; 5253 | margin-left: -5px; 5254 | border-width: 5px 5px 0; 5255 | border-top-color: #000; 5256 | } 5257 | .tooltip.top-left .tooltip-arrow { 5258 | bottom: 0; 5259 | left: 5px; 5260 | border-width: 5px 5px 0; 5261 | border-top-color: #000; 5262 | } 5263 | .tooltip.top-right .tooltip-arrow { 5264 | right: 5px; 5265 | bottom: 0; 5266 | border-width: 5px 5px 0; 5267 | border-top-color: #000; 5268 | } 5269 | .tooltip.right .tooltip-arrow { 5270 | top: 50%; 5271 | left: 0; 5272 | margin-top: -5px; 5273 | border-width: 5px 5px 5px 0; 5274 | border-right-color: #000; 5275 | } 5276 | .tooltip.left .tooltip-arrow { 5277 | top: 50%; 5278 | right: 0; 5279 | margin-top: -5px; 5280 | border-width: 5px 0 5px 5px; 5281 | border-left-color: #000; 5282 | } 5283 | .tooltip.bottom .tooltip-arrow { 5284 | top: 0; 5285 | left: 50%; 5286 | margin-left: -5px; 5287 | border-width: 0 5px 5px; 5288 | border-bottom-color: #000; 5289 | } 5290 | .tooltip.bottom-left .tooltip-arrow { 5291 | top: 0; 5292 | left: 5px; 5293 | border-width: 0 5px 5px; 5294 | border-bottom-color: #000; 5295 | } 5296 | .tooltip.bottom-right .tooltip-arrow { 5297 | top: 0; 5298 | right: 5px; 5299 | border-width: 0 5px 5px; 5300 | border-bottom-color: #000; 5301 | } 5302 | .popover { 5303 | position: absolute; 5304 | top: 0; 5305 | left: 0; 5306 | z-index: 1010; 5307 | display: none; 5308 | max-width: 276px; 5309 | padding: 1px; 5310 | text-align: left; 5311 | white-space: normal; 5312 | background-color: #fff; 5313 | background-clip: padding-box; 5314 | border: 1px solid #ccc; 5315 | border: 1px solid rgba(0, 0, 0, .2); 5316 | border-radius: 6px; 5317 | -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2); 5318 | box-shadow: 0 5px 10px rgba(0, 0, 0, .2); 5319 | } 5320 | .popover.top { 5321 | margin-top: -10px; 5322 | } 5323 | .popover.right { 5324 | margin-left: 10px; 5325 | } 5326 | .popover.bottom { 5327 | margin-top: 10px; 5328 | } 5329 | .popover.left { 5330 | margin-left: -10px; 5331 | } 5332 | .popover-title { 5333 | padding: 8px 14px; 5334 | margin: 0; 5335 | font-size: 14px; 5336 | font-weight: normal; 5337 | line-height: 18px; 5338 | background-color: #f7f7f7; 5339 | border-bottom: 1px solid #ebebeb; 5340 | border-radius: 5px 5px 0 0; 5341 | } 5342 | .popover-content { 5343 | padding: 9px 14px; 5344 | } 5345 | .popover .arrow, 5346 | .popover .arrow:after { 5347 | position: absolute; 5348 | display: block; 5349 | width: 0; 5350 | height: 0; 5351 | border-color: transparent; 5352 | border-style: solid; 5353 | } 5354 | .popover .arrow { 5355 | border-width: 11px; 5356 | } 5357 | .popover .arrow:after { 5358 | content: ""; 5359 | border-width: 10px; 5360 | } 5361 | .popover.top .arrow { 5362 | bottom: -11px; 5363 | left: 50%; 5364 | margin-left: -11px; 5365 | border-top-color: #999; 5366 | border-top-color: rgba(0, 0, 0, .25); 5367 | border-bottom-width: 0; 5368 | } 5369 | .popover.top .arrow:after { 5370 | bottom: 1px; 5371 | margin-left: -10px; 5372 | content: " "; 5373 | border-top-color: #fff; 5374 | border-bottom-width: 0; 5375 | } 5376 | .popover.right .arrow { 5377 | top: 50%; 5378 | left: -11px; 5379 | margin-top: -11px; 5380 | border-right-color: #999; 5381 | border-right-color: rgba(0, 0, 0, .25); 5382 | border-left-width: 0; 5383 | } 5384 | .popover.right .arrow:after { 5385 | bottom: -10px; 5386 | left: 1px; 5387 | content: " "; 5388 | border-right-color: #fff; 5389 | border-left-width: 0; 5390 | } 5391 | .popover.bottom .arrow { 5392 | top: -11px; 5393 | left: 50%; 5394 | margin-left: -11px; 5395 | border-top-width: 0; 5396 | border-bottom-color: #999; 5397 | border-bottom-color: rgba(0, 0, 0, .25); 5398 | } 5399 | .popover.bottom .arrow:after { 5400 | top: 1px; 5401 | margin-left: -10px; 5402 | content: " "; 5403 | border-top-width: 0; 5404 | border-bottom-color: #fff; 5405 | } 5406 | .popover.left .arrow { 5407 | top: 50%; 5408 | right: -11px; 5409 | margin-top: -11px; 5410 | border-right-width: 0; 5411 | border-left-color: #999; 5412 | border-left-color: rgba(0, 0, 0, .25); 5413 | } 5414 | .popover.left .arrow:after { 5415 | right: 1px; 5416 | bottom: -10px; 5417 | content: " "; 5418 | border-right-width: 0; 5419 | border-left-color: #fff; 5420 | } 5421 | .carousel { 5422 | position: relative; 5423 | } 5424 | .carousel-inner { 5425 | position: relative; 5426 | width: 100%; 5427 | overflow: hidden; 5428 | } 5429 | .carousel-inner > .item { 5430 | position: relative; 5431 | display: none; 5432 | -webkit-transition: .6s ease-in-out left; 5433 | transition: .6s ease-in-out left; 5434 | } 5435 | .carousel-inner > .item > img, 5436 | .carousel-inner > .item > a > img { 5437 | display: block; 5438 | max-width: 100%; 5439 | height: auto; 5440 | line-height: 1; 5441 | } 5442 | .carousel-inner > .active, 5443 | .carousel-inner > .next, 5444 | .carousel-inner > .prev { 5445 | display: block; 5446 | } 5447 | .carousel-inner > .active { 5448 | left: 0; 5449 | } 5450 | .carousel-inner > .next, 5451 | .carousel-inner > .prev { 5452 | position: absolute; 5453 | top: 0; 5454 | width: 100%; 5455 | } 5456 | .carousel-inner > .next { 5457 | left: 100%; 5458 | } 5459 | .carousel-inner > .prev { 5460 | left: -100%; 5461 | } 5462 | .carousel-inner > .next.left, 5463 | .carousel-inner > .prev.right { 5464 | left: 0; 5465 | } 5466 | .carousel-inner > .active.left { 5467 | left: -100%; 5468 | } 5469 | .carousel-inner > .active.right { 5470 | left: 100%; 5471 | } 5472 | .carousel-control { 5473 | position: absolute; 5474 | top: 0; 5475 | bottom: 0; 5476 | left: 0; 5477 | width: 15%; 5478 | font-size: 20px; 5479 | color: #fff; 5480 | text-align: center; 5481 | text-shadow: 0 1px 2px rgba(0, 0, 0, .6); 5482 | filter: alpha(opacity=50); 5483 | opacity: .5; 5484 | } 5485 | .carousel-control.left { 5486 | background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, .5) 0%), color-stop(rgba(0, 0, 0, .0001) 100%)); 5487 | background-image: linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); 5488 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); 5489 | background-repeat: repeat-x; 5490 | } 5491 | .carousel-control.right { 5492 | right: 0; 5493 | left: auto; 5494 | background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, .0001) 0%), color-stop(rgba(0, 0, 0, .5) 100%)); 5495 | background-image: linear-gradient(to right, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); 5496 | filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); 5497 | background-repeat: repeat-x; 5498 | } 5499 | .carousel-control:hover, 5500 | .carousel-control:focus { 5501 | color: #fff; 5502 | text-decoration: none; 5503 | filter: alpha(opacity=90); 5504 | outline: none; 5505 | opacity: .9; 5506 | } 5507 | .carousel-control .icon-prev, 5508 | .carousel-control .icon-next, 5509 | .carousel-control .glyphicon-chevron-left, 5510 | .carousel-control .glyphicon-chevron-right { 5511 | position: absolute; 5512 | top: 50%; 5513 | z-index: 5; 5514 | display: inline-block; 5515 | } 5516 | .carousel-control .icon-prev, 5517 | .carousel-control .glyphicon-chevron-left { 5518 | left: 50%; 5519 | } 5520 | .carousel-control .icon-next, 5521 | .carousel-control .glyphicon-chevron-right { 5522 | right: 50%; 5523 | } 5524 | .carousel-control .icon-prev, 5525 | .carousel-control .icon-next { 5526 | width: 20px; 5527 | height: 20px; 5528 | margin-top: -10px; 5529 | margin-left: -10px; 5530 | font-family: serif; 5531 | } 5532 | .carousel-control .icon-prev:before { 5533 | content: '\2039'; 5534 | } 5535 | .carousel-control .icon-next:before { 5536 | content: '\203a'; 5537 | } 5538 | .carousel-indicators { 5539 | position: absolute; 5540 | bottom: 10px; 5541 | left: 50%; 5542 | z-index: 15; 5543 | width: 60%; 5544 | padding-left: 0; 5545 | margin-left: -30%; 5546 | text-align: center; 5547 | list-style: none; 5548 | } 5549 | .carousel-indicators li { 5550 | display: inline-block; 5551 | width: 10px; 5552 | height: 10px; 5553 | margin: 1px; 5554 | text-indent: -999px; 5555 | cursor: pointer; 5556 | background-color: #000 \9; 5557 | background-color: rgba(0, 0, 0, 0); 5558 | border: 1px solid #fff; 5559 | border-radius: 10px; 5560 | } 5561 | .carousel-indicators .active { 5562 | width: 12px; 5563 | height: 12px; 5564 | margin: 0; 5565 | background-color: #fff; 5566 | } 5567 | .carousel-caption { 5568 | position: absolute; 5569 | right: 15%; 5570 | bottom: 20px; 5571 | left: 15%; 5572 | z-index: 10; 5573 | padding-top: 20px; 5574 | padding-bottom: 20px; 5575 | color: #fff; 5576 | text-align: center; 5577 | text-shadow: 0 1px 2px rgba(0, 0, 0, .6); 5578 | } 5579 | .carousel-caption .btn { 5580 | text-shadow: none; 5581 | } 5582 | @media screen and (min-width: 768px) { 5583 | .carousel-control .glyphicons-chevron-left, 5584 | .carousel-control .glyphicons-chevron-right, 5585 | .carousel-control .icon-prev, 5586 | .carousel-control .icon-next { 5587 | width: 30px; 5588 | height: 30px; 5589 | margin-top: -15px; 5590 | margin-left: -15px; 5591 | font-size: 30px; 5592 | } 5593 | .carousel-caption { 5594 | right: 20%; 5595 | left: 20%; 5596 | padding-bottom: 30px; 5597 | } 5598 | .carousel-indicators { 5599 | bottom: 20px; 5600 | } 5601 | } 5602 | .clearfix:before, 5603 | .clearfix:after, 5604 | .container:before, 5605 | .container:after, 5606 | .container-fluid:before, 5607 | .container-fluid:after, 5608 | .row:before, 5609 | .row:after, 5610 | .form-horizontal .form-group:before, 5611 | .form-horizontal .form-group:after, 5612 | .btn-toolbar:before, 5613 | .btn-toolbar:after, 5614 | .btn-group-vertical > .btn-group:before, 5615 | .btn-group-vertical > .btn-group:after, 5616 | .nav:before, 5617 | .nav:after, 5618 | .navbar:before, 5619 | .navbar:after, 5620 | .navbar-header:before, 5621 | .navbar-header:after, 5622 | .navbar-collapse:before, 5623 | .navbar-collapse:after, 5624 | .pager:before, 5625 | .pager:after, 5626 | .panel-body:before, 5627 | .panel-body:after, 5628 | .modal-footer:before, 5629 | .modal-footer:after { 5630 | display: table; 5631 | content: " "; 5632 | } 5633 | .clearfix:after, 5634 | .container:after, 5635 | .container-fluid:after, 5636 | .row:after, 5637 | .form-horizontal .form-group:after, 5638 | .btn-toolbar:after, 5639 | .btn-group-vertical > .btn-group:after, 5640 | .nav:after, 5641 | .navbar:after, 5642 | .navbar-header:after, 5643 | .navbar-collapse:after, 5644 | .pager:after, 5645 | .panel-body:after, 5646 | .modal-footer:after { 5647 | clear: both; 5648 | } 5649 | .center-block { 5650 | display: block; 5651 | margin-right: auto; 5652 | margin-left: auto; 5653 | } 5654 | .pull-right { 5655 | float: right !important; 5656 | } 5657 | .pull-left { 5658 | float: left !important; 5659 | } 5660 | .hide { 5661 | display: none !important; 5662 | } 5663 | .show { 5664 | display: block !important; 5665 | } 5666 | .invisible { 5667 | visibility: hidden; 5668 | } 5669 | .text-hide { 5670 | font: 0/0 a; 5671 | color: transparent; 5672 | text-shadow: none; 5673 | background-color: transparent; 5674 | border: 0; 5675 | } 5676 | .hidden { 5677 | display: none !important; 5678 | visibility: hidden !important; 5679 | } 5680 | .affix { 5681 | position: fixed; 5682 | } 5683 | @-ms-viewport { 5684 | width: device-width; 5685 | } 5686 | .visible-xs, 5687 | tr.visible-xs, 5688 | th.visible-xs, 5689 | td.visible-xs { 5690 | display: none !important; 5691 | } 5692 | @media (max-width: 767px) { 5693 | .visible-xs { 5694 | display: block !important; 5695 | } 5696 | table.visible-xs { 5697 | display: table; 5698 | } 5699 | tr.visible-xs { 5700 | display: table-row !important; 5701 | } 5702 | th.visible-xs, 5703 | td.visible-xs { 5704 | display: table-cell !important; 5705 | } 5706 | } 5707 | .visible-sm, 5708 | tr.visible-sm, 5709 | th.visible-sm, 5710 | td.visible-sm { 5711 | display: none !important; 5712 | } 5713 | @media (min-width: 768px) and (max-width: 991px) { 5714 | .visible-sm { 5715 | display: block !important; 5716 | } 5717 | table.visible-sm { 5718 | display: table; 5719 | } 5720 | tr.visible-sm { 5721 | display: table-row !important; 5722 | } 5723 | th.visible-sm, 5724 | td.visible-sm { 5725 | display: table-cell !important; 5726 | } 5727 | } 5728 | .visible-md, 5729 | tr.visible-md, 5730 | th.visible-md, 5731 | td.visible-md { 5732 | display: none !important; 5733 | } 5734 | @media (min-width: 992px) and (max-width: 1199px) { 5735 | .visible-md { 5736 | display: block !important; 5737 | } 5738 | table.visible-md { 5739 | display: table; 5740 | } 5741 | tr.visible-md { 5742 | display: table-row !important; 5743 | } 5744 | th.visible-md, 5745 | td.visible-md { 5746 | display: table-cell !important; 5747 | } 5748 | } 5749 | .visible-lg, 5750 | tr.visible-lg, 5751 | th.visible-lg, 5752 | td.visible-lg { 5753 | display: none !important; 5754 | } 5755 | @media (min-width: 1200px) { 5756 | .visible-lg { 5757 | display: block !important; 5758 | } 5759 | table.visible-lg { 5760 | display: table; 5761 | } 5762 | tr.visible-lg { 5763 | display: table-row !important; 5764 | } 5765 | th.visible-lg, 5766 | td.visible-lg { 5767 | display: table-cell !important; 5768 | } 5769 | } 5770 | @media (max-width: 767px) { 5771 | .hidden-xs, 5772 | tr.hidden-xs, 5773 | th.hidden-xs, 5774 | td.hidden-xs { 5775 | display: none !important; 5776 | } 5777 | } 5778 | @media (min-width: 768px) and (max-width: 991px) { 5779 | .hidden-sm, 5780 | tr.hidden-sm, 5781 | th.hidden-sm, 5782 | td.hidden-sm { 5783 | display: none !important; 5784 | } 5785 | } 5786 | @media (min-width: 992px) and (max-width: 1199px) { 5787 | .hidden-md, 5788 | tr.hidden-md, 5789 | th.hidden-md, 5790 | td.hidden-md { 5791 | display: none !important; 5792 | } 5793 | } 5794 | @media (min-width: 1200px) { 5795 | .hidden-lg, 5796 | tr.hidden-lg, 5797 | th.hidden-lg, 5798 | td.hidden-lg { 5799 | display: none !important; 5800 | } 5801 | } 5802 | .visible-print, 5803 | tr.visible-print, 5804 | th.visible-print, 5805 | td.visible-print { 5806 | display: none !important; 5807 | } 5808 | @media print { 5809 | .visible-print { 5810 | display: block !important; 5811 | } 5812 | table.visible-print { 5813 | display: table; 5814 | } 5815 | tr.visible-print { 5816 | display: table-row !important; 5817 | } 5818 | th.visible-print, 5819 | td.visible-print { 5820 | display: table-cell !important; 5821 | } 5822 | } 5823 | @media print { 5824 | .hidden-print, 5825 | tr.hidden-print, 5826 | th.hidden-print, 5827 | td.hidden-print { 5828 | display: none !important; 5829 | } 5830 | } 5831 | /*# sourceMappingURL=bootstrap.css.map */ 5832 | -------------------------------------------------------------------------------- /server/test/controllers/WeatherControllerTest.scala: -------------------------------------------------------------------------------- 1 | 2 | package controllers 3 | 4 | import org.specs2.mutable._ 5 | import play.api.test.Helpers._ 6 | import play.api.test._ 7 | 8 | class WeatherControllerTest extends Specification { 9 | 10 | "Application" should { 11 | 12 | "send 404 on a bad request" in new WithApplication { 13 | route(FakeRequest(GET, "/boum")) must beNone 14 | } 15 | } 16 | } 17 | 18 | --------------------------------------------------------------------------------