From e6a28c389178400ab2d63adce084ed310cf3a43d Mon Sep 17 00:00:00 2001 From: monkeywarrior Date: Sun, 20 Apr 2014 17:21:17 +0000 Subject: [PATCH 01/20] Updated Selectize.js to v0.9.0 --- .../0.9.0/css/selectize.bootstrap2.css | 1 + .../0.9.0/css/selectize.bootstrap3.css | 1 + .../libs/selectize.js/0.9.0/css/selectize.css | 1 + .../0.9.0/css/selectize.default.css | 1 + .../0.9.0/css/selectize.legacy.css | 1 + ajax/libs/selectize.js/0.9.0/js/selectize.js | 2784 ++++++++++++++ .../selectize.js/0.9.0/js/selectize.min.js | 3 + .../0.9.0/js/standalone/selectize.js | 3370 +++++++++++++++++ .../0.9.0/js/standalone/selectize.min.js | 3 + .../0.9.0/less/plugins/drag_drop.less | 16 + .../0.9.0/less/plugins/dropdown_header.less | 20 + .../0.9.0/less/plugins/optgroup_columns.less | 17 + .../0.9.0/less/plugins/remove_button.less | 36 + .../0.9.0/less/selectize.bootstrap2.less | 161 + .../0.9.0/less/selectize.bootstrap3.less | 136 + .../0.9.0/less/selectize.default.less | 84 + .../0.9.0/less/selectize.legacy.less | 75 + .../selectize.js/0.9.0/less/selectize.less | 290 ++ ajax/libs/selectize.js/package.json | 2 +- 19 files changed, 7001 insertions(+), 1 deletion(-) create mode 100644 ajax/libs/selectize.js/0.9.0/css/selectize.bootstrap2.css create mode 100644 ajax/libs/selectize.js/0.9.0/css/selectize.bootstrap3.css create mode 100644 ajax/libs/selectize.js/0.9.0/css/selectize.css create mode 100644 ajax/libs/selectize.js/0.9.0/css/selectize.default.css create mode 100644 ajax/libs/selectize.js/0.9.0/css/selectize.legacy.css create mode 100644 ajax/libs/selectize.js/0.9.0/js/selectize.js create mode 100644 ajax/libs/selectize.js/0.9.0/js/selectize.min.js create mode 100644 ajax/libs/selectize.js/0.9.0/js/standalone/selectize.js create mode 100644 ajax/libs/selectize.js/0.9.0/js/standalone/selectize.min.js create mode 100644 ajax/libs/selectize.js/0.9.0/less/plugins/drag_drop.less create mode 100644 ajax/libs/selectize.js/0.9.0/less/plugins/dropdown_header.less create mode 100644 ajax/libs/selectize.js/0.9.0/less/plugins/optgroup_columns.less create mode 100644 ajax/libs/selectize.js/0.9.0/less/plugins/remove_button.less create mode 100644 ajax/libs/selectize.js/0.9.0/less/selectize.bootstrap2.less create mode 100644 ajax/libs/selectize.js/0.9.0/less/selectize.bootstrap3.less create mode 100644 ajax/libs/selectize.js/0.9.0/less/selectize.default.less create mode 100644 ajax/libs/selectize.js/0.9.0/less/selectize.legacy.less create mode 100644 ajax/libs/selectize.js/0.9.0/less/selectize.less diff --git a/ajax/libs/selectize.js/0.9.0/css/selectize.bootstrap2.css b/ajax/libs/selectize.js/0.9.0/css/selectize.bootstrap2.css new file mode 100644 index 000000000..e018dbc91 --- /dev/null +++ b/ajax/libs/selectize.js/0.9.0/css/selectize.bootstrap2.css @@ -0,0 +1 @@ +.selectize-control.plugin-drag_drop.multi>.selectize-input>div.ui-sortable-placeholder{visibility:visible!important;background:#f2f2f2!important;background:rgba(0,0,0,.06)!important;border:0 none!important;-webkit-box-shadow:inset 0 0 12px 4px #fff;box-shadow:inset 0 0 12px 4px #fff}.selectize-control.plugin-drag_drop .ui-sortable-placeholder::after{content:'!';visibility:hidden}.selectize-control.plugin-drag_drop .ui-sortable-helper{-webkit-box-shadow:0 2px 5px rgba(0,0,0,.2);box-shadow:0 2px 5px rgba(0,0,0,.2)}.selectize-dropdown-header{position:relative;padding:3px 10px;border-bottom:1px solid #d0d0d0;background:#f8f8f8;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.selectize-dropdown-header-close{position:absolute;right:10px;top:50%;color:#333;opacity:.4;margin-top:-12px;line-height:20px;font-size:20px!important}.selectize-dropdown-header-close:hover{color:#000}.selectize-dropdown.plugin-optgroup_columns .optgroup{border-right:1px solid #f2f2f2;border-top:0 none;float:left;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.selectize-dropdown.plugin-optgroup_columns .optgroup:last-child{border-right:0 none}.selectize-dropdown.plugin-optgroup_columns .optgroup:before{display:none}.selectize-dropdown.plugin-optgroup_columns .optgroup-header{border-top:0 none}.selectize-control.plugin-remove_button [data-value]{position:relative;padding-right:24px!important}.selectize-control.plugin-remove_button [data-value] .remove{position:absolute;top:0;right:0;bottom:0;width:17px;text-align:center;font-weight:700;font-size:12px;color:inherit;text-decoration:none;vertical-align:middle;display:inline-block;padding:1px 0 0;border-left:1px solid #ccc;-webkit-border-radius:0 2px 2px 0;-moz-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.selectize-control.plugin-remove_button [data-value] .remove:hover{background:rgba(0,0,0,.05)}.selectize-control.plugin-remove_button [data-value].active .remove{border-left-color:#0077b3}.selectize-control.plugin-remove_button .disabled [data-value] .remove:hover{background:0}.selectize-control.plugin-remove_button .disabled [data-value] .remove{border-left-color:#e0e0e0}.selectize-control{position:relative}.selectize-dropdown,.selectize-input,.selectize-input input{color:#333;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;-webkit-font-smoothing:inherit}.selectize-input,.selectize-control.single .selectize-input.input-active{background:#fff;cursor:text;display:inline-block}.selectize-input{border:1px solid #d0d0d0;padding:7px 10px;display:inline-block;width:100%;overflow:hidden;position:relative;z-index:1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:none;box-shadow:none;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.selectize-control.multi .selectize-input.has-items{padding:5px 10px 2px}.selectize-input.full{background-color:#fff}.selectize-input.disabled,.selectize-input.disabled *{cursor:default!important}.selectize-input.focus{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.15)}.selectize-input.dropdown-active{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.selectize-input>*{vertical-align:baseline;display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline}.selectize-control.multi .selectize-input>div{cursor:pointer;margin:0 3px 3px 0;padding:1px 3px;background:#e6e6e6;color:#333;border:1px solid #ccc}.selectize-control.multi .selectize-input>div.active{background:#08c;color:#fff;border:1px solid #0077b3}.selectize-control.multi .selectize-input.disabled>div,.selectize-control.multi .selectize-input.disabled>div.active{color:#474747;background:#fafafa;border:1px solid #e0e0e0}.selectize-input>input{padding:0!important;min-height:0!important;max-height:none!important;max-width:100%!important;margin:0!important;text-indent:0!important;border:0 none!important;background:none!important;line-height:inherit!important;-webkit-user-select:auto!important;-webkit-box-shadow:none!important;box-shadow:none!important}.selectize-input>input:focus{outline:0!important}.selectize-input::after{content:' ';display:block;clear:left}.selectize-input.dropdown-active::before{content:' ';display:block;position:absolute;background:#e5e5e5;height:1px;bottom:0;left:0;right:0}.selectize-dropdown{position:absolute;z-index:10;border:1px solid #d0d0d0;background:#fff;margin:-1px 0 0 0;border-top:0 none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.1);box-shadow:0 1px 3px rgba(0,0,0,.1);-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.selectize-dropdown [data-selectable]{cursor:pointer;overflow:hidden}.selectize-dropdown [data-selectable] .highlight{background:rgba(255,237,40,.4);-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px}.selectize-dropdown [data-selectable],.selectize-dropdown .optgroup-header{padding:3px 10px}.selectize-dropdown .optgroup:first-child .optgroup-header{border-top:0 none}.selectize-dropdown .optgroup-header{color:#999;background:#fff;cursor:default}.selectize-dropdown .active{background-color:#08c;color:#fff}.selectize-dropdown .active.create{color:#fff}.selectize-dropdown .create{color:rgba(51,51,51,.5)}.selectize-dropdown-content{overflow-y:auto;overflow-x:hidden;max-height:200px}.selectize-control.single .selectize-input,.selectize-control.single .selectize-input input{cursor:pointer}.selectize-control.single .selectize-input.input-active,.selectize-control.single .selectize-input.input-active input{cursor:text}.selectize-control.single .selectize-input:after{content:' ';display:block;position:absolute;top:50%;right:15px;margin-top:-3px;width:0;height:0;border-style:solid;border-width:5px 5px 0;border-color:#000 transparent transparent}.selectize-control.single .selectize-input.dropdown-active:after{margin-top:-4px;border-width:0 5px 5px;border-color:transparent transparent #000}.selectize-control.rtl.single .selectize-input:after{left:15px;right:auto}.selectize-control.rtl .selectize-input>input{margin:0 4px 0 -2px!important}.selectize-control .selectize-input.disabled{opacity:.5;background-color:#fff}.selectize-dropdown{margin:2px 0 0;z-index:1000;border:1px solid rgba(0,0,0,.2);border-radius:4px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2)}.selectize-dropdown .optgroup-header{font-size:11px;font-weight:700;text-shadow:0 1px 0 rgba(255,255,255,.5);text-transform:uppercase}.selectize-dropdown .optgroup:first-child:before{display:none}.selectize-dropdown .optgroup:before{content:' ';display:block;*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid #fff;margin-left:-10px;margin-right:-10px}.selectize-dropdown [data-selectable].active{background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0)}.selectize-dropdown-content{padding:5px 0}.selectize-dropdown-header{padding:6px 10px}.selectize-input{-webkit-transition:border linear .2s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear .2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear .2s}.selectize-input.dropdown-active{-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.selectize-input.dropdown-active::before{display:none}.selectize-input.input-active,.selectize-input.input-active:hover,.selectize-control.multi .selectize-input.focus{background:#fff!important;border-color:rgba(82,168,236,.8)!important;outline:0!important;outline:thin dotted \9!important;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6)!important;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6)!important;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(82,168,236,.6)!important}.selectize-control.single .selectize-input{color:#333;text-shadow:0 1px 1px rgba(255,255,255,.75);background-color:#f5f5f5;background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to bottom,#fff,#e6e6e6);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0);border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#e6e6e6;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05)}.selectize-control.single .selectize-input:hover,.selectize-control.single .selectize-input:focus,.selectize-control.single .selectize-input:active,.selectize-control.single .selectize-input.active,.selectize-control.single .selectize-input.disabled,.selectize-control.single .selectize-input[disabled]{color:#333;background-color:#e6e6e6;*background-color:#d9d9d9}.selectize-control.single .selectize-input:active,.selectize-control.single .selectize-input.active{background-color:#ccc \9}.selectize-control.single .selectize-input:hover{color:#333;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.selectize-control.single .selectize-input.disabled{background:#e6e6e6!important;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.selectize-control.multi .selectize-input{-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.selectize-control.multi .selectize-input.has-items{padding-left:7px;padding-right:7px}.selectize-control.multi .selectize-input>div{color:#333;text-shadow:none;background-color:#f5f5f5;background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to bottom,#fff,#e6e6e6);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0);border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#e6e6e6;border:1px solid #ccc;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05)}.selectize-control.multi .selectize-input>div.active{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05);color:#fff;text-shadow:none;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to bottom,#08c,#0077b3);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0);border-color:#0077b3 #0077b3 #046;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);*background-color:#08c;border:1px solid #08c} \ No newline at end of file diff --git a/ajax/libs/selectize.js/0.9.0/css/selectize.bootstrap3.css b/ajax/libs/selectize.js/0.9.0/css/selectize.bootstrap3.css new file mode 100644 index 000000000..407b748f7 --- /dev/null +++ b/ajax/libs/selectize.js/0.9.0/css/selectize.bootstrap3.css @@ -0,0 +1 @@ +.selectize-control.plugin-drag_drop.multi>.selectize-input>div.ui-sortable-placeholder{visibility:visible!important;background:#f2f2f2!important;background:rgba(0,0,0,.06)!important;border:0 none!important;-webkit-box-shadow:inset 0 0 12px 4px #fff;box-shadow:inset 0 0 12px 4px #fff}.selectize-control.plugin-drag_drop .ui-sortable-placeholder::after{content:'!';visibility:hidden}.selectize-control.plugin-drag_drop .ui-sortable-helper{-webkit-box-shadow:0 2px 5px rgba(0,0,0,.2);box-shadow:0 2px 5px rgba(0,0,0,.2)}.selectize-dropdown-header{position:relative;padding:3px 12px;border-bottom:1px solid #d0d0d0;background:#f8f8f8;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.selectize-dropdown-header-close{position:absolute;right:12px;top:50%;color:#333;opacity:.4;margin-top:-12px;line-height:20px;font-size:20px!important}.selectize-dropdown-header-close:hover{color:#000}.selectize-dropdown.plugin-optgroup_columns .optgroup{border-right:1px solid #f2f2f2;border-top:0 none;float:left;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.selectize-dropdown.plugin-optgroup_columns .optgroup:last-child{border-right:0 none}.selectize-dropdown.plugin-optgroup_columns .optgroup:before{display:none}.selectize-dropdown.plugin-optgroup_columns .optgroup-header{border-top:0 none}.selectize-control.plugin-remove_button [data-value]{position:relative;padding-right:24px!important}.selectize-control.plugin-remove_button [data-value] .remove{position:absolute;top:0;right:0;bottom:0;width:17px;text-align:center;font-weight:700;font-size:12px;color:inherit;text-decoration:none;vertical-align:middle;display:inline-block;padding:1px 0 0;border-left:1px solid rgba(0,0,0,0);-webkit-border-radius:0 2px 2px 0;-moz-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.selectize-control.plugin-remove_button [data-value] .remove:hover{background:rgba(0,0,0,.05)}.selectize-control.plugin-remove_button [data-value].active .remove{border-left-color:rgba(0,0,0,0)}.selectize-control.plugin-remove_button .disabled [data-value] .remove:hover{background:0}.selectize-control.plugin-remove_button .disabled [data-value] .remove{border-left-color:rgba(77,77,77,0)}.selectize-control{position:relative}.selectize-dropdown,.selectize-input,.selectize-input input{color:#333;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;-webkit-font-smoothing:inherit}.selectize-input,.selectize-control.single .selectize-input.input-active{background:#fff;cursor:text;display:inline-block}.selectize-input{border:1px solid #ccc;padding:6px 12px;display:inline-block;width:100%;overflow:hidden;position:relative;z-index:1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:none;box-shadow:none;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.selectize-control.multi .selectize-input.has-items{padding:5px 12px 2px}.selectize-input.full{background-color:#fff}.selectize-input.disabled,.selectize-input.disabled *{cursor:default!important}.selectize-input.focus{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.15)}.selectize-input.dropdown-active{-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.selectize-input>*{vertical-align:baseline;display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline}.selectize-control.multi .selectize-input>div{cursor:pointer;margin:0 3px 3px 0;padding:1px 3px;background:#efefef;color:#333;border:0 solid rgba(0,0,0,0)}.selectize-control.multi .selectize-input>div.active{background:#428bca;color:#fff;border:0 solid rgba(0,0,0,0)}.selectize-control.multi .selectize-input.disabled>div,.selectize-control.multi .selectize-input.disabled>div.active{color:gray;background:#fff;border:0 solid rgba(77,77,77,0)}.selectize-input>input{padding:0!important;min-height:0!important;max-height:none!important;max-width:100%!important;margin:0!important;text-indent:0!important;border:0 none!important;background:none!important;line-height:inherit!important;-webkit-user-select:auto!important;-webkit-box-shadow:none!important;box-shadow:none!important}.selectize-input>input:focus{outline:0!important}.selectize-input::after{content:' ';display:block;clear:left}.selectize-input.dropdown-active::before{content:' ';display:block;position:absolute;background:#fff;height:1px;bottom:0;left:0;right:0}.selectize-dropdown{position:absolute;z-index:10;border:1px solid #ccc;background:#fff;margin:-1px 0 0 0;border-top:0 none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.1);box-shadow:0 1px 3px rgba(0,0,0,.1);-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px}.selectize-dropdown [data-selectable]{cursor:pointer;overflow:hidden}.selectize-dropdown [data-selectable] .highlight{background:rgba(255,237,40,.4);-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px}.selectize-dropdown [data-selectable],.selectize-dropdown .optgroup-header{padding:3px 12px}.selectize-dropdown .optgroup:first-child .optgroup-header{border-top:0 none}.selectize-dropdown .optgroup-header{color:#999;background:#fff;cursor:default}.selectize-dropdown .active{background-color:#f5f5f5;color:#262626}.selectize-dropdown .active.create{color:#262626}.selectize-dropdown .create{color:rgba(51,51,51,.5)}.selectize-dropdown-content{overflow-y:auto;overflow-x:hidden;max-height:200px}.selectize-control.single .selectize-input,.selectize-control.single .selectize-input input{cursor:pointer}.selectize-control.single .selectize-input.input-active,.selectize-control.single .selectize-input.input-active input{cursor:text}.selectize-control.single .selectize-input:after{content:' ';display:block;position:absolute;top:50%;right:17px;margin-top:-3px;width:0;height:0;border-style:solid;border-width:5px 5px 0;border-color:#333 transparent transparent}.selectize-control.single .selectize-input.dropdown-active:after{margin-top:-4px;border-width:0 5px 5px;border-color:transparent transparent #333}.selectize-control.rtl.single .selectize-input:after{left:17px;right:auto}.selectize-control.rtl .selectize-input>input{margin:0 4px 0 -2px!important}.selectize-control .selectize-input.disabled{opacity:.5;background-color:#fff}.selectize-dropdown,.selectize-dropdown.form-control{height:auto;padding:0;margin:2px 0 0;z-index:1000;background:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.selectize-dropdown .optgroup-header{font-size:12px;line-height:1.42857143}.selectize-dropdown .optgroup:first-child:before{display:none}.selectize-dropdown .optgroup:before{content:' ';display:block;height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5;margin-left:-12px;margin-right:-12px}.selectize-dropdown-content{padding:5px 0}.selectize-dropdown-header{padding:6px 12px}.selectize-input{min-height:34px}.selectize-input.dropdown-active{-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.selectize-input.dropdown-active::before{display:none}.selectize-input.focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.selectize-control.multi .selectize-input.has-items{padding-left:9px;padding-right:9px}.selectize-control.multi .selectize-input>div{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.form-control.selectize-control{padding:0;height:auto;border:0;background:0;-webkit-box-shadow:none;box-shadow:none;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0} \ No newline at end of file diff --git a/ajax/libs/selectize.js/0.9.0/css/selectize.css b/ajax/libs/selectize.js/0.9.0/css/selectize.css new file mode 100644 index 000000000..9682f4169 --- /dev/null +++ b/ajax/libs/selectize.js/0.9.0/css/selectize.css @@ -0,0 +1 @@ +.selectize-control.plugin-drag_drop.multi>.selectize-input>div.ui-sortable-placeholder{visibility:visible!important;background:#f2f2f2!important;background:rgba(0,0,0,.06)!important;border:0 none!important;-webkit-box-shadow:inset 0 0 12px 4px #fff;box-shadow:inset 0 0 12px 4px #fff}.selectize-control.plugin-drag_drop .ui-sortable-placeholder::after{content:'!';visibility:hidden}.selectize-control.plugin-drag_drop .ui-sortable-helper{-webkit-box-shadow:0 2px 5px rgba(0,0,0,.2);box-shadow:0 2px 5px rgba(0,0,0,.2)}.selectize-dropdown-header{position:relative;padding:5px 8px;border-bottom:1px solid #d0d0d0;background:#f8f8f8;-webkit-border-radius:3px 3px 0 0;-moz-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.selectize-dropdown-header-close{position:absolute;right:8px;top:50%;color:#303030;opacity:.4;margin-top:-12px;line-height:20px;font-size:20px!important}.selectize-dropdown-header-close:hover{color:#000}.selectize-dropdown.plugin-optgroup_columns .optgroup{border-right:1px solid #f2f2f2;border-top:0 none;float:left;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.selectize-dropdown.plugin-optgroup_columns .optgroup:last-child{border-right:0 none}.selectize-dropdown.plugin-optgroup_columns .optgroup:before{display:none}.selectize-dropdown.plugin-optgroup_columns .optgroup-header{border-top:0 none}.selectize-control.plugin-remove_button [data-value]{position:relative;padding-right:24px!important}.selectize-control.plugin-remove_button [data-value] .remove{position:absolute;top:0;right:0;bottom:0;width:17px;text-align:center;font-weight:700;font-size:12px;color:inherit;text-decoration:none;vertical-align:middle;display:inline-block;padding:2px 0 0;border-left:1px solid #d0d0d0;-webkit-border-radius:0 2px 2px 0;-moz-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.selectize-control.plugin-remove_button [data-value] .remove:hover{background:rgba(0,0,0,.05)}.selectize-control.plugin-remove_button [data-value].active .remove{border-left-color:#cacaca}.selectize-control.plugin-remove_button .disabled [data-value] .remove:hover{background:0}.selectize-control.plugin-remove_button .disabled [data-value] .remove{border-left-color:#fff}.selectize-control{position:relative}.selectize-dropdown,.selectize-input,.selectize-input input{color:#303030;font-family:inherit;font-size:13px;line-height:18px;-webkit-font-smoothing:inherit}.selectize-input,.selectize-control.single .selectize-input.input-active{background:#fff;cursor:text;display:inline-block}.selectize-input{border:1px solid #d0d0d0;padding:8px;display:inline-block;width:100%;overflow:hidden;position:relative;z-index:1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.1);box-shadow:inset 0 1px 1px rgba(0,0,0,.1);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.selectize-control.multi .selectize-input.has-items{padding:6px 8px 3px}.selectize-input.full{background-color:#fff}.selectize-input.disabled,.selectize-input.disabled *{cursor:default!important}.selectize-input.focus{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.15)}.selectize-input.dropdown-active{-webkit-border-radius:3px 3px 0 0;-moz-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.selectize-input>*{vertical-align:baseline;display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline}.selectize-control.multi .selectize-input>div{cursor:pointer;margin:0 3px 3px 0;padding:2px 6px;background:#f2f2f2;color:#303030;border:0 solid #d0d0d0}.selectize-control.multi .selectize-input>div.active{background:#e8e8e8;color:#303030;border:0 solid #cacaca}.selectize-control.multi .selectize-input.disabled>div,.selectize-control.multi .selectize-input.disabled>div.active{color:#7d7d7d;background:#fff;border:0 solid #fff}.selectize-input>input{padding:0!important;min-height:0!important;max-height:none!important;max-width:100%!important;margin:0 2px 0 0!important;text-indent:0!important;border:0 none!important;background:none!important;line-height:inherit!important;-webkit-user-select:auto!important;-webkit-box-shadow:none!important;box-shadow:none!important}.selectize-input>input:focus{outline:0!important}.selectize-input::after{content:' ';display:block;clear:left}.selectize-input.dropdown-active::before{content:' ';display:block;position:absolute;background:#f0f0f0;height:1px;bottom:0;left:0;right:0}.selectize-dropdown{position:absolute;z-index:10;border:1px solid #d0d0d0;background:#fff;margin:-1px 0 0 0;border-top:0 none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.1);box-shadow:0 1px 3px rgba(0,0,0,.1);-webkit-border-radius:0 0 3px 3px;-moz-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.selectize-dropdown [data-selectable]{cursor:pointer;overflow:hidden}.selectize-dropdown [data-selectable] .highlight{background:rgba(125,168,208,.2);-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px}.selectize-dropdown [data-selectable],.selectize-dropdown .optgroup-header{padding:5px 8px}.selectize-dropdown .optgroup:first-child .optgroup-header{border-top:0 none}.selectize-dropdown .optgroup-header{color:#303030;background:#fff;cursor:default}.selectize-dropdown .active{background-color:#f5fafd;color:#495c68}.selectize-dropdown .active.create{color:#495c68}.selectize-dropdown .create{color:rgba(48,48,48,.5)}.selectize-dropdown-content{overflow-y:auto;overflow-x:hidden;max-height:200px}.selectize-control.single .selectize-input,.selectize-control.single .selectize-input input{cursor:pointer}.selectize-control.single .selectize-input.input-active,.selectize-control.single .selectize-input.input-active input{cursor:text}.selectize-control.single .selectize-input:after{content:' ';display:block;position:absolute;top:50%;right:15px;margin-top:-3px;width:0;height:0;border-style:solid;border-width:5px 5px 0;border-color:gray transparent transparent}.selectize-control.single .selectize-input.dropdown-active:after{margin-top:-4px;border-width:0 5px 5px;border-color:transparent transparent gray}.selectize-control.rtl.single .selectize-input:after{left:15px;right:auto}.selectize-control.rtl .selectize-input>input{margin:0 4px 0 -2px!important}.selectize-control .selectize-input.disabled{opacity:.5;background-color:#fafafa} \ No newline at end of file diff --git a/ajax/libs/selectize.js/0.9.0/css/selectize.default.css b/ajax/libs/selectize.js/0.9.0/css/selectize.default.css new file mode 100644 index 000000000..475b0f951 --- /dev/null +++ b/ajax/libs/selectize.js/0.9.0/css/selectize.default.css @@ -0,0 +1 @@ +.selectize-control.plugin-drag_drop.multi>.selectize-input>div.ui-sortable-placeholder{visibility:visible!important;background:#f2f2f2!important;background:rgba(0,0,0,.06)!important;border:0 none!important;-webkit-box-shadow:inset 0 0 12px 4px #fff;box-shadow:inset 0 0 12px 4px #fff}.selectize-control.plugin-drag_drop .ui-sortable-placeholder::after{content:'!';visibility:hidden}.selectize-control.plugin-drag_drop .ui-sortable-helper{-webkit-box-shadow:0 2px 5px rgba(0,0,0,.2);box-shadow:0 2px 5px rgba(0,0,0,.2)}.selectize-dropdown-header{position:relative;padding:5px 8px;border-bottom:1px solid #d0d0d0;background:#f8f8f8;-webkit-border-radius:3px 3px 0 0;-moz-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.selectize-dropdown-header-close{position:absolute;right:8px;top:50%;color:#303030;opacity:.4;margin-top:-12px;line-height:20px;font-size:20px!important}.selectize-dropdown-header-close:hover{color:#000}.selectize-dropdown.plugin-optgroup_columns .optgroup{border-right:1px solid #f2f2f2;border-top:0 none;float:left;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.selectize-dropdown.plugin-optgroup_columns .optgroup:last-child{border-right:0 none}.selectize-dropdown.plugin-optgroup_columns .optgroup:before{display:none}.selectize-dropdown.plugin-optgroup_columns .optgroup-header{border-top:0 none}.selectize-control.plugin-remove_button [data-value]{position:relative;padding-right:24px!important}.selectize-control.plugin-remove_button [data-value] .remove{position:absolute;top:0;right:0;bottom:0;width:17px;text-align:center;font-weight:700;font-size:12px;color:inherit;text-decoration:none;vertical-align:middle;display:inline-block;padding:2px 0 0;border-left:1px solid #0073bb;-webkit-border-radius:0 2px 2px 0;-moz-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.selectize-control.plugin-remove_button [data-value] .remove:hover{background:rgba(0,0,0,.05)}.selectize-control.plugin-remove_button [data-value].active .remove{border-left-color:#00578d}.selectize-control.plugin-remove_button .disabled [data-value] .remove:hover{background:0}.selectize-control.plugin-remove_button .disabled [data-value] .remove{border-left-color:#aaa}.selectize-control{position:relative}.selectize-dropdown,.selectize-input,.selectize-input input{color:#303030;font-family:inherit;font-size:13px;line-height:18px;-webkit-font-smoothing:inherit}.selectize-input,.selectize-control.single .selectize-input.input-active{background:#fff;cursor:text;display:inline-block}.selectize-input{border:1px solid #d0d0d0;padding:8px;display:inline-block;width:100%;overflow:hidden;position:relative;z-index:1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.1);box-shadow:inset 0 1px 1px rgba(0,0,0,.1);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.selectize-control.multi .selectize-input.has-items{padding:5px 8px 2px}.selectize-input.full{background-color:#fff}.selectize-input.disabled,.selectize-input.disabled *{cursor:default!important}.selectize-input.focus{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.15)}.selectize-input.dropdown-active{-webkit-border-radius:3px 3px 0 0;-moz-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.selectize-input>*{vertical-align:baseline;display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline}.selectize-control.multi .selectize-input>div{cursor:pointer;margin:0 3px 3px 0;padding:2px 6px;background:#1da7ee;color:#fff;border:1px solid #0073bb}.selectize-control.multi .selectize-input>div.active{background:#92c836;color:#fff;border:1px solid #00578d}.selectize-control.multi .selectize-input.disabled>div,.selectize-control.multi .selectize-input.disabled>div.active{color:#fff;background:#d2d2d2;border:1px solid #aaa}.selectize-input>input{padding:0!important;min-height:0!important;max-height:none!important;max-width:100%!important;margin:0 1px!important;text-indent:0!important;border:0 none!important;background:none!important;line-height:inherit!important;-webkit-user-select:auto!important;-webkit-box-shadow:none!important;box-shadow:none!important}.selectize-input>input:focus{outline:0!important}.selectize-input::after{content:' ';display:block;clear:left}.selectize-input.dropdown-active::before{content:' ';display:block;position:absolute;background:#f0f0f0;height:1px;bottom:0;left:0;right:0}.selectize-dropdown{position:absolute;z-index:10;border:1px solid #d0d0d0;background:#fff;margin:-1px 0 0 0;border-top:0 none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.1);box-shadow:0 1px 3px rgba(0,0,0,.1);-webkit-border-radius:0 0 3px 3px;-moz-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.selectize-dropdown [data-selectable]{cursor:pointer;overflow:hidden}.selectize-dropdown [data-selectable] .highlight{background:rgba(125,168,208,.2);-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px}.selectize-dropdown [data-selectable],.selectize-dropdown .optgroup-header{padding:5px 8px}.selectize-dropdown .optgroup:first-child .optgroup-header{border-top:0 none}.selectize-dropdown .optgroup-header{color:#303030;background:#fff;cursor:default}.selectize-dropdown .active{background-color:#f5fafd;color:#495c68}.selectize-dropdown .active.create{color:#495c68}.selectize-dropdown .create{color:rgba(48,48,48,.5)}.selectize-dropdown-content{overflow-y:auto;overflow-x:hidden;max-height:200px}.selectize-control.single .selectize-input,.selectize-control.single .selectize-input input{cursor:pointer}.selectize-control.single .selectize-input.input-active,.selectize-control.single .selectize-input.input-active input{cursor:text}.selectize-control.single .selectize-input:after{content:' ';display:block;position:absolute;top:50%;right:15px;margin-top:-3px;width:0;height:0;border-style:solid;border-width:5px 5px 0;border-color:gray transparent transparent}.selectize-control.single .selectize-input.dropdown-active:after{margin-top:-4px;border-width:0 5px 5px;border-color:transparent transparent gray}.selectize-control.rtl.single .selectize-input:after{left:15px;right:auto}.selectize-control.rtl .selectize-input>input{margin:0 4px 0 -2px!important}.selectize-control .selectize-input.disabled{opacity:.5;background-color:#fafafa}.selectize-control.multi .selectize-input.has-items{padding-left:5px;padding-right:5px}.selectize-control.multi .selectize-input.disabled [data-value]{color:#999;text-shadow:none;background:0;-webkit-box-shadow:none;box-shadow:none}.selectize-control.multi .selectize-input.disabled [data-value],.selectize-control.multi .selectize-input.disabled [data-value] .remove{border-color:#e6e6e6}.selectize-control.multi .selectize-input.disabled [data-value] .remove{background:0}.selectize-control.multi .selectize-input [data-value]{text-shadow:0 1px 0 rgba(0,51,83,.3);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;background-color:#1b9dec;background-image:-moz-linear-gradient(top,#1da7ee,#178ee9);background-image:-webkit-gradient(linear,0 0,0 100%,from(#1da7ee),to(#178ee9));background-image:-webkit-linear-gradient(top,#1da7ee,#178ee9);background-image:-o-linear-gradient(top,#1da7ee,#178ee9);background-image:linear-gradient(to bottom,#1da7ee,#178ee9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff1da7ee', endColorstr='#ff178ee9', GradientType=0);-webkit-box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.03);box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.03)}.selectize-control.multi .selectize-input [data-value].active{background-color:#0085d4;background-image:-moz-linear-gradient(top,#008fd8,#0075cf);background-image:-webkit-gradient(linear,0 0,0 100%,from(#008fd8),to(#0075cf));background-image:-webkit-linear-gradient(top,#008fd8,#0075cf);background-image:-o-linear-gradient(top,#008fd8,#0075cf);background-image:linear-gradient(to bottom,#008fd8,#0075cf);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff008fd8', endColorstr='#ff0075cf', GradientType=0)}.selectize-control.single .selectize-input{-webkit-box-shadow:0 1px 0 rgba(0,0,0,.05),inset 0 1px 0 rgba(255,255,255,.8);box-shadow:0 1px 0 rgba(0,0,0,.05),inset 0 1px 0 rgba(255,255,255,.8);background-color:#f9f9f9;background-image:-moz-linear-gradient(top,#fefefe,#f2f2f2);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fefefe),to(#f2f2f2));background-image:-webkit-linear-gradient(top,#fefefe,#f2f2f2);background-image:-o-linear-gradient(top,#fefefe,#f2f2f2);background-image:linear-gradient(to bottom,#fefefe,#f2f2f2);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffefefe', endColorstr='#fff2f2f2', GradientType=0)}.selectize-control.single .selectize-input,.selectize-dropdown.single{border-color:#b8b8b8}.selectize-dropdown .optgroup-header{padding-top:7px;font-weight:700;font-size:.85em}.selectize-dropdown .optgroup{border-top:1px solid #f0f0f0}.selectize-dropdown .optgroup:first-child{border-top:0 none} \ No newline at end of file diff --git a/ajax/libs/selectize.js/0.9.0/css/selectize.legacy.css b/ajax/libs/selectize.js/0.9.0/css/selectize.legacy.css new file mode 100644 index 000000000..d0e36a127 --- /dev/null +++ b/ajax/libs/selectize.js/0.9.0/css/selectize.legacy.css @@ -0,0 +1 @@ +.selectize-control.plugin-drag_drop.multi>.selectize-input>div.ui-sortable-placeholder{visibility:visible!important;background:#f2f2f2!important;background:rgba(0,0,0,.06)!important;border:0 none!important;-webkit-box-shadow:inset 0 0 12px 4px #fff;box-shadow:inset 0 0 12px 4px #fff}.selectize-control.plugin-drag_drop .ui-sortable-placeholder::after{content:'!';visibility:hidden}.selectize-control.plugin-drag_drop .ui-sortable-helper{-webkit-box-shadow:0 2px 5px rgba(0,0,0,.2);box-shadow:0 2px 5px rgba(0,0,0,.2)}.selectize-dropdown-header{position:relative;padding:7px 10px;border-bottom:1px solid #d0d0d0;background:#f8f8f8;-webkit-border-radius:3px 3px 0 0;-moz-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.selectize-dropdown-header-close{position:absolute;right:10px;top:50%;color:#303030;opacity:.4;margin-top:-12px;line-height:20px;font-size:20px!important}.selectize-dropdown-header-close:hover{color:#000}.selectize-dropdown.plugin-optgroup_columns .optgroup{border-right:1px solid #f2f2f2;border-top:0 none;float:left;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.selectize-dropdown.plugin-optgroup_columns .optgroup:last-child{border-right:0 none}.selectize-dropdown.plugin-optgroup_columns .optgroup:before{display:none}.selectize-dropdown.plugin-optgroup_columns .optgroup-header{border-top:0 none}.selectize-control.plugin-remove_button [data-value]{position:relative;padding-right:24px!important}.selectize-control.plugin-remove_button [data-value] .remove{position:absolute;top:0;right:0;bottom:0;width:17px;text-align:center;font-weight:700;font-size:12px;color:inherit;text-decoration:none;vertical-align:middle;display:inline-block;padding:1px 0 0;border-left:1px solid #74b21e;-webkit-border-radius:0 2px 2px 0;-moz-border-radius:0 2px 2px 0;border-radius:0 2px 2px 0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.selectize-control.plugin-remove_button [data-value] .remove:hover{background:rgba(0,0,0,.05)}.selectize-control.plugin-remove_button [data-value].active .remove{border-left-color:#6f9839}.selectize-control.plugin-remove_button .disabled [data-value] .remove:hover{background:0}.selectize-control.plugin-remove_button .disabled [data-value] .remove{border-left-color:#b4b4b4}.selectize-control{position:relative}.selectize-dropdown,.selectize-input,.selectize-input input{color:#303030;font-family:inherit;font-size:13px;line-height:20px;-webkit-font-smoothing:inherit}.selectize-input,.selectize-control.single .selectize-input.input-active{background:#fff;cursor:text;display:inline-block}.selectize-input{border:1px solid #d0d0d0;padding:10px;display:inline-block;width:100%;overflow:hidden;position:relative;z-index:1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.1);box-shadow:inset 0 1px 1px rgba(0,0,0,.1);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.selectize-control.multi .selectize-input.has-items{padding:8px 10px 4px}.selectize-input.full{background-color:#f2f2f2}.selectize-input.disabled,.selectize-input.disabled *{cursor:default!important}.selectize-input.focus{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.15)}.selectize-input.dropdown-active{-webkit-border-radius:3px 3px 0 0;-moz-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.selectize-input>*{vertical-align:baseline;display:-moz-inline-stack;display:inline-block;zoom:1;*display:inline}.selectize-control.multi .selectize-input>div{cursor:pointer;margin:0 4px 4px 0;padding:1px 5px;background:#b8e76f;color:#3d5d18;border:1px solid #74b21e}.selectize-control.multi .selectize-input>div.active{background:#92c836;color:#303030;border:1px solid #6f9839}.selectize-control.multi .selectize-input.disabled>div,.selectize-control.multi .selectize-input.disabled>div.active{color:#878787;background:#f8f8f8;border:1px solid #b4b4b4}.selectize-input>input{padding:0!important;min-height:0!important;max-height:none!important;max-width:100%!important;margin:0 2px 0 0!important;text-indent:0!important;border:0 none!important;background:none!important;line-height:inherit!important;-webkit-user-select:auto!important;-webkit-box-shadow:none!important;box-shadow:none!important}.selectize-input>input:focus{outline:0!important}.selectize-input::after{content:' ';display:block;clear:left}.selectize-input.dropdown-active::before{content:' ';display:block;position:absolute;background:#f0f0f0;height:1px;bottom:0;left:0;right:0}.selectize-dropdown{position:absolute;z-index:10;border:1px solid #d0d0d0;background:#fff;margin:-1px 0 0 0;border-top:0 none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.1);box-shadow:0 1px 3px rgba(0,0,0,.1);-webkit-border-radius:0 0 3px 3px;-moz-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.selectize-dropdown [data-selectable]{cursor:pointer;overflow:hidden}.selectize-dropdown [data-selectable] .highlight{background:rgba(255,237,40,.4);-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px}.selectize-dropdown [data-selectable],.selectize-dropdown .optgroup-header{padding:7px 10px}.selectize-dropdown .optgroup:first-child .optgroup-header{border-top:0 none}.selectize-dropdown .optgroup-header{color:#303030;background:#f8f8f8;cursor:default}.selectize-dropdown .active{background-color:#fffceb;color:#303030}.selectize-dropdown .active.create{color:#303030}.selectize-dropdown .create{color:rgba(48,48,48,.5)}.selectize-dropdown-content{overflow-y:auto;overflow-x:hidden;max-height:200px}.selectize-control.single .selectize-input,.selectize-control.single .selectize-input input{cursor:pointer}.selectize-control.single .selectize-input.input-active,.selectize-control.single .selectize-input.input-active input{cursor:text}.selectize-control.single .selectize-input:after{content:' ';display:block;position:absolute;top:50%;right:15px;margin-top:-3px;width:0;height:0;border-style:solid;border-width:5px 5px 0;border-color:gray transparent transparent}.selectize-control.single .selectize-input.dropdown-active:after{margin-top:-4px;border-width:0 5px 5px;border-color:transparent transparent gray}.selectize-control.rtl.single .selectize-input:after{left:15px;right:auto}.selectize-control.rtl .selectize-input>input{margin:0 4px 0 -2px!important}.selectize-control .selectize-input.disabled{opacity:.5;background-color:#fafafa}.selectize-control.multi .selectize-input [data-value]{text-shadow:0 1px 0 rgba(255,255,255,.1);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;background-color:#b2e567;background-image:-moz-linear-gradient(top,#b8e76f,#a9e25c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#b8e76f),to(#a9e25c));background-image:-webkit-linear-gradient(top,#b8e76f,#a9e25c);background-image:-o-linear-gradient(top,#b8e76f,#a9e25c);background-image:linear-gradient(to bottom,#b8e76f,#a9e25c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffb8e76f', endColorstr='#ffa9e25c', GradientType=0);-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1)}.selectize-control.multi .selectize-input [data-value].active{background-color:#88c332;background-image:-moz-linear-gradient(top,#92c836,#7abc2c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#92c836),to(#7abc2c));background-image:-webkit-linear-gradient(top,#92c836,#7abc2c);background-image:-o-linear-gradient(top,#92c836,#7abc2c);background-image:linear-gradient(to bottom,#92c836,#7abc2c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff92c836', endColorstr='#ff7abc2c', GradientType=0)}.selectize-control.single .selectize-input{-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 2px 0 #e0e0e0,0 3px 0 #c8c8c8,0 4px 1px rgba(0,0,0,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 2px 0 #e0e0e0,0 3px 0 #c8c8c8,0 4px 1px rgba(0,0,0,.1);background-color:#f3f3f3;background-image:-moz-linear-gradient(top,#f5f5f5,#efefef);background-image:-webkit-gradient(linear,0 0,0 100%,from(#f5f5f5),to(#efefef));background-image:-webkit-linear-gradient(top,#f5f5f5,#efefef);background-image:-o-linear-gradient(top,#f5f5f5,#efefef);background-image:linear-gradient(to bottom,#f5f5f5,#efefef);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffefefef', GradientType=0)}.selectize-control.single .selectize-input,.selectize-dropdown.single{border-color:#b8b8b8}.selectize-dropdown .optgroup-header{font-weight:700;font-size:.8em;border-bottom:1px solid #f0f0f0;border-top:1px solid #f0f0f0} \ No newline at end of file diff --git a/ajax/libs/selectize.js/0.9.0/js/selectize.js b/ajax/libs/selectize.js/0.9.0/js/selectize.js new file mode 100644 index 000000000..bd5dab2ee --- /dev/null +++ b/ajax/libs/selectize.js/0.9.0/js/selectize.js @@ -0,0 +1,2784 @@ +/** + * selectize.js (v0.9.0) + * Copyright (c) 2013 Brian Reavis & contributors + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this + * file except in compliance with the License. You may obtain a copy of the License at: + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under + * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF + * ANY KIND, either express or implied. See the License for the specific language + * governing permissions and limitations under the License. + * + * @author Brian Reavis + */ + +/*jshint curly:false */ +/*jshint browser:true */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + define(['jquery','sifter','microplugin'], factory); + } else if (typeof exports === 'object') { + module.exports = factory(require('jquery'), require('sifter'), require('microplugin')); + } else { + root.Selectize = factory(root.jQuery, root.Sifter, root.MicroPlugin); + } +}(this, function($, Sifter, MicroPlugin) { + 'use strict'; + + var highlight = function($element, pattern) { + if (typeof pattern === 'string' && !pattern.length) return; + var regex = (typeof pattern === 'string') ? new RegExp(pattern, 'i') : pattern; + + var highlight = function(node) { + var skip = 0; + if (node.nodeType === 3) { + var pos = node.data.search(regex); + if (pos >= 0 && node.data.length > 0) { + var match = node.data.match(regex); + var spannode = document.createElement('span'); + spannode.className = 'highlight'; + var middlebit = node.splitText(pos); + var endbit = middlebit.splitText(match[0].length); + var middleclone = middlebit.cloneNode(true); + spannode.appendChild(middleclone); + middlebit.parentNode.replaceChild(spannode, middlebit); + skip = 1; + } + } else if (node.nodeType === 1 && node.childNodes && !/(script|style)/i.test(node.tagName)) { + for (var i = 0; i < node.childNodes.length; ++i) { + i += highlight(node.childNodes[i]); + } + } + return skip; + }; + + return $element.each(function() { + highlight(this); + }); + }; + + var MicroEvent = function() {}; + MicroEvent.prototype = { + on: function(event, fct){ + this._events = this._events || {}; + this._events[event] = this._events[event] || []; + this._events[event].push(fct); + }, + off: function(event, fct){ + var n = arguments.length; + if (n === 0) return delete this._events; + if (n === 1) return delete this._events[event]; + + this._events = this._events || {}; + if (event in this._events === false) return; + this._events[event].splice(this._events[event].indexOf(fct), 1); + }, + trigger: function(event /* , args... */){ + this._events = this._events || {}; + if (event in this._events === false) return; + for (var i = 0; i < this._events[event].length; i++){ + this._events[event][i].apply(this, Array.prototype.slice.call(arguments, 1)); + } + } + }; + + /** + * Mixin will delegate all MicroEvent.js function in the destination object. + * + * - MicroEvent.mixin(Foobar) will make Foobar able to use MicroEvent + * + * @param {object} the object which will support MicroEvent + */ + MicroEvent.mixin = function(destObject){ + var props = ['on', 'off', 'trigger']; + for (var i = 0; i < props.length; i++){ + destObject.prototype[props[i]] = MicroEvent.prototype[props[i]]; + } + }; + + var IS_MAC = /Mac/.test(navigator.userAgent); + + var KEY_A = 65; + var KEY_COMMA = 188; + var KEY_RETURN = 13; + var KEY_ESC = 27; + var KEY_LEFT = 37; + var KEY_UP = 38; + var KEY_P = 80; + var KEY_RIGHT = 39; + var KEY_DOWN = 40; + var KEY_N = 78; + var KEY_BACKSPACE = 8; + var KEY_DELETE = 46; + var KEY_SHIFT = 16; + var KEY_CMD = IS_MAC ? 91 : 17; + var KEY_CTRL = IS_MAC ? 18 : 17; + var KEY_TAB = 9; + + var TAG_SELECT = 1; + var TAG_INPUT = 2; + + + var isset = function(object) { + return typeof object !== 'undefined'; + }; + + /** + * Converts a scalar to its best string representation + * for hash keys and HTML attribute values. + * + * Transformations: + * 'str' -> 'str' + * null -> '' + * undefined -> '' + * true -> '1' + * false -> '0' + * 0 -> '0' + * 1 -> '1' + * + * @param {string} value + * @returns {string} + */ + var hash_key = function(value) { + if (typeof value === 'undefined' || value === null) return ''; + if (typeof value === 'boolean') return value ? '1' : '0'; + return value + ''; + }; + + /** + * Escapes a string for use within HTML. + * + * @param {string} str + * @returns {string} + */ + var escape_html = function(str) { + return (str + '') + .replace(/&/g, '&') + .replace(//g, '>') + .replace(/"/g, '"'); + }; + + /** + * Escapes "$" characters in replacement strings. + * + * @param {string} str + * @returns {string} + */ + var escape_replace = function(str) { + return (str + '').replace(/\$/g, '$$$$'); + }; + + var hook = {}; + + /** + * Wraps `method` on `self` so that `fn` + * is invoked before the original method. + * + * @param {object} self + * @param {string} method + * @param {function} fn + */ + hook.before = function(self, method, fn) { + var original = self[method]; + self[method] = function() { + fn.apply(self, arguments); + return original.apply(self, arguments); + }; + }; + + /** + * Wraps `method` on `self` so that `fn` + * is invoked after the original method. + * + * @param {object} self + * @param {string} method + * @param {function} fn + */ + hook.after = function(self, method, fn) { + var original = self[method]; + self[method] = function() { + var result = original.apply(self, arguments); + fn.apply(self, arguments); + return result; + }; + }; + + /** + * Builds a hash table out of an array of + * objects, using the specified `key` within + * each object. + * + * @param {string} key + * @param {mixed} objects + */ + var build_hash_table = function(key, objects) { + if (!$.isArray(objects)) return objects; + var i, n, table = {}; + for (i = 0, n = objects.length; i < n; i++) { + if (objects[i].hasOwnProperty(key)) { + table[objects[i][key]] = objects[i]; + } + } + return table; + }; + + /** + * Wraps `fn` so that it can only be invoked once. + * + * @param {function} fn + * @returns {function} + */ + var once = function(fn) { + var called = false; + return function() { + if (called) return; + called = true; + fn.apply(this, arguments); + }; + }; + + /** + * Wraps `fn` so that it can only be called once + * every `delay` milliseconds (invoked on the falling edge). + * + * @param {function} fn + * @param {int} delay + * @returns {function} + */ + var debounce = function(fn, delay) { + var timeout; + return function() { + var self = this; + var args = arguments; + window.clearTimeout(timeout); + timeout = window.setTimeout(function() { + fn.apply(self, args); + }, delay); + }; + }; + + /** + * Debounce all fired events types listed in `types` + * while executing the provided `fn`. + * + * @param {object} self + * @param {array} types + * @param {function} fn + */ + var debounce_events = function(self, types, fn) { + var type; + var trigger = self.trigger; + var event_args = {}; + + // override trigger method + self.trigger = function() { + var type = arguments[0]; + if (types.indexOf(type) !== -1) { + event_args[type] = arguments; + } else { + return trigger.apply(self, arguments); + } + }; + + // invoke provided function + fn.apply(self, []); + self.trigger = trigger; + + // trigger queued events + for (type in event_args) { + if (event_args.hasOwnProperty(type)) { + trigger.apply(self, event_args[type]); + } + } + }; + + /** + * A workaround for http://bugs.jquery.com/ticket/6696 + * + * @param {object} $parent - Parent element to listen on. + * @param {string} event - Event name. + * @param {string} selector - Descendant selector to filter by. + * @param {function} fn - Event handler. + */ + var watchChildEvent = function($parent, event, selector, fn) { + $parent.on(event, selector, function(e) { + var child = e.target; + while (child && child.parentNode !== $parent[0]) { + child = child.parentNode; + } + e.currentTarget = child; + return fn.apply(this, [e]); + }); + }; + + /** + * Determines the current selection within a text input control. + * Returns an object containing: + * - start + * - length + * + * @param {object} input + * @returns {object} + */ + var getSelection = function(input) { + var result = {}; + if ('selectionStart' in input) { + result.start = input.selectionStart; + result.length = input.selectionEnd - result.start; + } else if (document.selection) { + input.focus(); + var sel = document.selection.createRange(); + var selLen = document.selection.createRange().text.length; + sel.moveStart('character', -input.value.length); + result.start = sel.text.length - selLen; + result.length = selLen; + } + return result; + }; + + /** + * Copies CSS properties from one element to another. + * + * @param {object} $from + * @param {object} $to + * @param {array} properties + */ + var transferStyles = function($from, $to, properties) { + var i, n, styles = {}; + if (properties) { + for (i = 0, n = properties.length; i < n; i++) { + styles[properties[i]] = $from.css(properties[i]); + } + } else { + styles = $from.css(); + } + $to.css(styles); + }; + + /** + * Measures the width of a string within a + * parent element (in pixels). + * + * @param {string} str + * @param {object} $parent + * @returns {int} + */ + var measureString = function(str, $parent) { + if (!str) { + return 0; + } + + var $test = $('').css({ + position: 'absolute', + top: -99999, + left: -99999, + width: 'auto', + padding: 0, + whiteSpace: 'pre' + }).text(str).appendTo('body'); + + transferStyles($parent, $test, [ + 'letterSpacing', + 'fontSize', + 'fontFamily', + 'fontWeight', + 'textTransform' + ]); + + var width = $test.width(); + $test.remove(); + + return width; + }; + + /** + * Sets up an input to grow horizontally as the user + * types. If the value is changed manually, you can + * trigger the "update" handler to resize: + * + * $input.trigger('update'); + * + * @param {object} $input + */ + var autoGrow = function($input) { + var currentWidth = null; + + var update = function(e) { + var value, keyCode, printable, placeholder, width; + var shift, character, selection; + e = e || window.event || {}; + + if (e.metaKey || e.altKey) return; + if ($input.data('grow') === false) return; + + value = $input.val(); + if (e.type && e.type.toLowerCase() === 'keydown') { + keyCode = e.keyCode; + printable = ( + (keyCode >= 97 && keyCode <= 122) || // a-z + (keyCode >= 65 && keyCode <= 90) || // A-Z + (keyCode >= 48 && keyCode <= 57) || // 0-9 + keyCode === 32 // space + ); + + if (keyCode === KEY_DELETE || keyCode === KEY_BACKSPACE) { + selection = getSelection($input[0]); + if (selection.length) { + value = value.substring(0, selection.start) + value.substring(selection.start + selection.length); + } else if (keyCode === KEY_BACKSPACE && selection.start) { + value = value.substring(0, selection.start - 1) + value.substring(selection.start + 1); + } else if (keyCode === KEY_DELETE && typeof selection.start !== 'undefined') { + value = value.substring(0, selection.start) + value.substring(selection.start + 1); + } + } else if (printable) { + shift = e.shiftKey; + character = String.fromCharCode(e.keyCode); + if (shift) character = character.toUpperCase(); + else character = character.toLowerCase(); + value += character; + } + } + + placeholder = $input.attr('placeholder') || ''; + if (!value.length && placeholder.length) { + value = placeholder; + } + + width = measureString(value, $input) + 4; + if (width !== currentWidth) { + currentWidth = width; + $input.width(width); + $input.triggerHandler('resize'); + } + }; + + $input.on('keydown keyup update blur', update); + update(); + }; + + var Selectize = function($input, settings) { + var key, i, n, dir, input, self = this; + input = $input[0]; + input.selectize = self; + + // detect rtl environment + dir = window.getComputedStyle ? window.getComputedStyle(input, null).getPropertyValue('direction') : input.currentStyle && input.currentStyle.direction; + dir = dir || $input.parents('[dir]:first').attr('dir') || ''; + + // setup default state + $.extend(self, { + settings : settings, + $input : $input, + tagType : input.tagName.toLowerCase() === 'select' ? TAG_SELECT : TAG_INPUT, + rtl : /rtl/i.test(dir), + + eventNS : '.selectize' + (++Selectize.count), + highlightedValue : null, + isOpen : false, + isDisabled : false, + isRequired : $input.is('[required]'), + isInvalid : false, + isLocked : false, + isFocused : false, + isInputHidden : false, + isSetup : false, + isShiftDown : false, + isCmdDown : false, + isCtrlDown : false, + ignoreFocus : false, + ignoreHover : false, + hasOptions : false, + currentResults : null, + lastValue : '', + caretPos : 0, + loading : 0, + loadedSearches : {}, + + $activeOption : null, + $activeItems : [], + + optgroups : {}, + options : {}, + userOptions : {}, + items : [], + renderCache : {}, + onSearchChange : debounce(self.onSearchChange, settings.loadThrottle) + }); + + // search system + self.sifter = new Sifter(this.options, {diacritics: settings.diacritics}); + + // build options table + $.extend(self.options, build_hash_table(settings.valueField, settings.options)); + delete self.settings.options; + + // build optgroup table + $.extend(self.optgroups, build_hash_table(settings.optgroupValueField, settings.optgroups)); + delete self.settings.optgroups; + + // option-dependent defaults + self.settings.mode = self.settings.mode || (self.settings.maxItems === 1 ? 'single' : 'multi'); + if (typeof self.settings.hideSelected !== 'boolean') { + self.settings.hideSelected = self.settings.mode === 'multi'; + } + + self.initializePlugins(self.settings.plugins); + self.setupCallbacks(); + self.setupTemplates(); + self.setup(); + }; + + // mixins + // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + MicroEvent.mixin(Selectize); + MicroPlugin.mixin(Selectize); + + // methods + // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + $.extend(Selectize.prototype, { + + /** + * Creates all elements and sets up event bindings. + */ + setup: function() { + var self = this; + var settings = self.settings; + var eventNS = self.eventNS; + var $window = $(window); + var $document = $(document); + + var $wrapper; + var $control; + var $control_input; + var $dropdown; + var $dropdown_content; + var $dropdown_parent; + var inputMode; + var timeout_blur; + var timeout_focus; + var tab_index; + var classes; + var classes_plugins; + + inputMode = self.settings.mode; + tab_index = self.$input.attr('tabindex') || ''; + classes = self.$input.attr('class') || ''; + + $wrapper = $('
').addClass(settings.wrapperClass).addClass(classes).addClass(inputMode); + $control = $('
').addClass(settings.inputClass).addClass('items').appendTo($wrapper); + $control_input = $('').appendTo($control).attr('tabindex', tab_index); + $dropdown_parent = $(settings.dropdownParent || $wrapper); + $dropdown = $('
').addClass(settings.dropdownClass).addClass(classes).addClass(inputMode).hide().appendTo($dropdown_parent); + $dropdown_content = $('
').addClass(settings.dropdownContentClass).appendTo($dropdown); + + $wrapper.css({ + width: self.$input[0].style.width + }); + + if (self.plugins.names.length) { + classes_plugins = 'plugin-' + self.plugins.names.join(' plugin-'); + $wrapper.addClass(classes_plugins); + $dropdown.addClass(classes_plugins); + } + + if ((settings.maxItems === null || settings.maxItems > 1) && self.tagType === TAG_SELECT) { + self.$input.attr('multiple', 'multiple'); + } + + if (self.settings.placeholder) { + $control_input.attr('placeholder', settings.placeholder); + } + + self.$wrapper = $wrapper; + self.$control = $control; + self.$control_input = $control_input; + self.$dropdown = $dropdown; + self.$dropdown_content = $dropdown_content; + + $dropdown.on('mouseenter', '[data-selectable]', function() { return self.onOptionHover.apply(self, arguments); }); + $dropdown.on('mousedown', '[data-selectable]', function() { return self.onOptionSelect.apply(self, arguments); }); + watchChildEvent($control, 'mousedown', '*:not(input)', function() { return self.onItemSelect.apply(self, arguments); }); + autoGrow($control_input); + + $control.on({ + mousedown : function() { return self.onMouseDown.apply(self, arguments); }, + click : function() { return self.onClick.apply(self, arguments); } + }); + + $control_input.on({ + mousedown : function(e) { e.stopPropagation(); }, + keydown : function() { return self.onKeyDown.apply(self, arguments); }, + keyup : function() { return self.onKeyUp.apply(self, arguments); }, + keypress : function() { return self.onKeyPress.apply(self, arguments); }, + resize : function() { self.positionDropdown.apply(self, []); }, + blur : function() { return self.onBlur.apply(self, arguments); }, + focus : function() { return self.onFocus.apply(self, arguments); } + }); + + $document.on('keydown' + eventNS, function(e) { + self.isCmdDown = e[IS_MAC ? 'metaKey' : 'ctrlKey']; + self.isCtrlDown = e[IS_MAC ? 'altKey' : 'ctrlKey']; + self.isShiftDown = e.shiftKey; + }); + + $document.on('keyup' + eventNS, function(e) { + if (e.keyCode === KEY_CTRL) self.isCtrlDown = false; + if (e.keyCode === KEY_SHIFT) self.isShiftDown = false; + if (e.keyCode === KEY_CMD) self.isCmdDown = false; + }); + + $document.on('mousedown' + eventNS, function(e) { + if (self.isFocused) { + // prevent events on the dropdown scrollbar from causing the control to blur + if (e.target === self.$dropdown[0] || e.target.parentNode === self.$dropdown[0]) { + return false; + } + // blur on click outside + if (!self.$control.has(e.target).length && e.target !== self.$control[0]) { + self.blur(); + } + } + }); + + $window.on(['scroll' + eventNS, 'resize' + eventNS].join(' '), function() { + if (self.isOpen) { + self.positionDropdown.apply(self, arguments); + } + }); + $window.on('mousemove' + eventNS, function() { + self.ignoreHover = false; + }); + + // store original children and tab index so that they can be + // restored when the destroy() method is called. + this.revertSettings = { + $children : self.$input.children().detach(), + tabindex : self.$input.attr('tabindex') + }; + + self.$input.attr('tabindex', -1).hide().after(self.$wrapper); + + if ($.isArray(settings.items)) { + self.setValue(settings.items); + delete settings.items; + } + + // feature detect for the validation API + if (self.$input[0].validity) { + self.$input.on('invalid' + eventNS, function(e) { + e.preventDefault(); + self.isInvalid = true; + self.refreshState(); + }); + } + + self.updateOriginalInput(); + self.refreshItems(); + self.refreshState(); + self.updatePlaceholder(); + self.isSetup = true; + + if (self.$input.is(':disabled')) { + self.disable(); + } + + self.on('change', this.onChange); + self.trigger('initialize'); + + // preload options + if (settings.preload === true) { + self.onSearchChange(''); + } + }, + + /** + * Sets up default rendering functions. + */ + setupTemplates: function() { + var self = this; + var field_label = self.settings.labelField; + var field_optgroup = self.settings.optgroupLabelField; + + var templates = { + 'optgroup': function(data) { + return '
' + data.html + '
'; + }, + 'optgroup_header': function(data, escape) { + return '
' + escape(data[field_optgroup]) + '
'; + }, + 'option': function(data, escape) { + return '
' + escape(data[field_label]) + '
'; + }, + 'item': function(data, escape) { + return '
' + escape(data[field_label]) + '
'; + }, + 'option_create': function(data, escape) { + return '
Add ' + escape(data.input) + '
'; + } + }; + + self.settings.render = $.extend({}, templates, self.settings.render); + }, + + /** + * Maps fired events to callbacks provided + * in the settings used when creating the control. + */ + setupCallbacks: function() { + var key, fn, callbacks = { + 'initialize' : 'onInitialize', + 'change' : 'onChange', + 'item_add' : 'onItemAdd', + 'item_remove' : 'onItemRemove', + 'clear' : 'onClear', + 'option_add' : 'onOptionAdd', + 'option_remove' : 'onOptionRemove', + 'option_clear' : 'onOptionClear', + 'dropdown_open' : 'onDropdownOpen', + 'dropdown_close' : 'onDropdownClose', + 'type' : 'onType' + }; + + for (key in callbacks) { + if (callbacks.hasOwnProperty(key)) { + fn = this.settings[callbacks[key]]; + if (fn) this.on(key, fn); + } + } + }, + + /** + * Triggered when the main control element + * has a click event. + * + * @param {object} e + * @return {boolean} + */ + onClick: function(e) { + var self = this; + + // necessary for mobile webkit devices (manual focus triggering + // is ignored unless invoked within a click event) + if (!self.isFocused) { + self.focus(); + e.preventDefault(); + } + }, + + /** + * Triggered when the main control element + * has a mouse down event. + * + * @param {object} e + * @return {boolean} + */ + onMouseDown: function(e) { + var self = this; + var defaultPrevented = e.isDefaultPrevented(); + var $target = $(e.target); + + if (self.isFocused) { + // retain focus by preventing native handling. if the + // event target is the input it should not be modified. + // otherwise, text selection within the input won't work. + if (e.target !== self.$control_input[0]) { + if (self.settings.mode === 'single') { + // toggle dropdown + self.isOpen ? self.close() : self.open(); + } else if (!defaultPrevented) { + self.setActiveItem(null); + } + return false; + } + } else { + // give control focus + if (!defaultPrevented) { + window.setTimeout(function() { + self.focus(); + }, 0); + } + } + }, + + /** + * Triggered when the value of the control has been changed. + * This should propagate the event to the original DOM + * input / select element. + */ + onChange: function() { + this.$input.trigger('change'); + }, + + /** + * Triggered on keypress. + * + * @param {object} e + * @returns {boolean} + */ + onKeyPress: function(e) { + if (this.isLocked) return e && e.preventDefault(); + var character = String.fromCharCode(e.keyCode || e.which); + if (this.settings.create && character === this.settings.delimiter) { + this.createItem(); + e.preventDefault(); + return false; + } + }, + + /** + * Triggered on keydown. + * + * @param {object} e + * @returns {boolean} + */ + onKeyDown: function(e) { + var isInput = e.target === this.$control_input[0]; + var self = this; + + if (self.isLocked) { + if (e.keyCode !== KEY_TAB) { + e.preventDefault(); + } + return; + } + + switch (e.keyCode) { + case KEY_A: + if (self.isCmdDown) { + self.selectAll(); + return; + } + break; + case KEY_ESC: + self.close(); + return; + case KEY_N: + if (!e.ctrlKey) break; + case KEY_DOWN: + if (!self.isOpen && self.hasOptions) { + self.open(); + } else if (self.$activeOption) { + self.ignoreHover = true; + var $next = self.getAdjacentOption(self.$activeOption, 1); + if ($next.length) self.setActiveOption($next, true, true); + } + e.preventDefault(); + return; + case KEY_P: + if (!e.ctrlKey) break; + case KEY_UP: + if (self.$activeOption) { + self.ignoreHover = true; + var $prev = self.getAdjacentOption(self.$activeOption, -1); + if ($prev.length) self.setActiveOption($prev, true, true); + } + e.preventDefault(); + return; + case KEY_RETURN: + if (self.isOpen && self.$activeOption) { + self.onOptionSelect({currentTarget: self.$activeOption}); + } + e.preventDefault(); + return; + case KEY_LEFT: + self.advanceSelection(-1, e); + return; + case KEY_RIGHT: + self.advanceSelection(1, e); + return; + case KEY_TAB: + if (self.isOpen && self.$activeOption) { + self.onOptionSelect({currentTarget: self.$activeOption}); + } + if (self.settings.create && self.createItem()) { + e.preventDefault(); + } + return; + case KEY_BACKSPACE: + case KEY_DELETE: + self.deleteSelection(e); + return; + } + if (self.isFull() || self.isInputHidden) { + e.preventDefault(); + return; + } + }, + + /** + * Triggered on keyup. + * + * @param {object} e + * @returns {boolean} + */ + onKeyUp: function(e) { + var self = this; + + if (self.isLocked) return e && e.preventDefault(); + var value = self.$control_input.val() || ''; + if (self.lastValue !== value) { + self.lastValue = value; + self.onSearchChange(value); + self.refreshOptions(); + self.trigger('type', value); + } + }, + + /** + * Invokes the user-provide option provider / loader. + * + * Note: this function is debounced in the Selectize + * constructor (by `settings.loadDelay` milliseconds) + * + * @param {string} value + */ + onSearchChange: function(value) { + var self = this; + var fn = self.settings.load; + if (!fn) return; + if (self.loadedSearches.hasOwnProperty(value)) return; + self.loadedSearches[value] = true; + self.load(function(callback) { + fn.apply(self, [value, callback]); + }); + }, + + /** + * Triggered on focus. + * + * @param {object} e (optional) + * @returns {boolean} + */ + onFocus: function(e) { + var self = this; + + self.isFocused = true; + if (self.isDisabled) { + self.blur(); + e && e.preventDefault(); + return false; + } + + if (self.ignoreFocus) return; + if (self.settings.preload === 'focus') self.onSearchChange(''); + + if (!self.$activeItems.length) { + self.showInput(); + self.setActiveItem(null); + self.refreshOptions(!!self.settings.openOnFocus); + } + + self.refreshState(); + }, + + /** + * Triggered on blur. + * + * @param {object} e + * @returns {boolean} + */ + onBlur: function(e) { + var self = this; + self.isFocused = false; + if (self.ignoreFocus) return; + + if (self.settings.create && self.settings.createOnBlur) { + self.createItem(false); + } + + self.close(); + self.setTextboxValue(''); + self.setActiveItem(null); + self.setActiveOption(null); + self.setCaret(self.items.length); + self.refreshState(); + }, + + /** + * Triggered when the user rolls over + * an option in the autocomplete dropdown menu. + * + * @param {object} e + * @returns {boolean} + */ + onOptionHover: function(e) { + if (this.ignoreHover) return; + this.setActiveOption(e.currentTarget, false); + }, + + /** + * Triggered when the user clicks on an option + * in the autocomplete dropdown menu. + * + * @param {object} e + * @returns {boolean} + */ + onOptionSelect: function(e) { + var value, $target, $option, self = this; + + if (e.preventDefault) { + e.preventDefault(); + e.stopPropagation(); + } + + $target = $(e.currentTarget); + if ($target.hasClass('create')) { + self.createItem(); + } else { + value = $target.attr('data-value'); + if (value) { + self.lastQuery = null; + self.setTextboxValue(''); + self.addItem(value); + if (!self.settings.hideSelected && e.type && /mouse/.test(e.type)) { + self.setActiveOption(self.getOption(value)); + } + } + } + }, + + /** + * Triggered when the user clicks on an item + * that has been selected. + * + * @param {object} e + * @returns {boolean} + */ + onItemSelect: function(e) { + var self = this; + + if (self.isLocked) return; + if (self.settings.mode === 'multi') { + e.preventDefault(); + self.setActiveItem(e.currentTarget, e); + } + }, + + /** + * Invokes the provided method that provides + * results to a callback---which are then added + * as options to the control. + * + * @param {function} fn + */ + load: function(fn) { + var self = this; + var $wrapper = self.$wrapper.addClass('loading'); + + self.loading++; + fn.apply(self, [function(results) { + self.loading = Math.max(self.loading - 1, 0); + if (results && results.length) { + self.addOption(results); + self.refreshOptions(self.isFocused && !self.isInputHidden); + } + if (!self.loading) { + $wrapper.removeClass('loading'); + } + self.trigger('load', results); + }]); + }, + + /** + * Sets the input field of the control to the specified value. + * + * @param {string} value + */ + setTextboxValue: function(value) { + this.$control_input.val(value).triggerHandler('update'); + this.lastValue = value; + }, + + /** + * Returns the value of the control. If multiple items + * can be selected (e.g. or + * element to reflect the current state. + */ + updateOriginalInput: function() { + var i, n, options, self = this; + + if (self.$input[0].tagName.toLowerCase() === 'select') { + options = []; + for (i = 0, n = self.items.length; i < n; i++) { + options.push(''); + } + if (!options.length && !this.$input.attr('multiple')) { + options.push(''); + } + self.$input.html(options.join('')); + } else { + self.$input.val(self.getValue()); + } + + if (self.isSetup) { + self.trigger('change', self.$input.val()); + } + }, + + /** + * Shows/hide the input placeholder depending + * on if there items in the list already. + */ + updatePlaceholder: function() { + if (!this.settings.placeholder) return; + var $input = this.$control_input; + + if (this.items.length) { + $input.removeAttr('placeholder'); + } else { + $input.attr('placeholder', this.settings.placeholder); + } + $input.triggerHandler('update'); + }, + + /** + * Shows the autocomplete dropdown containing + * the available options. + */ + open: function() { + var self = this; + + if (self.isLocked || self.isOpen || (self.settings.mode === 'multi' && self.isFull())) return; + self.focus(); + self.isOpen = true; + self.refreshState(); + self.$dropdown.css({visibility: 'hidden', display: 'block'}); + self.positionDropdown(); + self.$dropdown.css({visibility: 'visible'}); + self.trigger('dropdown_open', self.$dropdown); + }, + + /** + * Closes the autocomplete dropdown menu. + */ + close: function() { + var self = this; + var trigger = self.isOpen; + + if (self.settings.mode === 'single' && self.items.length) { + self.hideInput(); + } + + self.isOpen = false; + self.$dropdown.hide(); + self.setActiveOption(null); + self.refreshState(); + + if (trigger) self.trigger('dropdown_close', self.$dropdown); + }, + + /** + * Calculates and applies the appropriate + * position of the dropdown. + */ + positionDropdown: function() { + var $control = this.$control; + var offset = this.settings.dropdownParent === 'body' ? $control.offset() : $control.position(); + offset.top += $control.outerHeight(true); + + this.$dropdown.css({ + width : $control.outerWidth(), + top : offset.top, + left : offset.left + }); + }, + + /** + * Resets / clears all selected items + * from the control. + */ + clear: function() { + var self = this; + + if (!self.items.length) return; + self.$control.children(':not(input)').remove(); + self.items = []; + self.setCaret(0); + self.updatePlaceholder(); + self.updateOriginalInput(); + self.refreshState(); + self.showInput(); + self.trigger('clear'); + }, + + /** + * A helper method for inserting an element + * at the current caret position. + * + * @param {object} $el + */ + insertAtCaret: function($el) { + var caret = Math.min(this.caretPos, this.items.length); + if (caret === 0) { + this.$control.prepend($el); + } else { + $(this.$control[0].childNodes[caret]).before($el); + } + this.setCaret(caret + 1); + }, + + /** + * Removes the current selected item(s). + * + * @param {object} e (optional) + * @returns {boolean} + */ + deleteSelection: function(e) { + var i, n, direction, selection, values, caret, option_select, $option_select, $tail; + var self = this; + + direction = (e && e.keyCode === KEY_BACKSPACE) ? -1 : 1; + selection = getSelection(self.$control_input[0]); + + if (self.$activeOption && !self.settings.hideSelected) { + option_select = self.getAdjacentOption(self.$activeOption, -1).attr('data-value'); + } + + // determine items that will be removed + values = []; + + if (self.$activeItems.length) { + $tail = self.$control.children('.active:' + (direction > 0 ? 'last' : 'first')); + caret = self.$control.children(':not(input)').index($tail); + if (direction > 0) { caret++; } + + for (i = 0, n = self.$activeItems.length; i < n; i++) { + values.push($(self.$activeItems[i]).attr('data-value')); + } + if (e) { + e.preventDefault(); + e.stopPropagation(); + } + } else if ((self.isFocused || self.settings.mode === 'single') && self.items.length) { + if (direction < 0 && selection.start === 0 && selection.length === 0) { + values.push(self.items[self.caretPos - 1]); + } else if (direction > 0 && selection.start === self.$control_input.val().length) { + values.push(self.items[self.caretPos]); + } + } + + // allow the callback to abort + if (!values.length || (typeof self.settings.onDelete === 'function' && self.settings.onDelete.apply(self, [values]) === false)) { + return false; + } + + // perform removal + if (typeof caret !== 'undefined') { + self.setCaret(caret); + } + while (values.length) { + self.removeItem(values.pop()); + } + + self.showInput(); + self.positionDropdown(); + self.refreshOptions(true); + + // select previous option + if (option_select) { + $option_select = self.getOption(option_select); + if ($option_select.length) { + self.setActiveOption($option_select); + } + } + + return true; + }, + + /** + * Selects the previous / next item (depending + * on the `direction` argument). + * + * > 0 - right + * < 0 - left + * + * @param {int} direction + * @param {object} e (optional) + */ + advanceSelection: function(direction, e) { + var tail, selection, idx, valueLength, cursorAtEdge, $tail; + var self = this; + + if (direction === 0) return; + if (self.rtl) direction *= -1; + + tail = direction > 0 ? 'last' : 'first'; + selection = getSelection(self.$control_input[0]); + + if (self.isFocused && !self.isInputHidden) { + valueLength = self.$control_input.val().length; + cursorAtEdge = direction < 0 + ? selection.start === 0 && selection.length === 0 + : selection.start === valueLength; + + if (cursorAtEdge && !valueLength) { + self.advanceCaret(direction, e); + } + } else { + $tail = self.$control.children('.active:' + tail); + if ($tail.length) { + idx = self.$control.children(':not(input)').index($tail); + self.setActiveItem(null); + self.setCaret(direction > 0 ? idx + 1 : idx); + } + } + }, + + /** + * Moves the caret left / right. + * + * @param {int} direction + * @param {object} e (optional) + */ + advanceCaret: function(direction, e) { + var self = this, fn, $adj; + + if (direction === 0) return; + + fn = direction > 0 ? 'next' : 'prev'; + if (self.isShiftDown) { + $adj = self.$control_input[fn](); + if ($adj.length) { + self.hideInput(); + self.setActiveItem($adj); + e && e.preventDefault(); + } + } else { + self.setCaret(self.caretPos + direction); + } + }, + + /** + * Moves the caret to the specified index. + * + * @param {int} i + */ + setCaret: function(i) { + var self = this; + + if (self.settings.mode === 'single') { + i = self.items.length; + } else { + i = Math.max(0, Math.min(self.items.length, i)); + } + + // the input must be moved by leaving it in place and moving the + // siblings, due to the fact that focus cannot be restored once lost + // on mobile webkit devices + var j, n, fn, $children, $child; + $children = self.$control.children(':not(input)'); + for (j = 0, n = $children.length; j < n; j++) { + $child = $($children[j]).detach(); + if (j < i) { + self.$control_input.before($child); + } else { + self.$control.append($child); + } + } + + self.caretPos = i; + }, + + /** + * Disables user input on the control. Used while + * items are being asynchronously created. + */ + lock: function() { + this.close(); + this.isLocked = true; + this.refreshState(); + }, + + /** + * Re-enables user input on the control. + */ + unlock: function() { + this.isLocked = false; + this.refreshState(); + }, + + /** + * Disables user input on the control completely. + * While disabled, it cannot receive focus. + */ + disable: function() { + var self = this; + self.$input.prop('disabled', true); + self.isDisabled = true; + self.lock(); + }, + + /** + * Enables the control so that it can respond + * to focus and user input. + */ + enable: function() { + var self = this; + self.$input.prop('disabled', false); + self.isDisabled = false; + self.unlock(); + }, + + /** + * Completely destroys the control and + * unbinds all event listeners so that it can + * be garbage collected. + */ + destroy: function() { + var self = this; + var eventNS = self.eventNS; + var revertSettings = self.revertSettings; + + self.trigger('destroy'); + self.off(); + self.$wrapper.remove(); + self.$dropdown.remove(); + + self.$input + .html('') + .append(revertSettings.$children) + .removeAttr('tabindex') + .attr({tabindex: revertSettings.tabindex}) + .show(); + + $(window).off(eventNS); + $(document).off(eventNS); + $(document.body).off(eventNS); + + delete self.$input[0].selectize; + }, + + /** + * A helper method for rendering "item" and + * "option" templates, given the data. + * + * @param {string} templateName + * @param {object} data + * @returns {string} + */ + render: function(templateName, data) { + var value, id, label; + var html = ''; + var cache = false; + var self = this; + var regex_tag = /^[\t ]*<([a-z][a-z0-9\-_]*(?:\:[a-z][a-z0-9\-_]*)?)/i; + + if (templateName === 'option' || templateName === 'item') { + value = hash_key(data[self.settings.valueField]); + cache = !!value; + } + + // pull markup from cache if it exists + if (cache) { + if (!isset(self.renderCache[templateName])) { + self.renderCache[templateName] = {}; + } + if (self.renderCache[templateName].hasOwnProperty(value)) { + return self.renderCache[templateName][value]; + } + } + + // render markup + html = self.settings.render[templateName].apply(this, [data, escape_html]); + + // add mandatory attributes + if (templateName === 'option' || templateName === 'option_create') { + html = html.replace(regex_tag, '<$1 data-selectable'); + } + if (templateName === 'optgroup') { + id = data[self.settings.optgroupValueField] || ''; + html = html.replace(regex_tag, '<$1 data-group="' + escape_replace(escape_html(id)) + '"'); + } + if (templateName === 'option' || templateName === 'item') { + html = html.replace(regex_tag, '<$1 data-value="' + escape_replace(escape_html(value || '')) + '"'); + } + + // update cache + if (cache) { + self.renderCache[templateName][value] = html; + } + + return html; + } + + }); + + + Selectize.count = 0; + Selectize.defaults = { + plugins: [], + delimiter: ',', + persist: true, + diacritics: true, + create: false, + createOnBlur: false, + highlight: true, + openOnFocus: true, + maxOptions: 1000, + maxItems: null, + hideSelected: null, + addPrecedence: false, + preload: false, + + scrollDuration: 60, + loadThrottle: 300, + + dataAttr: 'data-data', + optgroupField: 'optgroup', + valueField: 'value', + labelField: 'text', + optgroupLabelField: 'label', + optgroupValueField: 'value', + optgroupOrder: null, + + sortField: '$order', + searchField: ['text'], + searchConjunction: 'and', + + mode: null, + wrapperClass: 'selectize-control', + inputClass: 'selectize-input', + dropdownClass: 'selectize-dropdown', + dropdownContentClass: 'selectize-dropdown-content', + + dropdownParent: null, + + /* + load : null, // function(query, callback) { ... } + score : null, // function(search) { ... } + onInitialize : null, // function() { ... } + onChange : null, // function(value) { ... } + onItemAdd : null, // function(value, $item) { ... } + onItemRemove : null, // function(value) { ... } + onClear : null, // function() { ... } + onOptionAdd : null, // function(value, data) { ... } + onOptionRemove : null, // function(value) { ... } + onOptionClear : null, // function() { ... } + onDropdownOpen : null, // function($dropdown) { ... } + onDropdownClose : null, // function($dropdown) { ... } + onType : null, // function(str) { ... } + onDelete : null, // function(values) { ... } + */ + + render: { + /* + item: null, + optgroup: null, + optgroup_header: null, + option: null, + option_create: null + */ + } + }; + + $.fn.selectize = function(settings_user) { + var defaults = $.fn.selectize.defaults; + var settings = $.extend({}, defaults, settings_user); + var attr_data = settings.dataAttr; + var field_label = settings.labelField; + var field_value = settings.valueField; + var field_optgroup = settings.optgroupField; + var field_optgroup_label = settings.optgroupLabelField; + var field_optgroup_value = settings.optgroupValueField; + + /** + * Initializes selectize from a element. + * + * @param {object} $input + * @param {object} settings_element + */ + var init_textbox = function($input, settings_element) { + var i, n, values, option, value = $.trim($input.val() || ''); + if (!value.length) return; + + values = value.split(settings.delimiter); + for (i = 0, n = values.length; i < n; i++) { + option = {}; + option[field_label] = values[i]; + option[field_value] = values[i]; + + settings_element.options[values[i]] = option; + } + + settings_element.items = values; + }; + + /** + * Initializes selectize from a ').appendTo(c).attr("tabindex",j),h=a(n.dropdownParent||b),e=a("
").addClass(n.dropdownClass).addClass(k).addClass(i).hide().appendTo(h),g=a("
").addClass(n.dropdownContentClass).appendTo(e),b.css({width:m.$input[0].style.width}),m.plugins.names.length&&(l="plugin-"+m.plugins.names.join(" plugin-"),b.addClass(l),e.addClass(l)),(null===n.maxItems||n.maxItems>1)&&m.tagType===v&&m.$input.attr("multiple","multiple"),m.settings.placeholder&&d.attr("placeholder",n.placeholder),m.$wrapper=b,m.$control=c,m.$control_input=d,m.$dropdown=e,m.$dropdown_content=g,e.on("mouseenter","[data-selectable]",function(){return m.onOptionHover.apply(m,arguments)}),e.on("mousedown","[data-selectable]",function(){return m.onOptionSelect.apply(m,arguments)}),G(c,"mousedown","*:not(input)",function(){return m.onItemSelect.apply(m,arguments)}),K(d),c.on({mousedown:function(){return m.onMouseDown.apply(m,arguments)},click:function(){return m.onClick.apply(m,arguments)}}),d.on({mousedown:function(a){a.stopPropagation()},keydown:function(){return m.onKeyDown.apply(m,arguments)},keyup:function(){return m.onKeyUp.apply(m,arguments)},keypress:function(){return m.onKeyPress.apply(m,arguments)},resize:function(){m.positionDropdown.apply(m,[])},blur:function(){return m.onBlur.apply(m,arguments)},focus:function(){return m.onFocus.apply(m,arguments)}}),q.on("keydown"+o,function(a){m.isCmdDown=a[f?"metaKey":"ctrlKey"],m.isCtrlDown=a[f?"altKey":"ctrlKey"],m.isShiftDown=a.shiftKey}),q.on("keyup"+o,function(a){a.keyCode===t&&(m.isCtrlDown=!1),a.keyCode===r&&(m.isShiftDown=!1),a.keyCode===s&&(m.isCmdDown=!1)}),q.on("mousedown"+o,function(a){if(m.isFocused){if(a.target===m.$dropdown[0]||a.target.parentNode===m.$dropdown[0])return!1;m.$control.has(a.target).length||a.target===m.$control[0]||m.blur()}}),p.on(["scroll"+o,"resize"+o].join(" "),function(){m.isOpen&&m.positionDropdown.apply(m,arguments)}),p.on("mousemove"+o,function(){m.ignoreHover=!1}),this.revertSettings={$children:m.$input.children().detach(),tabindex:m.$input.attr("tabindex")},m.$input.attr("tabindex",-1).hide().after(m.$wrapper),a.isArray(n.items)&&(m.setValue(n.items),delete n.items),m.$input[0].validity&&m.$input.on("invalid"+o,function(a){a.preventDefault(),m.isInvalid=!0,m.refreshState()}),m.updateOriginalInput(),m.refreshItems(),m.refreshState(),m.updatePlaceholder(),m.isSetup=!0,m.$input.is(":disabled")&&m.disable(),m.on("change",this.onChange),m.trigger("initialize"),n.preload===!0&&m.onSearchChange("")},setupTemplates:function(){var b=this,c=b.settings.labelField,d=b.settings.optgroupLabelField,e={optgroup:function(a){return'
'+a.html+"
"},optgroup_header:function(a,b){return'
'+b(a[d])+"
"},option:function(a,b){return'
'+b(a[c])+"
"},item:function(a,b){return'
'+b(a[c])+"
"},option_create:function(a,b){return'
Add '+b(a.input)+"
"}};b.settings.render=a.extend({},e,b.settings.render)},setupCallbacks:function(){var a,b,c={initialize:"onInitialize",change:"onChange",item_add:"onItemAdd",item_remove:"onItemRemove",clear:"onClear",option_add:"onOptionAdd",option_remove:"onOptionRemove",option_clear:"onOptionClear",dropdown_open:"onDropdownOpen",dropdown_close:"onDropdownClose",type:"onType"};for(a in c)c.hasOwnProperty(a)&&(b=this.settings[c[a]],b&&this.on(a,b))},onClick:function(a){var b=this;b.isFocused||(b.focus(),a.preventDefault())},onMouseDown:function(b){{var c=this,d=b.isDefaultPrevented();a(b.target)}if(c.isFocused){if(b.target!==c.$control_input[0])return"single"===c.settings.mode?c.isOpen?c.close():c.open():d||c.setActiveItem(null),!1}else d||window.setTimeout(function(){c.focus()},0)},onChange:function(){this.$input.trigger("change")},onKeyPress:function(a){if(this.isLocked)return a&&a.preventDefault();var b=String.fromCharCode(a.keyCode||a.which);return this.settings.create&&b===this.settings.delimiter?(this.createItem(),a.preventDefault(),!1):void 0},onKeyDown:function(a){var b=(a.target===this.$control_input[0],this);if(b.isLocked)return void(a.keyCode!==u&&a.preventDefault());switch(a.keyCode){case g:if(b.isCmdDown)return void b.selectAll();break;case i:return void b.close();case o:if(!a.ctrlKey)break;case n:if(!b.isOpen&&b.hasOptions)b.open();else if(b.$activeOption){b.ignoreHover=!0;var c=b.getAdjacentOption(b.$activeOption,1);c.length&&b.setActiveOption(c,!0,!0)}return void a.preventDefault();case l:if(!a.ctrlKey)break;case k:if(b.$activeOption){b.ignoreHover=!0;var d=b.getAdjacentOption(b.$activeOption,-1);d.length&&b.setActiveOption(d,!0,!0)}return void a.preventDefault();case h:return b.isOpen&&b.$activeOption&&b.onOptionSelect({currentTarget:b.$activeOption}),void a.preventDefault();case j:return void b.advanceSelection(-1,a);case m:return void b.advanceSelection(1,a);case u:return b.isOpen&&b.$activeOption&&b.onOptionSelect({currentTarget:b.$activeOption}),void(b.settings.create&&b.createItem()&&a.preventDefault());case p:case q:return void b.deleteSelection(a)}return b.isFull()||b.isInputHidden?void a.preventDefault():void 0},onKeyUp:function(a){var b=this;if(b.isLocked)return a&&a.preventDefault();var c=b.$control_input.val()||"";b.lastValue!==c&&(b.lastValue=c,b.onSearchChange(c),b.refreshOptions(),b.trigger("type",c))},onSearchChange:function(a){var b=this,c=b.settings.load;c&&(b.loadedSearches.hasOwnProperty(a)||(b.loadedSearches[a]=!0,b.load(function(d){c.apply(b,[a,d])})))},onFocus:function(a){var b=this;return b.isFocused=!0,b.isDisabled?(b.blur(),a&&a.preventDefault(),!1):void(b.ignoreFocus||("focus"===b.settings.preload&&b.onSearchChange(""),b.$activeItems.length||(b.showInput(),b.setActiveItem(null),b.refreshOptions(!!b.settings.openOnFocus)),b.refreshState()))},onBlur:function(){var a=this;a.isFocused=!1,a.ignoreFocus||(a.settings.create&&a.settings.createOnBlur&&a.createItem(!1),a.close(),a.setTextboxValue(""),a.setActiveItem(null),a.setActiveOption(null),a.setCaret(a.items.length),a.refreshState())},onOptionHover:function(a){this.ignoreHover||this.setActiveOption(a.currentTarget,!1)},onOptionSelect:function(b){var c,d,e=this;b.preventDefault&&(b.preventDefault(),b.stopPropagation()),d=a(b.currentTarget),d.hasClass("create")?e.createItem():(c=d.attr("data-value"),c&&(e.lastQuery=null,e.setTextboxValue(""),e.addItem(c),!e.settings.hideSelected&&b.type&&/mouse/.test(b.type)&&e.setActiveOption(e.getOption(c))))},onItemSelect:function(a){var b=this;b.isLocked||"multi"===b.settings.mode&&(a.preventDefault(),b.setActiveItem(a.currentTarget,a))},load:function(a){var b=this,c=b.$wrapper.addClass("loading");b.loading++,a.apply(b,[function(a){b.loading=Math.max(b.loading-1,0),a&&a.length&&(b.addOption(a),b.refreshOptions(b.isFocused&&!b.isInputHidden)),b.loading||c.removeClass("loading"),b.trigger("load",a)}])},setTextboxValue:function(a){this.$control_input.val(a).triggerHandler("update"),this.lastValue=a},getValue:function(){return this.tagType===v&&this.$input.attr("multiple")?this.items:this.items.join(this.settings.delimiter)},setValue:function(a){F(this,["change"],function(){this.clear(),this.addItems(a)})},setActiveItem:function(b,c){var d,e,f,g,h,i,j,k,l=this;if("single"!==l.settings.mode){if(b=a(b),!b.length)return a(l.$activeItems).removeClass("active"),l.$activeItems=[],void(l.isFocused&&l.showInput());if(d=c&&c.type.toLowerCase(),"mousedown"===d&&l.isShiftDown&&l.$activeItems.length){for(k=l.$control.children(".active:last"),g=Array.prototype.indexOf.apply(l.$control[0].childNodes,[k[0]]),h=Array.prototype.indexOf.apply(l.$control[0].childNodes,[b[0]]),g>h&&(j=g,g=h,h=j),e=g;h>=e;e++)i=l.$control[0].childNodes[e],-1===l.$activeItems.indexOf(i)&&(a(i).addClass("active"),l.$activeItems.push(i));c.preventDefault()}else"mousedown"===d&&l.isCtrlDown||"keydown"===d&&this.isShiftDown?b.hasClass("active")?(f=l.$activeItems.indexOf(b[0]),l.$activeItems.splice(f,1),b.removeClass("active")):l.$activeItems.push(b.addClass("active")[0]):(a(l.$activeItems).removeClass("active"),l.$activeItems=[b.addClass("active")[0]]);l.hideInput(),this.isFocused||l.focus()}},setActiveOption:function(b,c,d){var e,f,g,h,i,j=this;j.$activeOption&&j.$activeOption.removeClass("active"),j.$activeOption=null,b=a(b),b.length&&(j.$activeOption=b.addClass("active"),(c||!x(c))&&(e=j.$dropdown_content.height(),f=j.$activeOption.outerHeight(!0),c=j.$dropdown_content.scrollTop()||0,g=j.$activeOption.offset().top-j.$dropdown_content.offset().top+c,h=g,i=g-e+f,g+f>e+c?j.$dropdown_content.stop().animate({scrollTop:i},d?j.settings.scrollDuration:0):c>g&&j.$dropdown_content.stop().animate({scrollTop:h},d?j.settings.scrollDuration:0)))},selectAll:function(){var a=this;"single"!==a.settings.mode&&(a.$activeItems=Array.prototype.slice.apply(a.$control.children(":not(input)").addClass("active")),a.$activeItems.length&&(a.hideInput(),a.close()),a.focus())},hideInput:function(){var a=this;a.setTextboxValue(""),a.$control_input.css({opacity:0,position:"absolute",left:a.rtl?1e4:-1e4}),a.isInputHidden=!0},showInput:function(){this.$control_input.css({opacity:1,position:"relative",left:0}),this.isInputHidden=!1},focus:function(){var a=this;a.isDisabled||(a.ignoreFocus=!0,a.$control_input[0].focus(),window.setTimeout(function(){a.ignoreFocus=!1,a.onFocus()},0))},blur:function(){this.$control_input.trigger("blur")},getScoreFunction:function(a){return this.sifter.getScoreFunction(a,this.getSearchOptions())},getSearchOptions:function(){var a=this.settings,b=a.sortField;return"string"==typeof b&&(b={field:b}),{fields:a.searchField,conjunction:a.searchConjunction,sort:b}},search:function(b){var c,d,e,f=this,g=f.settings,h=this.getSearchOptions();if(g.score&&(e=f.settings.score.apply(this,[b]),"function"!=typeof e))throw new Error('Selectize "score" setting must be a function that returns a function');if(b!==f.lastQuery?(f.lastQuery=b,d=f.sifter.search(b,a.extend(h,{score:e})),f.currentResults=d):d=a.extend(!0,{},f.currentResults),g.hideSelected)for(c=d.items.length-1;c>=0;c--)-1!==f.items.indexOf(y(d.items[c].id))&&d.items.splice(c,1);return d},refreshOptions:function(b){var c,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;"undefined"==typeof b&&(b=!0);var t=this,u=t.$control_input.val(),v=t.search(u),w=t.$dropdown_content,x=t.$activeOption&&y(t.$activeOption.attr("data-value"));if(g=v.items.length,"number"==typeof t.settings.maxOptions&&(g=Math.min(g,t.settings.maxOptions)),h={},t.settings.optgroupOrder)for(i=t.settings.optgroupOrder,c=0;cc;c++)for(j=t.options[v.items[c].id],k=t.render("option",j),l=j[t.settings.optgroupField]||"",m=a.isArray(l)?l:[l],e=0,f=m&&m.length;f>e;e++)l=m[e],t.optgroups.hasOwnProperty(l)||(l=""),h.hasOwnProperty(l)||(h[l]=[],i.push(l)),h[l].push(k);for(n=[],c=0,g=i.length;g>c;c++)l=i[c],t.optgroups.hasOwnProperty(l)&&h[l].length?(o=t.render("optgroup_header",t.optgroups[l])||"",o+=h[l].join(""),n.push(t.render("optgroup",a.extend({},t.optgroups[l],{html:o})))):n.push(h[l].join(""));if(w.html(n.join("")),t.settings.highlight&&v.query.length&&v.tokens.length)for(c=0,g=v.tokens.length;g>c;c++)d(w,v.tokens[c].regex);if(!t.settings.hideSelected)for(c=0,g=t.items.length;g>c;c++)t.getOption(t.items[c]).addClass("selected");p=t.settings.create&&v.query.length,p&&(w.prepend(t.render("option_create",{input:u})),s=a(w[0].childNodes[0])),t.hasOptions=v.items.length>0||p,t.hasOptions?(v.items.length>0?(r=x&&t.getOption(x),r&&r.length?q=r:"single"===t.settings.mode&&t.items.length&&(q=t.getOption(t.items[0])),q&&q.length||(q=s&&!t.settings.addPrecedence?t.getAdjacentOption(s,1):w.find("[data-selectable]:first"))):q=s,t.setActiveOption(q),b&&!t.isOpen&&t.open()):(t.setActiveOption(null),b&&t.isOpen&&t.close())},addOption:function(b){var c,d,e,f=this;if(a.isArray(b))for(c=0,d=b.length;d>c;c++)f.addOption(b[c]);else e=y(b[f.settings.valueField]),e&&!f.options.hasOwnProperty(e)&&(f.userOptions[e]=!0,f.options[e]=b,f.lastQuery=null,f.trigger("option_add",e,b))},addOptionGroup:function(a,b){this.optgroups[a]=b,this.trigger("optgroup_add",a,b)},updateOption:function(b,c){var d,e,f,g,h,i,j=this;if(b=y(b),f=y(c[j.settings.valueField]),j.options.hasOwnProperty(b)){if(!f)throw new Error("Value must be set in option data");f!==b&&(delete j.options[b],g=j.items.indexOf(b),-1!==g&&j.items.splice(g,1,f)),j.options[f]=c,h=j.renderCache.item,i=j.renderCache.option,x(h)&&(delete h[b],delete h[f]),x(i)&&(delete i[b],delete i[f]),-1!==j.items.indexOf(f)&&(d=j.getItem(b),e=a(j.render("item",c)),d.hasClass("active")&&e.addClass("active"),d.replaceWith(e)),j.isOpen&&j.refreshOptions(!1)}},removeOption:function(a){var b=this;a=y(a),delete b.userOptions[a],delete b.options[a],b.lastQuery=null,b.trigger("option_remove",a),b.removeItem(a)},clearOptions:function(){var a=this;a.loadedSearches={},a.userOptions={},a.options=a.sifter.items={},a.lastQuery=null,a.trigger("option_clear"),a.clear()},getOption:function(a){return this.getElementWithValue(a,this.$dropdown_content.find("[data-selectable]"))},getAdjacentOption:function(b,c){var d=this.$dropdown.find("[data-selectable]"),e=d.index(b)+c;return e>=0&&ed;d++)if(c[d].getAttribute("data-value")===b)return a(c[d]);return a()},getItem:function(a){return this.getElementWithValue(a,this.$control.children())},addItems:function(b){for(var c=a.isArray(b)?b:[b],d=0,e=c.length;e>d;d++)this.isPending=e-1>d,this.addItem(c[d])},addItem:function(b){F(this,["change"],function(){var c,d,e,f,g=this,h=g.settings.mode;return b=y(b),-1!==g.items.indexOf(b)?void("single"===h&&g.close()):void(g.options.hasOwnProperty(b)&&("single"===h&&g.clear(),"multi"===h&&g.isFull()||(c=a(g.render("item",g.options[b])),g.items.splice(g.caretPos,0,b),g.insertAtCaret(c),g.refreshState(),g.isSetup&&(e=g.$dropdown_content.find("[data-selectable]"),this.isPending||(d=g.getOption(b),f=g.getAdjacentOption(d,1).attr("data-value"),g.refreshOptions(g.isFocused&&"single"!==h),f&&g.setActiveOption(g.getOption(f))),!e.length||null!==g.settings.maxItems&&g.items.length>=g.settings.maxItems?g.close():g.positionDropdown(),g.updatePlaceholder(),g.trigger("item_add",b,c),g.updateOriginalInput()))))})},removeItem:function(a){var b,c,d,e=this;b="object"==typeof a?a:e.getItem(a),a=y(b.attr("data-value")),c=e.items.indexOf(a),-1!==c&&(b.remove(),b.hasClass("active")&&(d=e.$activeItems.indexOf(b[0]),e.$activeItems.splice(d,1)),e.items.splice(c,1),e.lastQuery=null,!e.settings.persist&&e.userOptions.hasOwnProperty(a)&&e.removeOption(a),c0),b.$control_input.data("grow",!c&&!d)},isFull:function(){return null!==this.settings.maxItems&&this.items.length>=this.settings.maxItems},updateOriginalInput:function(){var a,b,c,d=this;if("select"===d.$input[0].tagName.toLowerCase()){for(c=[],a=0,b=d.items.length;b>a;a++)c.push('');c.length||this.$input.attr("multiple")||c.push(''),d.$input.html(c.join(""))}else d.$input.val(d.getValue());d.isSetup&&d.trigger("change",d.$input.val())},updatePlaceholder:function(){if(this.settings.placeholder){var a=this.$control_input;this.items.length?a.removeAttr("placeholder"):a.attr("placeholder",this.settings.placeholder),a.triggerHandler("update")}},open:function(){var a=this;a.isLocked||a.isOpen||"multi"===a.settings.mode&&a.isFull()||(a.focus(),a.isOpen=!0,a.refreshState(),a.$dropdown.css({visibility:"hidden",display:"block"}),a.positionDropdown(),a.$dropdown.css({visibility:"visible"}),a.trigger("dropdown_open",a.$dropdown))},close:function(){var a=this,b=a.isOpen;"single"===a.settings.mode&&a.items.length&&a.hideInput(),a.isOpen=!1,a.$dropdown.hide(),a.setActiveOption(null),a.refreshState(),b&&a.trigger("dropdown_close",a.$dropdown)},positionDropdown:function(){var a=this.$control,b="body"===this.settings.dropdownParent?a.offset():a.position();b.top+=a.outerHeight(!0),this.$dropdown.css({width:a.outerWidth(),top:b.top,left:b.left})},clear:function(){var a=this;a.items.length&&(a.$control.children(":not(input)").remove(),a.items=[],a.setCaret(0),a.updatePlaceholder(),a.updateOriginalInput(),a.refreshState(),a.showInput(),a.trigger("clear"))},insertAtCaret:function(b){var c=Math.min(this.caretPos,this.items.length);0===c?this.$control.prepend(b):a(this.$control[0].childNodes[c]).before(b),this.setCaret(c+1)},deleteSelection:function(b){var c,d,e,f,g,h,i,j,k,l=this;if(e=b&&b.keyCode===p?-1:1,f=H(l.$control_input[0]),l.$activeOption&&!l.settings.hideSelected&&(i=l.getAdjacentOption(l.$activeOption,-1).attr("data-value")),g=[],l.$activeItems.length){for(k=l.$control.children(".active:"+(e>0?"last":"first")),h=l.$control.children(":not(input)").index(k),e>0&&h++,c=0,d=l.$activeItems.length;d>c;c++)g.push(a(l.$activeItems[c]).attr("data-value"));b&&(b.preventDefault(),b.stopPropagation())}else(l.isFocused||"single"===l.settings.mode)&&l.items.length&&(0>e&&0===f.start&&0===f.length?g.push(l.items[l.caretPos-1]):e>0&&f.start===l.$control_input.val().length&&g.push(l.items[l.caretPos]));if(!g.length||"function"==typeof l.settings.onDelete&&l.settings.onDelete.apply(l,[g])===!1)return!1;for("undefined"!=typeof h&&l.setCaret(h);g.length;)l.removeItem(g.pop());return l.showInput(),l.positionDropdown(),l.refreshOptions(!0),i&&(j=l.getOption(i),j.length&&l.setActiveOption(j)),!0},advanceSelection:function(a,b){var c,d,e,f,g,h,i=this;0!==a&&(i.rtl&&(a*=-1),c=a>0?"last":"first",d=H(i.$control_input[0]),i.isFocused&&!i.isInputHidden?(f=i.$control_input.val().length,g=0>a?0===d.start&&0===d.length:d.start===f,g&&!f&&i.advanceCaret(a,b)):(h=i.$control.children(".active:"+c),h.length&&(e=i.$control.children(":not(input)").index(h),i.setActiveItem(null),i.setCaret(a>0?e+1:e))))},advanceCaret:function(a,b){var c,d,e=this;0!==a&&(c=a>0?"next":"prev",e.isShiftDown?(d=e.$control_input[c](),d.length&&(e.hideInput(),e.setActiveItem(d),b&&b.preventDefault())):e.setCaret(e.caretPos+a))},setCaret:function(b){var c=this;b="single"===c.settings.mode?c.items.length:Math.max(0,Math.min(c.items.length,b));var d,e,f,g;for(f=c.$control.children(":not(input)"),d=0,e=f.length;e>d;d++)g=a(f[d]).detach(),b>d?c.$control_input.before(g):c.$control.append(g);c.caretPos=b},lock:function(){this.close(),this.isLocked=!0,this.refreshState()},unlock:function(){this.isLocked=!1,this.refreshState()},disable:function(){var a=this;a.$input.prop("disabled",!0),a.isDisabled=!0,a.lock()},enable:function(){var a=this;a.$input.prop("disabled",!1),a.isDisabled=!1,a.unlock()},destroy:function(){var b=this,c=b.eventNS,d=b.revertSettings;b.trigger("destroy"),b.off(),b.$wrapper.remove(),b.$dropdown.remove(),b.$input.html("").append(d.$children).removeAttr("tabindex").attr({tabindex:d.tabindex}).show(),a(window).off(c),a(document).off(c),a(document.body).off(c),delete b.$input[0].selectize},render:function(a,b){var c,d,e="",f=!1,g=this,h=/^[\t ]*<([a-z][a-z0-9\-_]*(?:\:[a-z][a-z0-9\-_]*)?)/i;return("option"===a||"item"===a)&&(c=y(b[g.settings.valueField]),f=!!c),f&&(x(g.renderCache[a])||(g.renderCache[a]={}),g.renderCache[a].hasOwnProperty(c))?g.renderCache[a][c]:(e=g.settings.render[a].apply(this,[b,z]),("option"===a||"option_create"===a)&&(e=e.replace(h,"<$1 data-selectable")),"optgroup"===a&&(d=b[g.settings.optgroupValueField]||"",e=e.replace(h,'<$1 data-group="'+A(z(d))+'"')),("option"===a||"item"===a)&&(e=e.replace(h,'<$1 data-value="'+A(z(c||""))+'"')),f&&(g.renderCache[a][c]=e),e)}}),L.count=0,L.defaults={plugins:[],delimiter:",",persist:!0,diacritics:!0,create:!1,createOnBlur:!1,highlight:!0,openOnFocus:!0,maxOptions:1e3,maxItems:null,hideSelected:null,addPrecedence:!1,preload:!1,scrollDuration:60,loadThrottle:300,dataAttr:"data-data",optgroupField:"optgroup",valueField:"value",labelField:"text",optgroupLabelField:"label",optgroupValueField:"value",optgroupOrder:null,sortField:"$order",searchField:["text"],searchConjunction:"and",mode:null,wrapperClass:"selectize-control",inputClass:"selectize-input",dropdownClass:"selectize-dropdown",dropdownContentClass:"selectize-dropdown-content",dropdownParent:null,render:{}},a.fn.selectize=function(b){var c=a.fn.selectize.defaults,d=a.extend({},c,b),e=d.dataAttr,f=d.labelField,g=d.valueField,h=d.optgroupField,i=d.optgroupLabelField,j=d.optgroupValueField,k=function(b,c){var e,h,i,j,k=a.trim(b.val()||"");if(k.length){for(i=k.split(d.delimiter),e=0,h=i.length;h>e;e++)j={},j[f]=i[e],j[g]=i[e],c.options[i[e]]=j;c.items=i}},l=function(b,c){var d,k,l,m,n=0,o=c.options,p=function(a){var b=e&&a.attr(e);return"string"==typeof b&&b.length?JSON.parse(b):null},q=function(b,d){var e,i;if(b=a(b),e=b.attr("value")||"",e.length){if(o.hasOwnProperty(e))return void(d&&(o[e].optgroup?a.isArray(o[e].optgroup)?o[e].optgroup.push(d):o[e].optgroup=[o[e].optgroup,d]:o[e].optgroup=d));i=p(b)||{},i[f]=i[f]||b.text(),i[g]=i[g]||e,i[h]=i[h]||d,i.$order=++n,o[e]=i,b.is(":selected")&&c.items.push(e)}},r=function(b){var d,e,f,g,h;for(b=a(b),f=b.attr("label"),f&&(g=p(b)||{},g[i]=f,g[j]=f,c.optgroups[f]=g),h=a("option",b),d=0,e=h.length;e>d;d++)q(h[d],f)};for(c.maxItems=b.attr("multiple")?null:1,m=b.children(),d=0,k=m.length;k>d;d++)l=m[d].tagName.toLowerCase(),"optgroup"===l?r(m[d]):"option"===l&&q(m[d])};return this.each(function(){if(!this.selectize){var d,e=a(this),f=this.tagName.toLowerCase(),g={placeholder:e.children('option[value=""]').text()||e.attr("placeholder"),options:{},optgroups:{},items:[]};"select"===f?l(e,g):k(e,g),d=new L(e,a.extend(!0,{},c,g,b)),e.data("selectize",d),e.addClass("selectized")}})},a.fn.selectize.defaults=L.defaults,L.define("drag_drop",function(){if(!a.fn.sortable)throw new Error('The "drag_drop" plugin requires jQuery UI "sortable".');if("multi"===this.settings.mode){var b=this;b.lock=function(){var a=b.lock;return function(){var c=b.$control.data("sortable");return c&&c.disable(),a.apply(b,arguments)}}(),b.unlock=function(){var a=b.unlock;return function(){var c=b.$control.data("sortable");return c&&c.enable(),a.apply(b,arguments)}}(),b.setup=function(){var c=b.setup;return function(){c.apply(this,arguments);var d=b.$control.sortable({items:"[data-value]",forcePlaceholderSize:!0,disabled:b.isLocked,start:function(a,b){b.placeholder.css("width",b.helper.css("width")),d.css({overflow:"visible"})},stop:function(){d.css({overflow:"hidden"});var c=b.$activeItems?b.$activeItems.slice():null,e=[];d.children("[data-value]").each(function(){e.push(a(this).attr("data-value"))}),b.setValue(e),b.setActiveItem(c)}})}}()}}),L.define("dropdown_header",function(b){var c=this;b=a.extend({title:"Untitled",headerClass:"selectize-dropdown-header",titleRowClass:"selectize-dropdown-header-title",labelClass:"selectize-dropdown-header-label",closeClass:"selectize-dropdown-header-close",html:function(a){return'
'+a.title+'×
'}},b),c.setup=function(){var d=c.setup;return function(){d.apply(c,arguments),c.$dropdown_header=a(b.html(b)),c.$dropdown.prepend(c.$dropdown_header)}}()}),L.define("optgroup_columns",function(b){var c=this;b=a.extend({equalizeWidth:!0,equalizeHeight:!0},b),this.getAdjacentOption=function(b,c){var d=b.closest("[data-group]").find("[data-selectable]"),e=d.index(b)+c;return e>=0&&ed;d++)f=Math.max(f,j.eq(d).height());j.css({height:f})}b.equalizeWidth&&(i=c.$dropdown_content.innerWidth(),g=Math.round(i/e),j.css({width:g}),e>1&&(h=i-g*(e-1),j.eq(e-1).css({width:h})))}};(b.equalizeHeight||b.equalizeWidth)&&(B.after(this,"positionDropdown",d),B.after(this,"refreshOptions",d))}),L.define("remove_button",function(b){if("single"!==this.settings.mode){b=a.extend({label:"×",title:"Remove",className:"remove",append:!0},b);var c=this,d=''+b.label+"",e=function(a,b){var c=a.search(/(<\/[^>]+>\s*)$/); +return a.substring(0,c)+b+a.substring(c)};this.setup=function(){var f=c.setup;return function(){if(b.append){var g=c.settings.render.item;c.settings.render.item=function(){return e(g.apply(this,arguments),d)}}f.apply(this,arguments),this.$control.on("click","."+b.className,function(b){if(b.preventDefault(),!c.isLocked){var d=a(b.currentTarget).parent();c.setActiveItem(d),c.deleteSelection()&&c.setCaret(c.items.length)}})}}()}}),L.define("restore_on_backspace",function(a){var b=this;a.text=a.text||function(a){return a[this.settings.labelField]},this.onKeyDown=function(){var c=b.onKeyDown;return function(b){var d,e;return b.keyCode===p&&""===this.$control_input.val()&&!this.$activeItems.length&&(d=this.caretPos-1,d>=0&&d + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + define('sifter', factory); + } else if (typeof exports === 'object') { + module.exports = factory(); + } else { + root.Sifter = factory(); + } +}(this, function() { + + /** + * Textually searches arrays and hashes of objects + * by property (or multiple properties). Designed + * specifically for autocomplete. + * + * @constructor + * @param {array|object} items + * @param {object} items + */ + var Sifter = function(items, settings) { + this.items = items; + this.settings = settings || {diacritics: true}; + }; + + /** + * Splits a search string into an array of individual + * regexps to be used to match results. + * + * @param {string} query + * @returns {array} + */ + Sifter.prototype.tokenize = function(query) { + query = trim(String(query || '').toLowerCase()); + if (!query || !query.length) return []; + + var i, n, regex, letter; + var tokens = []; + var words = query.split(/ +/); + + for (i = 0, n = words.length; i < n; i++) { + regex = escape_regex(words[i]); + if (this.settings.diacritics) { + for (letter in DIACRITICS) { + if (DIACRITICS.hasOwnProperty(letter)) { + regex = regex.replace(new RegExp(letter, 'g'), DIACRITICS[letter]); + } + } + } + tokens.push({ + string : words[i], + regex : new RegExp(regex, 'i') + }); + } + + return tokens; + }; + + /** + * Iterates over arrays and hashes. + * + * ``` + * this.iterator(this.items, function(item, id) { + * // invoked for each item + * }); + * ``` + * + * @param {array|object} object + */ + Sifter.prototype.iterator = function(object, callback) { + var iterator; + if (is_array(object)) { + iterator = Array.prototype.forEach || function(callback) { + for (var i = 0, n = this.length; i < n; i++) { + callback(this[i], i, this); + } + }; + } else { + iterator = function(callback) { + for (var key in this) { + if (this.hasOwnProperty(key)) { + callback(this[key], key, this); + } + } + }; + } + + iterator.apply(object, [callback]); + }; + + /** + * Returns a function to be used to score individual results. + * + * Good matches will have a higher score than poor matches. + * If an item is not a match, 0 will be returned by the function. + * + * @param {object|string} search + * @param {object} options (optional) + * @returns {function} + */ + Sifter.prototype.getScoreFunction = function(search, options) { + var self, fields, tokens, token_count; + + self = this; + search = self.prepareSearch(search, options); + tokens = search.tokens; + fields = search.options.fields; + token_count = tokens.length; + + /** + * Calculates how close of a match the + * given value is against a search token. + * + * @param {mixed} value + * @param {object} token + * @return {number} + */ + var scoreValue = function(value, token) { + var score, pos; + + if (!value) return 0; + value = String(value || ''); + pos = value.search(token.regex); + if (pos === -1) return 0; + score = token.string.length / value.length; + if (pos === 0) score += 0.5; + return score; + }; + + /** + * Calculates the score of an object + * against the search query. + * + * @param {object} token + * @param {object} data + * @return {number} + */ + var scoreObject = (function() { + var field_count = fields.length; + if (!field_count) { + return function() { return 0; }; + } + if (field_count === 1) { + return function(token, data) { + return scoreValue(data[fields[0]], token); + }; + } + return function(token, data) { + for (var i = 0, sum = 0; i < field_count; i++) { + sum += scoreValue(data[fields[i]], token); + } + return sum / field_count; + }; + })(); + + if (!token_count) { + return function() { return 0; }; + } + if (token_count === 1) { + return function(data) { + return scoreObject(tokens[0], data); + }; + } + + if (search.options.conjunction === 'and') { + return function(data) { + var score; + for (var i = 0, sum = 0; i < token_count; i++) { + score = scoreObject(tokens[i], data); + if (score <= 0) return 0; + sum += score; + } + return sum / token_count; + }; + } else { + return function(data) { + for (var i = 0, sum = 0; i < token_count; i++) { + sum += scoreObject(tokens[i], data); + } + return sum / token_count; + }; + } + }; + + /** + * Returns a function that can be used to compare two + * results, for sorting purposes. If no sorting should + * be performed, `null` will be returned. + * + * @param {string|object} search + * @param {object} options + * @return function(a,b) + */ + Sifter.prototype.getSortFunction = function(search, options) { + var i, n, self, field, fields, fields_count, multiplier, multipliers, get_field, implicit_score, sort; + + self = this; + search = self.prepareSearch(search, options); + sort = (!search.query && options.sort_empty) || options.sort; + + /** + * Fetches the specified sort field value + * from a search result item. + * + * @param {string} name + * @param {object} result + * @return {mixed} + */ + get_field = function(name, result) { + if (name === '$score') return result.score; + return self.items[result.id][name]; + }; + + // parse options + fields = []; + if (sort) { + for (i = 0, n = sort.length; i < n; i++) { + if (search.query || sort[i].field !== '$score') { + fields.push(sort[i]); + } + } + } + + // the "$score" field is implied to be the primary + // sort field, unless it's manually specified + if (search.query) { + implicit_score = true; + for (i = 0, n = fields.length; i < n; i++) { + if (fields[i].field === '$score') { + implicit_score = false; + break; + } + } + if (implicit_score) { + fields.unshift({field: '$score', direction: 'desc'}); + } + } else { + for (i = 0, n = fields.length; i < n; i++) { + if (fields[i].field === '$score') { + fields.splice(i, 1); + break; + } + } + } + + multipliers = []; + for (i = 0, n = fields.length; i < n; i++) { + multipliers.push(fields[i].direction === 'desc' ? -1 : 1); + } + + // build function + fields_count = fields.length; + if (!fields_count) { + return null; + } else if (fields_count === 1) { + field = fields[0].field; + multiplier = multipliers[0]; + return function(a, b) { + return multiplier * cmp( + get_field(field, a), + get_field(field, b) + ); + }; + } else { + return function(a, b) { + var i, result, a_value, b_value, field; + for (i = 0; i < fields_count; i++) { + field = fields[i].field; + result = multipliers[i] * cmp( + get_field(field, a), + get_field(field, b) + ); + if (result) return result; + } + return 0; + }; + } + }; + + /** + * Parses a search query and returns an object + * with tokens and fields ready to be populated + * with results. + * + * @param {string} query + * @param {object} options + * @returns {object} + */ + Sifter.prototype.prepareSearch = function(query, options) { + if (typeof query === 'object') return query; + + options = extend({}, options); + + var option_fields = options.fields; + var option_sort = options.sort; + var option_sort_empty = options.sort_empty; + + if (option_fields && !is_array(option_fields)) options.fields = [option_fields]; + if (option_sort && !is_array(option_sort)) options.sort = [option_sort]; + if (option_sort_empty && !is_array(option_sort_empty)) options.sort_empty = [option_sort_empty]; + + return { + options : options, + query : String(query || '').toLowerCase(), + tokens : this.tokenize(query), + total : 0, + items : [] + }; + }; + + /** + * Searches through all items and returns a sorted array of matches. + * + * The `options` parameter can contain: + * + * - fields {string|array} + * - sort {array} + * - score {function} + * - filter {bool} + * - limit {integer} + * + * Returns an object containing: + * + * - options {object} + * - query {string} + * - tokens {array} + * - total {int} + * - items {array} + * + * @param {string} query + * @param {object} options + * @returns {object} + */ + Sifter.prototype.search = function(query, options) { + var self = this, value, score, search, calculateScore; + var fn_sort; + var fn_score; + + search = this.prepareSearch(query, options); + options = search.options; + query = search.query; + + // generate result scoring function + fn_score = options.score || self.getScoreFunction(search); + + // perform search and sort + if (query.length) { + self.iterator(self.items, function(item, id) { + score = fn_score(item); + if (options.filter === false || score > 0) { + search.items.push({'score': score, 'id': id}); + } + }); + } else { + self.iterator(self.items, function(item, id) { + search.items.push({'score': 1, 'id': id}); + }); + } + + fn_sort = self.getSortFunction(search, options); + if (fn_sort) search.items.sort(fn_sort); + + // apply limits + search.total = search.items.length; + if (typeof options.limit === 'number') { + search.items = search.items.slice(0, options.limit); + } + + return search; + }; + + // utilities + // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + var cmp = function(a, b) { + if (typeof a === 'number' && typeof b === 'number') { + return a > b ? 1 : (a < b ? -1 : 0); + } + a = String(a || '').toLowerCase(); + b = String(b || '').toLowerCase(); + if (a > b) return 1; + if (b > a) return -1; + return 0; + }; + + var extend = function(a, b) { + var i, n, k, object; + for (i = 1, n = arguments.length; i < n; i++) { + object = arguments[i]; + if (!object) continue; + for (k in object) { + if (object.hasOwnProperty(k)) { + a[k] = object[k]; + } + } + } + return a; + }; + + var trim = function(str) { + return (str + '').replace(/^\s+|\s+$|/g, ''); + }; + + var escape_regex = function(str) { + return (str + '').replace(/([.?*+^$[\]\\(){}|-])/g, '\\$1'); + }; + + var is_array = Array.isArray || ($ && $.isArray) || function(object) { + return Object.prototype.toString.call(object) === '[object Array]'; + }; + + var DIACRITICS = { + 'a': '[aÀÁÂÃÄÅàáâãäå]', + 'c': '[cÇçćĆčČ]', + 'd': '[dđĐďĎ]', + 'e': '[eÈÉÊËèéêëěĚ]', + 'i': '[iÌÍÎÏìíîï]', + 'n': '[nÑñňŇ]', + 'o': '[oÒÓÔÕÕÖØòóôõöø]', + 'r': '[rřŘ]', + 's': '[sŠš]', + 't': '[tťŤ]', + 'u': '[uÙÚÛÜùúûüůŮ]', + 'y': '[yŸÿýÝ]', + 'z': '[zŽž]' + }; + + // export + // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + return Sifter; +})); + + + +/** + * microplugin.js + * Copyright (c) 2013 Brian Reavis & contributors + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this + * file except in compliance with the License. You may obtain a copy of the License at: + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under + * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF + * ANY KIND, either express or implied. See the License for the specific language + * governing permissions and limitations under the License. + * + * @author Brian Reavis + */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + define('microplugin', factory); + } else if (typeof exports === 'object') { + module.exports = factory(); + } else { + root.MicroPlugin = factory(); + } +}(this, function() { + var MicroPlugin = {}; + + MicroPlugin.mixin = function(Interface) { + Interface.plugins = {}; + + /** + * Initializes the listed plugins (with options). + * Acceptable formats: + * + * List (without options): + * ['a', 'b', 'c'] + * + * List (with options): + * [{'name': 'a', options: {}}, {'name': 'b', options: {}}] + * + * Hash (with options): + * {'a': { ... }, 'b': { ... }, 'c': { ... }} + * + * @param {mixed} plugins + */ + Interface.prototype.initializePlugins = function(plugins) { + var i, n, key; + var self = this; + var queue = []; + + self.plugins = { + names : [], + settings : {}, + requested : {}, + loaded : {} + }; + + if (utils.isArray(plugins)) { + for (i = 0, n = plugins.length; i < n; i++) { + if (typeof plugins[i] === 'string') { + queue.push(plugins[i]); + } else { + self.plugins.settings[plugins[i].name] = plugins[i].options; + queue.push(plugins[i].name); + } + } + } else if (plugins) { + for (key in plugins) { + if (plugins.hasOwnProperty(key)) { + self.plugins.settings[key] = plugins[key]; + queue.push(key); + } + } + } + + while (queue.length) { + self.require(queue.shift()); + } + }; + + Interface.prototype.loadPlugin = function(name) { + var self = this; + var plugins = self.plugins; + var plugin = Interface.plugins[name]; + + if (!Interface.plugins.hasOwnProperty(name)) { + throw new Error('Unable to find "' + name + '" plugin'); + } + + plugins.requested[name] = true; + plugins.loaded[name] = plugin.fn.apply(self, [self.plugins.settings[name] || {}]); + plugins.names.push(name); + }; + + /** + * Initializes a plugin. + * + * @param {string} name + */ + Interface.prototype.require = function(name) { + var self = this; + var plugins = self.plugins; + + if (!self.plugins.loaded.hasOwnProperty(name)) { + if (plugins.requested[name]) { + throw new Error('Plugin has circular dependency ("' + name + '")'); + } + self.loadPlugin(name); + } + + return plugins.loaded[name]; + }; + + /** + * Registers a plugin. + * + * @param {string} name + * @param {function} fn + */ + Interface.define = function(name, fn) { + Interface.plugins[name] = { + 'name' : name, + 'fn' : fn + }; + }; + }; + + var utils = { + isArray: Array.isArray || function(vArg) { + return Object.prototype.toString.call(vArg) === '[object Array]'; + } + }; + + return MicroPlugin; +})); + +/** + * selectize.js (v0.9.0) + * Copyright (c) 2013 Brian Reavis & contributors + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this + * file except in compliance with the License. You may obtain a copy of the License at: + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under + * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF + * ANY KIND, either express or implied. See the License for the specific language + * governing permissions and limitations under the License. + * + * @author Brian Reavis + */ + +/*jshint curly:false */ +/*jshint browser:true */ + +(function(root, factory) { + if (typeof define === 'function' && define.amd) { + define('selectize', ['jquery','sifter','microplugin'], factory); + } else if (typeof exports === 'object') { + module.exports = factory(require('jquery'), require('sifter'), require('microplugin')); + } else { + root.Selectize = factory(root.jQuery, root.Sifter, root.MicroPlugin); + } +}(this, function($, Sifter, MicroPlugin) { + 'use strict'; + + var highlight = function($element, pattern) { + if (typeof pattern === 'string' && !pattern.length) return; + var regex = (typeof pattern === 'string') ? new RegExp(pattern, 'i') : pattern; + + var highlight = function(node) { + var skip = 0; + if (node.nodeType === 3) { + var pos = node.data.search(regex); + if (pos >= 0 && node.data.length > 0) { + var match = node.data.match(regex); + var spannode = document.createElement('span'); + spannode.className = 'highlight'; + var middlebit = node.splitText(pos); + var endbit = middlebit.splitText(match[0].length); + var middleclone = middlebit.cloneNode(true); + spannode.appendChild(middleclone); + middlebit.parentNode.replaceChild(spannode, middlebit); + skip = 1; + } + } else if (node.nodeType === 1 && node.childNodes && !/(script|style)/i.test(node.tagName)) { + for (var i = 0; i < node.childNodes.length; ++i) { + i += highlight(node.childNodes[i]); + } + } + return skip; + }; + + return $element.each(function() { + highlight(this); + }); + }; + + var MicroEvent = function() {}; + MicroEvent.prototype = { + on: function(event, fct){ + this._events = this._events || {}; + this._events[event] = this._events[event] || []; + this._events[event].push(fct); + }, + off: function(event, fct){ + var n = arguments.length; + if (n === 0) return delete this._events; + if (n === 1) return delete this._events[event]; + + this._events = this._events || {}; + if (event in this._events === false) return; + this._events[event].splice(this._events[event].indexOf(fct), 1); + }, + trigger: function(event /* , args... */){ + this._events = this._events || {}; + if (event in this._events === false) return; + for (var i = 0; i < this._events[event].length; i++){ + this._events[event][i].apply(this, Array.prototype.slice.call(arguments, 1)); + } + } + }; + + /** + * Mixin will delegate all MicroEvent.js function in the destination object. + * + * - MicroEvent.mixin(Foobar) will make Foobar able to use MicroEvent + * + * @param {object} the object which will support MicroEvent + */ + MicroEvent.mixin = function(destObject){ + var props = ['on', 'off', 'trigger']; + for (var i = 0; i < props.length; i++){ + destObject.prototype[props[i]] = MicroEvent.prototype[props[i]]; + } + }; + + var IS_MAC = /Mac/.test(navigator.userAgent); + + var KEY_A = 65; + var KEY_COMMA = 188; + var KEY_RETURN = 13; + var KEY_ESC = 27; + var KEY_LEFT = 37; + var KEY_UP = 38; + var KEY_P = 80; + var KEY_RIGHT = 39; + var KEY_DOWN = 40; + var KEY_N = 78; + var KEY_BACKSPACE = 8; + var KEY_DELETE = 46; + var KEY_SHIFT = 16; + var KEY_CMD = IS_MAC ? 91 : 17; + var KEY_CTRL = IS_MAC ? 18 : 17; + var KEY_TAB = 9; + + var TAG_SELECT = 1; + var TAG_INPUT = 2; + + + var isset = function(object) { + return typeof object !== 'undefined'; + }; + + /** + * Converts a scalar to its best string representation + * for hash keys and HTML attribute values. + * + * Transformations: + * 'str' -> 'str' + * null -> '' + * undefined -> '' + * true -> '1' + * false -> '0' + * 0 -> '0' + * 1 -> '1' + * + * @param {string} value + * @returns {string} + */ + var hash_key = function(value) { + if (typeof value === 'undefined' || value === null) return ''; + if (typeof value === 'boolean') return value ? '1' : '0'; + return value + ''; + }; + + /** + * Escapes a string for use within HTML. + * + * @param {string} str + * @returns {string} + */ + var escape_html = function(str) { + return (str + '') + .replace(/&/g, '&') + .replace(//g, '>') + .replace(/"/g, '"'); + }; + + /** + * Escapes "$" characters in replacement strings. + * + * @param {string} str + * @returns {string} + */ + var escape_replace = function(str) { + return (str + '').replace(/\$/g, '$$$$'); + }; + + var hook = {}; + + /** + * Wraps `method` on `self` so that `fn` + * is invoked before the original method. + * + * @param {object} self + * @param {string} method + * @param {function} fn + */ + hook.before = function(self, method, fn) { + var original = self[method]; + self[method] = function() { + fn.apply(self, arguments); + return original.apply(self, arguments); + }; + }; + + /** + * Wraps `method` on `self` so that `fn` + * is invoked after the original method. + * + * @param {object} self + * @param {string} method + * @param {function} fn + */ + hook.after = function(self, method, fn) { + var original = self[method]; + self[method] = function() { + var result = original.apply(self, arguments); + fn.apply(self, arguments); + return result; + }; + }; + + /** + * Builds a hash table out of an array of + * objects, using the specified `key` within + * each object. + * + * @param {string} key + * @param {mixed} objects + */ + var build_hash_table = function(key, objects) { + if (!$.isArray(objects)) return objects; + var i, n, table = {}; + for (i = 0, n = objects.length; i < n; i++) { + if (objects[i].hasOwnProperty(key)) { + table[objects[i][key]] = objects[i]; + } + } + return table; + }; + + /** + * Wraps `fn` so that it can only be invoked once. + * + * @param {function} fn + * @returns {function} + */ + var once = function(fn) { + var called = false; + return function() { + if (called) return; + called = true; + fn.apply(this, arguments); + }; + }; + + /** + * Wraps `fn` so that it can only be called once + * every `delay` milliseconds (invoked on the falling edge). + * + * @param {function} fn + * @param {int} delay + * @returns {function} + */ + var debounce = function(fn, delay) { + var timeout; + return function() { + var self = this; + var args = arguments; + window.clearTimeout(timeout); + timeout = window.setTimeout(function() { + fn.apply(self, args); + }, delay); + }; + }; + + /** + * Debounce all fired events types listed in `types` + * while executing the provided `fn`. + * + * @param {object} self + * @param {array} types + * @param {function} fn + */ + var debounce_events = function(self, types, fn) { + var type; + var trigger = self.trigger; + var event_args = {}; + + // override trigger method + self.trigger = function() { + var type = arguments[0]; + if (types.indexOf(type) !== -1) { + event_args[type] = arguments; + } else { + return trigger.apply(self, arguments); + } + }; + + // invoke provided function + fn.apply(self, []); + self.trigger = trigger; + + // trigger queued events + for (type in event_args) { + if (event_args.hasOwnProperty(type)) { + trigger.apply(self, event_args[type]); + } + } + }; + + /** + * A workaround for http://bugs.jquery.com/ticket/6696 + * + * @param {object} $parent - Parent element to listen on. + * @param {string} event - Event name. + * @param {string} selector - Descendant selector to filter by. + * @param {function} fn - Event handler. + */ + var watchChildEvent = function($parent, event, selector, fn) { + $parent.on(event, selector, function(e) { + var child = e.target; + while (child && child.parentNode !== $parent[0]) { + child = child.parentNode; + } + e.currentTarget = child; + return fn.apply(this, [e]); + }); + }; + + /** + * Determines the current selection within a text input control. + * Returns an object containing: + * - start + * - length + * + * @param {object} input + * @returns {object} + */ + var getSelection = function(input) { + var result = {}; + if ('selectionStart' in input) { + result.start = input.selectionStart; + result.length = input.selectionEnd - result.start; + } else if (document.selection) { + input.focus(); + var sel = document.selection.createRange(); + var selLen = document.selection.createRange().text.length; + sel.moveStart('character', -input.value.length); + result.start = sel.text.length - selLen; + result.length = selLen; + } + return result; + }; + + /** + * Copies CSS properties from one element to another. + * + * @param {object} $from + * @param {object} $to + * @param {array} properties + */ + var transferStyles = function($from, $to, properties) { + var i, n, styles = {}; + if (properties) { + for (i = 0, n = properties.length; i < n; i++) { + styles[properties[i]] = $from.css(properties[i]); + } + } else { + styles = $from.css(); + } + $to.css(styles); + }; + + /** + * Measures the width of a string within a + * parent element (in pixels). + * + * @param {string} str + * @param {object} $parent + * @returns {int} + */ + var measureString = function(str, $parent) { + if (!str) { + return 0; + } + + var $test = $('').css({ + position: 'absolute', + top: -99999, + left: -99999, + width: 'auto', + padding: 0, + whiteSpace: 'pre' + }).text(str).appendTo('body'); + + transferStyles($parent, $test, [ + 'letterSpacing', + 'fontSize', + 'fontFamily', + 'fontWeight', + 'textTransform' + ]); + + var width = $test.width(); + $test.remove(); + + return width; + }; + + /** + * Sets up an input to grow horizontally as the user + * types. If the value is changed manually, you can + * trigger the "update" handler to resize: + * + * $input.trigger('update'); + * + * @param {object} $input + */ + var autoGrow = function($input) { + var currentWidth = null; + + var update = function(e) { + var value, keyCode, printable, placeholder, width; + var shift, character, selection; + e = e || window.event || {}; + + if (e.metaKey || e.altKey) return; + if ($input.data('grow') === false) return; + + value = $input.val(); + if (e.type && e.type.toLowerCase() === 'keydown') { + keyCode = e.keyCode; + printable = ( + (keyCode >= 97 && keyCode <= 122) || // a-z + (keyCode >= 65 && keyCode <= 90) || // A-Z + (keyCode >= 48 && keyCode <= 57) || // 0-9 + keyCode === 32 // space + ); + + if (keyCode === KEY_DELETE || keyCode === KEY_BACKSPACE) { + selection = getSelection($input[0]); + if (selection.length) { + value = value.substring(0, selection.start) + value.substring(selection.start + selection.length); + } else if (keyCode === KEY_BACKSPACE && selection.start) { + value = value.substring(0, selection.start - 1) + value.substring(selection.start + 1); + } else if (keyCode === KEY_DELETE && typeof selection.start !== 'undefined') { + value = value.substring(0, selection.start) + value.substring(selection.start + 1); + } + } else if (printable) { + shift = e.shiftKey; + character = String.fromCharCode(e.keyCode); + if (shift) character = character.toUpperCase(); + else character = character.toLowerCase(); + value += character; + } + } + + placeholder = $input.attr('placeholder') || ''; + if (!value.length && placeholder.length) { + value = placeholder; + } + + width = measureString(value, $input) + 4; + if (width !== currentWidth) { + currentWidth = width; + $input.width(width); + $input.triggerHandler('resize'); + } + }; + + $input.on('keydown keyup update blur', update); + update(); + }; + + var Selectize = function($input, settings) { + var key, i, n, dir, input, self = this; + input = $input[0]; + input.selectize = self; + + // detect rtl environment + dir = window.getComputedStyle ? window.getComputedStyle(input, null).getPropertyValue('direction') : input.currentStyle && input.currentStyle.direction; + dir = dir || $input.parents('[dir]:first').attr('dir') || ''; + + // setup default state + $.extend(self, { + settings : settings, + $input : $input, + tagType : input.tagName.toLowerCase() === 'select' ? TAG_SELECT : TAG_INPUT, + rtl : /rtl/i.test(dir), + + eventNS : '.selectize' + (++Selectize.count), + highlightedValue : null, + isOpen : false, + isDisabled : false, + isRequired : $input.is('[required]'), + isInvalid : false, + isLocked : false, + isFocused : false, + isInputHidden : false, + isSetup : false, + isShiftDown : false, + isCmdDown : false, + isCtrlDown : false, + ignoreFocus : false, + ignoreHover : false, + hasOptions : false, + currentResults : null, + lastValue : '', + caretPos : 0, + loading : 0, + loadedSearches : {}, + + $activeOption : null, + $activeItems : [], + + optgroups : {}, + options : {}, + userOptions : {}, + items : [], + renderCache : {}, + onSearchChange : debounce(self.onSearchChange, settings.loadThrottle) + }); + + // search system + self.sifter = new Sifter(this.options, {diacritics: settings.diacritics}); + + // build options table + $.extend(self.options, build_hash_table(settings.valueField, settings.options)); + delete self.settings.options; + + // build optgroup table + $.extend(self.optgroups, build_hash_table(settings.optgroupValueField, settings.optgroups)); + delete self.settings.optgroups; + + // option-dependent defaults + self.settings.mode = self.settings.mode || (self.settings.maxItems === 1 ? 'single' : 'multi'); + if (typeof self.settings.hideSelected !== 'boolean') { + self.settings.hideSelected = self.settings.mode === 'multi'; + } + + self.initializePlugins(self.settings.plugins); + self.setupCallbacks(); + self.setupTemplates(); + self.setup(); + }; + + // mixins + // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + MicroEvent.mixin(Selectize); + MicroPlugin.mixin(Selectize); + + // methods + // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + $.extend(Selectize.prototype, { + + /** + * Creates all elements and sets up event bindings. + */ + setup: function() { + var self = this; + var settings = self.settings; + var eventNS = self.eventNS; + var $window = $(window); + var $document = $(document); + + var $wrapper; + var $control; + var $control_input; + var $dropdown; + var $dropdown_content; + var $dropdown_parent; + var inputMode; + var timeout_blur; + var timeout_focus; + var tab_index; + var classes; + var classes_plugins; + + inputMode = self.settings.mode; + tab_index = self.$input.attr('tabindex') || ''; + classes = self.$input.attr('class') || ''; + + $wrapper = $('
').addClass(settings.wrapperClass).addClass(classes).addClass(inputMode); + $control = $('
').addClass(settings.inputClass).addClass('items').appendTo($wrapper); + $control_input = $('').appendTo($control).attr('tabindex', tab_index); + $dropdown_parent = $(settings.dropdownParent || $wrapper); + $dropdown = $('
').addClass(settings.dropdownClass).addClass(classes).addClass(inputMode).hide().appendTo($dropdown_parent); + $dropdown_content = $('
').addClass(settings.dropdownContentClass).appendTo($dropdown); + + $wrapper.css({ + width: self.$input[0].style.width + }); + + if (self.plugins.names.length) { + classes_plugins = 'plugin-' + self.plugins.names.join(' plugin-'); + $wrapper.addClass(classes_plugins); + $dropdown.addClass(classes_plugins); + } + + if ((settings.maxItems === null || settings.maxItems > 1) && self.tagType === TAG_SELECT) { + self.$input.attr('multiple', 'multiple'); + } + + if (self.settings.placeholder) { + $control_input.attr('placeholder', settings.placeholder); + } + + self.$wrapper = $wrapper; + self.$control = $control; + self.$control_input = $control_input; + self.$dropdown = $dropdown; + self.$dropdown_content = $dropdown_content; + + $dropdown.on('mouseenter', '[data-selectable]', function() { return self.onOptionHover.apply(self, arguments); }); + $dropdown.on('mousedown', '[data-selectable]', function() { return self.onOptionSelect.apply(self, arguments); }); + watchChildEvent($control, 'mousedown', '*:not(input)', function() { return self.onItemSelect.apply(self, arguments); }); + autoGrow($control_input); + + $control.on({ + mousedown : function() { return self.onMouseDown.apply(self, arguments); }, + click : function() { return self.onClick.apply(self, arguments); } + }); + + $control_input.on({ + mousedown : function(e) { e.stopPropagation(); }, + keydown : function() { return self.onKeyDown.apply(self, arguments); }, + keyup : function() { return self.onKeyUp.apply(self, arguments); }, + keypress : function() { return self.onKeyPress.apply(self, arguments); }, + resize : function() { self.positionDropdown.apply(self, []); }, + blur : function() { return self.onBlur.apply(self, arguments); }, + focus : function() { return self.onFocus.apply(self, arguments); } + }); + + $document.on('keydown' + eventNS, function(e) { + self.isCmdDown = e[IS_MAC ? 'metaKey' : 'ctrlKey']; + self.isCtrlDown = e[IS_MAC ? 'altKey' : 'ctrlKey']; + self.isShiftDown = e.shiftKey; + }); + + $document.on('keyup' + eventNS, function(e) { + if (e.keyCode === KEY_CTRL) self.isCtrlDown = false; + if (e.keyCode === KEY_SHIFT) self.isShiftDown = false; + if (e.keyCode === KEY_CMD) self.isCmdDown = false; + }); + + $document.on('mousedown' + eventNS, function(e) { + if (self.isFocused) { + // prevent events on the dropdown scrollbar from causing the control to blur + if (e.target === self.$dropdown[0] || e.target.parentNode === self.$dropdown[0]) { + return false; + } + // blur on click outside + if (!self.$control.has(e.target).length && e.target !== self.$control[0]) { + self.blur(); + } + } + }); + + $window.on(['scroll' + eventNS, 'resize' + eventNS].join(' '), function() { + if (self.isOpen) { + self.positionDropdown.apply(self, arguments); + } + }); + $window.on('mousemove' + eventNS, function() { + self.ignoreHover = false; + }); + + // store original children and tab index so that they can be + // restored when the destroy() method is called. + this.revertSettings = { + $children : self.$input.children().detach(), + tabindex : self.$input.attr('tabindex') + }; + + self.$input.attr('tabindex', -1).hide().after(self.$wrapper); + + if ($.isArray(settings.items)) { + self.setValue(settings.items); + delete settings.items; + } + + // feature detect for the validation API + if (self.$input[0].validity) { + self.$input.on('invalid' + eventNS, function(e) { + e.preventDefault(); + self.isInvalid = true; + self.refreshState(); + }); + } + + self.updateOriginalInput(); + self.refreshItems(); + self.refreshState(); + self.updatePlaceholder(); + self.isSetup = true; + + if (self.$input.is(':disabled')) { + self.disable(); + } + + self.on('change', this.onChange); + self.trigger('initialize'); + + // preload options + if (settings.preload === true) { + self.onSearchChange(''); + } + }, + + /** + * Sets up default rendering functions. + */ + setupTemplates: function() { + var self = this; + var field_label = self.settings.labelField; + var field_optgroup = self.settings.optgroupLabelField; + + var templates = { + 'optgroup': function(data) { + return '
' + data.html + '
'; + }, + 'optgroup_header': function(data, escape) { + return '
' + escape(data[field_optgroup]) + '
'; + }, + 'option': function(data, escape) { + return '
' + escape(data[field_label]) + '
'; + }, + 'item': function(data, escape) { + return '
' + escape(data[field_label]) + '
'; + }, + 'option_create': function(data, escape) { + return '
Add ' + escape(data.input) + '
'; + } + }; + + self.settings.render = $.extend({}, templates, self.settings.render); + }, + + /** + * Maps fired events to callbacks provided + * in the settings used when creating the control. + */ + setupCallbacks: function() { + var key, fn, callbacks = { + 'initialize' : 'onInitialize', + 'change' : 'onChange', + 'item_add' : 'onItemAdd', + 'item_remove' : 'onItemRemove', + 'clear' : 'onClear', + 'option_add' : 'onOptionAdd', + 'option_remove' : 'onOptionRemove', + 'option_clear' : 'onOptionClear', + 'dropdown_open' : 'onDropdownOpen', + 'dropdown_close' : 'onDropdownClose', + 'type' : 'onType' + }; + + for (key in callbacks) { + if (callbacks.hasOwnProperty(key)) { + fn = this.settings[callbacks[key]]; + if (fn) this.on(key, fn); + } + } + }, + + /** + * Triggered when the main control element + * has a click event. + * + * @param {object} e + * @return {boolean} + */ + onClick: function(e) { + var self = this; + + // necessary for mobile webkit devices (manual focus triggering + // is ignored unless invoked within a click event) + if (!self.isFocused) { + self.focus(); + e.preventDefault(); + } + }, + + /** + * Triggered when the main control element + * has a mouse down event. + * + * @param {object} e + * @return {boolean} + */ + onMouseDown: function(e) { + var self = this; + var defaultPrevented = e.isDefaultPrevented(); + var $target = $(e.target); + + if (self.isFocused) { + // retain focus by preventing native handling. if the + // event target is the input it should not be modified. + // otherwise, text selection within the input won't work. + if (e.target !== self.$control_input[0]) { + if (self.settings.mode === 'single') { + // toggle dropdown + self.isOpen ? self.close() : self.open(); + } else if (!defaultPrevented) { + self.setActiveItem(null); + } + return false; + } + } else { + // give control focus + if (!defaultPrevented) { + window.setTimeout(function() { + self.focus(); + }, 0); + } + } + }, + + /** + * Triggered when the value of the control has been changed. + * This should propagate the event to the original DOM + * input / select element. + */ + onChange: function() { + this.$input.trigger('change'); + }, + + /** + * Triggered on keypress. + * + * @param {object} e + * @returns {boolean} + */ + onKeyPress: function(e) { + if (this.isLocked) return e && e.preventDefault(); + var character = String.fromCharCode(e.keyCode || e.which); + if (this.settings.create && character === this.settings.delimiter) { + this.createItem(); + e.preventDefault(); + return false; + } + }, + + /** + * Triggered on keydown. + * + * @param {object} e + * @returns {boolean} + */ + onKeyDown: function(e) { + var isInput = e.target === this.$control_input[0]; + var self = this; + + if (self.isLocked) { + if (e.keyCode !== KEY_TAB) { + e.preventDefault(); + } + return; + } + + switch (e.keyCode) { + case KEY_A: + if (self.isCmdDown) { + self.selectAll(); + return; + } + break; + case KEY_ESC: + self.close(); + return; + case KEY_N: + if (!e.ctrlKey) break; + case KEY_DOWN: + if (!self.isOpen && self.hasOptions) { + self.open(); + } else if (self.$activeOption) { + self.ignoreHover = true; + var $next = self.getAdjacentOption(self.$activeOption, 1); + if ($next.length) self.setActiveOption($next, true, true); + } + e.preventDefault(); + return; + case KEY_P: + if (!e.ctrlKey) break; + case KEY_UP: + if (self.$activeOption) { + self.ignoreHover = true; + var $prev = self.getAdjacentOption(self.$activeOption, -1); + if ($prev.length) self.setActiveOption($prev, true, true); + } + e.preventDefault(); + return; + case KEY_RETURN: + if (self.isOpen && self.$activeOption) { + self.onOptionSelect({currentTarget: self.$activeOption}); + } + e.preventDefault(); + return; + case KEY_LEFT: + self.advanceSelection(-1, e); + return; + case KEY_RIGHT: + self.advanceSelection(1, e); + return; + case KEY_TAB: + if (self.isOpen && self.$activeOption) { + self.onOptionSelect({currentTarget: self.$activeOption}); + } + if (self.settings.create && self.createItem()) { + e.preventDefault(); + } + return; + case KEY_BACKSPACE: + case KEY_DELETE: + self.deleteSelection(e); + return; + } + if (self.isFull() || self.isInputHidden) { + e.preventDefault(); + return; + } + }, + + /** + * Triggered on keyup. + * + * @param {object} e + * @returns {boolean} + */ + onKeyUp: function(e) { + var self = this; + + if (self.isLocked) return e && e.preventDefault(); + var value = self.$control_input.val() || ''; + if (self.lastValue !== value) { + self.lastValue = value; + self.onSearchChange(value); + self.refreshOptions(); + self.trigger('type', value); + } + }, + + /** + * Invokes the user-provide option provider / loader. + * + * Note: this function is debounced in the Selectize + * constructor (by `settings.loadDelay` milliseconds) + * + * @param {string} value + */ + onSearchChange: function(value) { + var self = this; + var fn = self.settings.load; + if (!fn) return; + if (self.loadedSearches.hasOwnProperty(value)) return; + self.loadedSearches[value] = true; + self.load(function(callback) { + fn.apply(self, [value, callback]); + }); + }, + + /** + * Triggered on focus. + * + * @param {object} e (optional) + * @returns {boolean} + */ + onFocus: function(e) { + var self = this; + + self.isFocused = true; + if (self.isDisabled) { + self.blur(); + e && e.preventDefault(); + return false; + } + + if (self.ignoreFocus) return; + if (self.settings.preload === 'focus') self.onSearchChange(''); + + if (!self.$activeItems.length) { + self.showInput(); + self.setActiveItem(null); + self.refreshOptions(!!self.settings.openOnFocus); + } + + self.refreshState(); + }, + + /** + * Triggered on blur. + * + * @param {object} e + * @returns {boolean} + */ + onBlur: function(e) { + var self = this; + self.isFocused = false; + if (self.ignoreFocus) return; + + if (self.settings.create && self.settings.createOnBlur) { + self.createItem(false); + } + + self.close(); + self.setTextboxValue(''); + self.setActiveItem(null); + self.setActiveOption(null); + self.setCaret(self.items.length); + self.refreshState(); + }, + + /** + * Triggered when the user rolls over + * an option in the autocomplete dropdown menu. + * + * @param {object} e + * @returns {boolean} + */ + onOptionHover: function(e) { + if (this.ignoreHover) return; + this.setActiveOption(e.currentTarget, false); + }, + + /** + * Triggered when the user clicks on an option + * in the autocomplete dropdown menu. + * + * @param {object} e + * @returns {boolean} + */ + onOptionSelect: function(e) { + var value, $target, $option, self = this; + + if (e.preventDefault) { + e.preventDefault(); + e.stopPropagation(); + } + + $target = $(e.currentTarget); + if ($target.hasClass('create')) { + self.createItem(); + } else { + value = $target.attr('data-value'); + if (value) { + self.lastQuery = null; + self.setTextboxValue(''); + self.addItem(value); + if (!self.settings.hideSelected && e.type && /mouse/.test(e.type)) { + self.setActiveOption(self.getOption(value)); + } + } + } + }, + + /** + * Triggered when the user clicks on an item + * that has been selected. + * + * @param {object} e + * @returns {boolean} + */ + onItemSelect: function(e) { + var self = this; + + if (self.isLocked) return; + if (self.settings.mode === 'multi') { + e.preventDefault(); + self.setActiveItem(e.currentTarget, e); + } + }, + + /** + * Invokes the provided method that provides + * results to a callback---which are then added + * as options to the control. + * + * @param {function} fn + */ + load: function(fn) { + var self = this; + var $wrapper = self.$wrapper.addClass('loading'); + + self.loading++; + fn.apply(self, [function(results) { + self.loading = Math.max(self.loading - 1, 0); + if (results && results.length) { + self.addOption(results); + self.refreshOptions(self.isFocused && !self.isInputHidden); + } + if (!self.loading) { + $wrapper.removeClass('loading'); + } + self.trigger('load', results); + }]); + }, + + /** + * Sets the input field of the control to the specified value. + * + * @param {string} value + */ + setTextboxValue: function(value) { + this.$control_input.val(value).triggerHandler('update'); + this.lastValue = value; + }, + + /** + * Returns the value of the control. If multiple items + * can be selected (e.g. or + * element to reflect the current state. + */ + updateOriginalInput: function() { + var i, n, options, self = this; + + if (self.$input[0].tagName.toLowerCase() === 'select') { + options = []; + for (i = 0, n = self.items.length; i < n; i++) { + options.push(''); + } + if (!options.length && !this.$input.attr('multiple')) { + options.push(''); + } + self.$input.html(options.join('')); + } else { + self.$input.val(self.getValue()); + } + + if (self.isSetup) { + self.trigger('change', self.$input.val()); + } + }, + + /** + * Shows/hide the input placeholder depending + * on if there items in the list already. + */ + updatePlaceholder: function() { + if (!this.settings.placeholder) return; + var $input = this.$control_input; + + if (this.items.length) { + $input.removeAttr('placeholder'); + } else { + $input.attr('placeholder', this.settings.placeholder); + } + $input.triggerHandler('update'); + }, + + /** + * Shows the autocomplete dropdown containing + * the available options. + */ + open: function() { + var self = this; + + if (self.isLocked || self.isOpen || (self.settings.mode === 'multi' && self.isFull())) return; + self.focus(); + self.isOpen = true; + self.refreshState(); + self.$dropdown.css({visibility: 'hidden', display: 'block'}); + self.positionDropdown(); + self.$dropdown.css({visibility: 'visible'}); + self.trigger('dropdown_open', self.$dropdown); + }, + + /** + * Closes the autocomplete dropdown menu. + */ + close: function() { + var self = this; + var trigger = self.isOpen; + + if (self.settings.mode === 'single' && self.items.length) { + self.hideInput(); + } + + self.isOpen = false; + self.$dropdown.hide(); + self.setActiveOption(null); + self.refreshState(); + + if (trigger) self.trigger('dropdown_close', self.$dropdown); + }, + + /** + * Calculates and applies the appropriate + * position of the dropdown. + */ + positionDropdown: function() { + var $control = this.$control; + var offset = this.settings.dropdownParent === 'body' ? $control.offset() : $control.position(); + offset.top += $control.outerHeight(true); + + this.$dropdown.css({ + width : $control.outerWidth(), + top : offset.top, + left : offset.left + }); + }, + + /** + * Resets / clears all selected items + * from the control. + */ + clear: function() { + var self = this; + + if (!self.items.length) return; + self.$control.children(':not(input)').remove(); + self.items = []; + self.setCaret(0); + self.updatePlaceholder(); + self.updateOriginalInput(); + self.refreshState(); + self.showInput(); + self.trigger('clear'); + }, + + /** + * A helper method for inserting an element + * at the current caret position. + * + * @param {object} $el + */ + insertAtCaret: function($el) { + var caret = Math.min(this.caretPos, this.items.length); + if (caret === 0) { + this.$control.prepend($el); + } else { + $(this.$control[0].childNodes[caret]).before($el); + } + this.setCaret(caret + 1); + }, + + /** + * Removes the current selected item(s). + * + * @param {object} e (optional) + * @returns {boolean} + */ + deleteSelection: function(e) { + var i, n, direction, selection, values, caret, option_select, $option_select, $tail; + var self = this; + + direction = (e && e.keyCode === KEY_BACKSPACE) ? -1 : 1; + selection = getSelection(self.$control_input[0]); + + if (self.$activeOption && !self.settings.hideSelected) { + option_select = self.getAdjacentOption(self.$activeOption, -1).attr('data-value'); + } + + // determine items that will be removed + values = []; + + if (self.$activeItems.length) { + $tail = self.$control.children('.active:' + (direction > 0 ? 'last' : 'first')); + caret = self.$control.children(':not(input)').index($tail); + if (direction > 0) { caret++; } + + for (i = 0, n = self.$activeItems.length; i < n; i++) { + values.push($(self.$activeItems[i]).attr('data-value')); + } + if (e) { + e.preventDefault(); + e.stopPropagation(); + } + } else if ((self.isFocused || self.settings.mode === 'single') && self.items.length) { + if (direction < 0 && selection.start === 0 && selection.length === 0) { + values.push(self.items[self.caretPos - 1]); + } else if (direction > 0 && selection.start === self.$control_input.val().length) { + values.push(self.items[self.caretPos]); + } + } + + // allow the callback to abort + if (!values.length || (typeof self.settings.onDelete === 'function' && self.settings.onDelete.apply(self, [values]) === false)) { + return false; + } + + // perform removal + if (typeof caret !== 'undefined') { + self.setCaret(caret); + } + while (values.length) { + self.removeItem(values.pop()); + } + + self.showInput(); + self.positionDropdown(); + self.refreshOptions(true); + + // select previous option + if (option_select) { + $option_select = self.getOption(option_select); + if ($option_select.length) { + self.setActiveOption($option_select); + } + } + + return true; + }, + + /** + * Selects the previous / next item (depending + * on the `direction` argument). + * + * > 0 - right + * < 0 - left + * + * @param {int} direction + * @param {object} e (optional) + */ + advanceSelection: function(direction, e) { + var tail, selection, idx, valueLength, cursorAtEdge, $tail; + var self = this; + + if (direction === 0) return; + if (self.rtl) direction *= -1; + + tail = direction > 0 ? 'last' : 'first'; + selection = getSelection(self.$control_input[0]); + + if (self.isFocused && !self.isInputHidden) { + valueLength = self.$control_input.val().length; + cursorAtEdge = direction < 0 + ? selection.start === 0 && selection.length === 0 + : selection.start === valueLength; + + if (cursorAtEdge && !valueLength) { + self.advanceCaret(direction, e); + } + } else { + $tail = self.$control.children('.active:' + tail); + if ($tail.length) { + idx = self.$control.children(':not(input)').index($tail); + self.setActiveItem(null); + self.setCaret(direction > 0 ? idx + 1 : idx); + } + } + }, + + /** + * Moves the caret left / right. + * + * @param {int} direction + * @param {object} e (optional) + */ + advanceCaret: function(direction, e) { + var self = this, fn, $adj; + + if (direction === 0) return; + + fn = direction > 0 ? 'next' : 'prev'; + if (self.isShiftDown) { + $adj = self.$control_input[fn](); + if ($adj.length) { + self.hideInput(); + self.setActiveItem($adj); + e && e.preventDefault(); + } + } else { + self.setCaret(self.caretPos + direction); + } + }, + + /** + * Moves the caret to the specified index. + * + * @param {int} i + */ + setCaret: function(i) { + var self = this; + + if (self.settings.mode === 'single') { + i = self.items.length; + } else { + i = Math.max(0, Math.min(self.items.length, i)); + } + + // the input must be moved by leaving it in place and moving the + // siblings, due to the fact that focus cannot be restored once lost + // on mobile webkit devices + var j, n, fn, $children, $child; + $children = self.$control.children(':not(input)'); + for (j = 0, n = $children.length; j < n; j++) { + $child = $($children[j]).detach(); + if (j < i) { + self.$control_input.before($child); + } else { + self.$control.append($child); + } + } + + self.caretPos = i; + }, + + /** + * Disables user input on the control. Used while + * items are being asynchronously created. + */ + lock: function() { + this.close(); + this.isLocked = true; + this.refreshState(); + }, + + /** + * Re-enables user input on the control. + */ + unlock: function() { + this.isLocked = false; + this.refreshState(); + }, + + /** + * Disables user input on the control completely. + * While disabled, it cannot receive focus. + */ + disable: function() { + var self = this; + self.$input.prop('disabled', true); + self.isDisabled = true; + self.lock(); + }, + + /** + * Enables the control so that it can respond + * to focus and user input. + */ + enable: function() { + var self = this; + self.$input.prop('disabled', false); + self.isDisabled = false; + self.unlock(); + }, + + /** + * Completely destroys the control and + * unbinds all event listeners so that it can + * be garbage collected. + */ + destroy: function() { + var self = this; + var eventNS = self.eventNS; + var revertSettings = self.revertSettings; + + self.trigger('destroy'); + self.off(); + self.$wrapper.remove(); + self.$dropdown.remove(); + + self.$input + .html('') + .append(revertSettings.$children) + .removeAttr('tabindex') + .attr({tabindex: revertSettings.tabindex}) + .show(); + + $(window).off(eventNS); + $(document).off(eventNS); + $(document.body).off(eventNS); + + delete self.$input[0].selectize; + }, + + /** + * A helper method for rendering "item" and + * "option" templates, given the data. + * + * @param {string} templateName + * @param {object} data + * @returns {string} + */ + render: function(templateName, data) { + var value, id, label; + var html = ''; + var cache = false; + var self = this; + var regex_tag = /^[\t ]*<([a-z][a-z0-9\-_]*(?:\:[a-z][a-z0-9\-_]*)?)/i; + + if (templateName === 'option' || templateName === 'item') { + value = hash_key(data[self.settings.valueField]); + cache = !!value; + } + + // pull markup from cache if it exists + if (cache) { + if (!isset(self.renderCache[templateName])) { + self.renderCache[templateName] = {}; + } + if (self.renderCache[templateName].hasOwnProperty(value)) { + return self.renderCache[templateName][value]; + } + } + + // render markup + html = self.settings.render[templateName].apply(this, [data, escape_html]); + + // add mandatory attributes + if (templateName === 'option' || templateName === 'option_create') { + html = html.replace(regex_tag, '<$1 data-selectable'); + } + if (templateName === 'optgroup') { + id = data[self.settings.optgroupValueField] || ''; + html = html.replace(regex_tag, '<$1 data-group="' + escape_replace(escape_html(id)) + '"'); + } + if (templateName === 'option' || templateName === 'item') { + html = html.replace(regex_tag, '<$1 data-value="' + escape_replace(escape_html(value || '')) + '"'); + } + + // update cache + if (cache) { + self.renderCache[templateName][value] = html; + } + + return html; + } + + }); + + + Selectize.count = 0; + Selectize.defaults = { + plugins: [], + delimiter: ',', + persist: true, + diacritics: true, + create: false, + createOnBlur: false, + highlight: true, + openOnFocus: true, + maxOptions: 1000, + maxItems: null, + hideSelected: null, + addPrecedence: false, + preload: false, + + scrollDuration: 60, + loadThrottle: 300, + + dataAttr: 'data-data', + optgroupField: 'optgroup', + valueField: 'value', + labelField: 'text', + optgroupLabelField: 'label', + optgroupValueField: 'value', + optgroupOrder: null, + + sortField: '$order', + searchField: ['text'], + searchConjunction: 'and', + + mode: null, + wrapperClass: 'selectize-control', + inputClass: 'selectize-input', + dropdownClass: 'selectize-dropdown', + dropdownContentClass: 'selectize-dropdown-content', + + dropdownParent: null, + + /* + load : null, // function(query, callback) { ... } + score : null, // function(search) { ... } + onInitialize : null, // function() { ... } + onChange : null, // function(value) { ... } + onItemAdd : null, // function(value, $item) { ... } + onItemRemove : null, // function(value) { ... } + onClear : null, // function() { ... } + onOptionAdd : null, // function(value, data) { ... } + onOptionRemove : null, // function(value) { ... } + onOptionClear : null, // function() { ... } + onDropdownOpen : null, // function($dropdown) { ... } + onDropdownClose : null, // function($dropdown) { ... } + onType : null, // function(str) { ... } + onDelete : null, // function(values) { ... } + */ + + render: { + /* + item: null, + optgroup: null, + optgroup_header: null, + option: null, + option_create: null + */ + } + }; + + $.fn.selectize = function(settings_user) { + var defaults = $.fn.selectize.defaults; + var settings = $.extend({}, defaults, settings_user); + var attr_data = settings.dataAttr; + var field_label = settings.labelField; + var field_value = settings.valueField; + var field_optgroup = settings.optgroupField; + var field_optgroup_label = settings.optgroupLabelField; + var field_optgroup_value = settings.optgroupValueField; + + /** + * Initializes selectize from a element. + * + * @param {object} $input + * @param {object} settings_element + */ + var init_textbox = function($input, settings_element) { + var i, n, values, option, value = $.trim($input.val() || ''); + if (!value.length) return; + + values = value.split(settings.delimiter); + for (i = 0, n = values.length; i < n; i++) { + option = {}; + option[field_label] = values[i]; + option[field_value] = values[i]; + + settings_element.options[values[i]] = option; + } + + settings_element.items = values; + }; + + /** + * Initializes selectize from a ').appendTo(c).attr("tabindex",j),h=a(n.dropdownParent||b),e=a("
").addClass(n.dropdownClass).addClass(k).addClass(i).hide().appendTo(h),g=a("
").addClass(n.dropdownContentClass).appendTo(e),b.css({width:m.$input[0].style.width}),m.plugins.names.length&&(l="plugin-"+m.plugins.names.join(" plugin-"),b.addClass(l),e.addClass(l)),(null===n.maxItems||n.maxItems>1)&&m.tagType===v&&m.$input.attr("multiple","multiple"),m.settings.placeholder&&d.attr("placeholder",n.placeholder),m.$wrapper=b,m.$control=c,m.$control_input=d,m.$dropdown=e,m.$dropdown_content=g,e.on("mouseenter","[data-selectable]",function(){return m.onOptionHover.apply(m,arguments)}),e.on("mousedown","[data-selectable]",function(){return m.onOptionSelect.apply(m,arguments)}),G(c,"mousedown","*:not(input)",function(){return m.onItemSelect.apply(m,arguments)}),K(d),c.on({mousedown:function(){return m.onMouseDown.apply(m,arguments)},click:function(){return m.onClick.apply(m,arguments)}}),d.on({mousedown:function(a){a.stopPropagation()},keydown:function(){return m.onKeyDown.apply(m,arguments)},keyup:function(){return m.onKeyUp.apply(m,arguments)},keypress:function(){return m.onKeyPress.apply(m,arguments)},resize:function(){m.positionDropdown.apply(m,[])},blur:function(){return m.onBlur.apply(m,arguments)},focus:function(){return m.onFocus.apply(m,arguments)}}),q.on("keydown"+o,function(a){m.isCmdDown=a[f?"metaKey":"ctrlKey"],m.isCtrlDown=a[f?"altKey":"ctrlKey"],m.isShiftDown=a.shiftKey}),q.on("keyup"+o,function(a){a.keyCode===t&&(m.isCtrlDown=!1),a.keyCode===r&&(m.isShiftDown=!1),a.keyCode===s&&(m.isCmdDown=!1)}),q.on("mousedown"+o,function(a){if(m.isFocused){if(a.target===m.$dropdown[0]||a.target.parentNode===m.$dropdown[0])return!1;m.$control.has(a.target).length||a.target===m.$control[0]||m.blur()}}),p.on(["scroll"+o,"resize"+o].join(" "),function(){m.isOpen&&m.positionDropdown.apply(m,arguments)}),p.on("mousemove"+o,function(){m.ignoreHover=!1}),this.revertSettings={$children:m.$input.children().detach(),tabindex:m.$input.attr("tabindex")},m.$input.attr("tabindex",-1).hide().after(m.$wrapper),a.isArray(n.items)&&(m.setValue(n.items),delete n.items),m.$input[0].validity&&m.$input.on("invalid"+o,function(a){a.preventDefault(),m.isInvalid=!0,m.refreshState()}),m.updateOriginalInput(),m.refreshItems(),m.refreshState(),m.updatePlaceholder(),m.isSetup=!0,m.$input.is(":disabled")&&m.disable(),m.on("change",this.onChange),m.trigger("initialize"),n.preload===!0&&m.onSearchChange("")},setupTemplates:function(){var b=this,c=b.settings.labelField,d=b.settings.optgroupLabelField,e={optgroup:function(a){return'
'+a.html+"
"},optgroup_header:function(a,b){return'
'+b(a[d])+"
"},option:function(a,b){return'
'+b(a[c])+"
"},item:function(a,b){return'
'+b(a[c])+"
"},option_create:function(a,b){return'
Add '+b(a.input)+"
"}};b.settings.render=a.extend({},e,b.settings.render)},setupCallbacks:function(){var a,b,c={initialize:"onInitialize",change:"onChange",item_add:"onItemAdd",item_remove:"onItemRemove",clear:"onClear",option_add:"onOptionAdd",option_remove:"onOptionRemove",option_clear:"onOptionClear",dropdown_open:"onDropdownOpen",dropdown_close:"onDropdownClose",type:"onType"};for(a in c)c.hasOwnProperty(a)&&(b=this.settings[c[a]],b&&this.on(a,b))},onClick:function(a){var b=this;b.isFocused||(b.focus(),a.preventDefault())},onMouseDown:function(b){{var c=this,d=b.isDefaultPrevented();a(b.target)}if(c.isFocused){if(b.target!==c.$control_input[0])return"single"===c.settings.mode?c.isOpen?c.close():c.open():d||c.setActiveItem(null),!1}else d||window.setTimeout(function(){c.focus()},0)},onChange:function(){this.$input.trigger("change")},onKeyPress:function(a){if(this.isLocked)return a&&a.preventDefault();var b=String.fromCharCode(a.keyCode||a.which);return this.settings.create&&b===this.settings.delimiter?(this.createItem(),a.preventDefault(),!1):void 0},onKeyDown:function(a){var b=(a.target===this.$control_input[0],this);if(b.isLocked)return void(a.keyCode!==u&&a.preventDefault());switch(a.keyCode){case g:if(b.isCmdDown)return void b.selectAll();break;case i:return void b.close();case o:if(!a.ctrlKey)break;case n:if(!b.isOpen&&b.hasOptions)b.open();else if(b.$activeOption){b.ignoreHover=!0;var c=b.getAdjacentOption(b.$activeOption,1);c.length&&b.setActiveOption(c,!0,!0)}return void a.preventDefault();case l:if(!a.ctrlKey)break;case k:if(b.$activeOption){b.ignoreHover=!0;var d=b.getAdjacentOption(b.$activeOption,-1);d.length&&b.setActiveOption(d,!0,!0)}return void a.preventDefault();case h:return b.isOpen&&b.$activeOption&&b.onOptionSelect({currentTarget:b.$activeOption}),void a.preventDefault();case j:return void b.advanceSelection(-1,a);case m:return void b.advanceSelection(1,a);case u:return b.isOpen&&b.$activeOption&&b.onOptionSelect({currentTarget:b.$activeOption}),void(b.settings.create&&b.createItem()&&a.preventDefault());case p:case q:return void b.deleteSelection(a)}return b.isFull()||b.isInputHidden?void a.preventDefault():void 0},onKeyUp:function(a){var b=this;if(b.isLocked)return a&&a.preventDefault();var c=b.$control_input.val()||"";b.lastValue!==c&&(b.lastValue=c,b.onSearchChange(c),b.refreshOptions(),b.trigger("type",c))},onSearchChange:function(a){var b=this,c=b.settings.load;c&&(b.loadedSearches.hasOwnProperty(a)||(b.loadedSearches[a]=!0,b.load(function(d){c.apply(b,[a,d])})))},onFocus:function(a){var b=this;return b.isFocused=!0,b.isDisabled?(b.blur(),a&&a.preventDefault(),!1):void(b.ignoreFocus||("focus"===b.settings.preload&&b.onSearchChange(""),b.$activeItems.length||(b.showInput(),b.setActiveItem(null),b.refreshOptions(!!b.settings.openOnFocus)),b.refreshState()))},onBlur:function(){var a=this;a.isFocused=!1,a.ignoreFocus||(a.settings.create&&a.settings.createOnBlur&&a.createItem(!1),a.close(),a.setTextboxValue(""),a.setActiveItem(null),a.setActiveOption(null),a.setCaret(a.items.length),a.refreshState())},onOptionHover:function(a){this.ignoreHover||this.setActiveOption(a.currentTarget,!1)},onOptionSelect:function(b){var c,d,e=this;b.preventDefault&&(b.preventDefault(),b.stopPropagation()),d=a(b.currentTarget),d.hasClass("create")?e.createItem():(c=d.attr("data-value"),c&&(e.lastQuery=null,e.setTextboxValue(""),e.addItem(c),!e.settings.hideSelected&&b.type&&/mouse/.test(b.type)&&e.setActiveOption(e.getOption(c))))},onItemSelect:function(a){var b=this;b.isLocked||"multi"===b.settings.mode&&(a.preventDefault(),b.setActiveItem(a.currentTarget,a))},load:function(a){var b=this,c=b.$wrapper.addClass("loading");b.loading++,a.apply(b,[function(a){b.loading=Math.max(b.loading-1,0),a&&a.length&&(b.addOption(a),b.refreshOptions(b.isFocused&&!b.isInputHidden)),b.loading||c.removeClass("loading"),b.trigger("load",a)}])},setTextboxValue:function(a){this.$control_input.val(a).triggerHandler("update"),this.lastValue=a},getValue:function(){return this.tagType===v&&this.$input.attr("multiple")?this.items:this.items.join(this.settings.delimiter)},setValue:function(a){F(this,["change"],function(){this.clear(),this.addItems(a)})},setActiveItem:function(b,c){var d,e,f,g,h,i,j,k,l=this;if("single"!==l.settings.mode){if(b=a(b),!b.length)return a(l.$activeItems).removeClass("active"),l.$activeItems=[],void(l.isFocused&&l.showInput());if(d=c&&c.type.toLowerCase(),"mousedown"===d&&l.isShiftDown&&l.$activeItems.length){for(k=l.$control.children(".active:last"),g=Array.prototype.indexOf.apply(l.$control[0].childNodes,[k[0]]),h=Array.prototype.indexOf.apply(l.$control[0].childNodes,[b[0]]),g>h&&(j=g,g=h,h=j),e=g;h>=e;e++)i=l.$control[0].childNodes[e],-1===l.$activeItems.indexOf(i)&&(a(i).addClass("active"),l.$activeItems.push(i));c.preventDefault()}else"mousedown"===d&&l.isCtrlDown||"keydown"===d&&this.isShiftDown?b.hasClass("active")?(f=l.$activeItems.indexOf(b[0]),l.$activeItems.splice(f,1),b.removeClass("active")):l.$activeItems.push(b.addClass("active")[0]):(a(l.$activeItems).removeClass("active"),l.$activeItems=[b.addClass("active")[0]]);l.hideInput(),this.isFocused||l.focus()}},setActiveOption:function(b,c,d){var e,f,g,h,i,j=this;j.$activeOption&&j.$activeOption.removeClass("active"),j.$activeOption=null,b=a(b),b.length&&(j.$activeOption=b.addClass("active"),(c||!x(c))&&(e=j.$dropdown_content.height(),f=j.$activeOption.outerHeight(!0),c=j.$dropdown_content.scrollTop()||0,g=j.$activeOption.offset().top-j.$dropdown_content.offset().top+c,h=g,i=g-e+f,g+f>e+c?j.$dropdown_content.stop().animate({scrollTop:i},d?j.settings.scrollDuration:0):c>g&&j.$dropdown_content.stop().animate({scrollTop:h},d?j.settings.scrollDuration:0)))},selectAll:function(){var a=this;"single"!==a.settings.mode&&(a.$activeItems=Array.prototype.slice.apply(a.$control.children(":not(input)").addClass("active")),a.$activeItems.length&&(a.hideInput(),a.close()),a.focus())},hideInput:function(){var a=this;a.setTextboxValue(""),a.$control_input.css({opacity:0,position:"absolute",left:a.rtl?1e4:-1e4}),a.isInputHidden=!0},showInput:function(){this.$control_input.css({opacity:1,position:"relative",left:0}),this.isInputHidden=!1},focus:function(){var a=this;a.isDisabled||(a.ignoreFocus=!0,a.$control_input[0].focus(),window.setTimeout(function(){a.ignoreFocus=!1,a.onFocus()},0))},blur:function(){this.$control_input.trigger("blur")},getScoreFunction:function(a){return this.sifter.getScoreFunction(a,this.getSearchOptions())},getSearchOptions:function(){var a=this.settings,b=a.sortField;return"string"==typeof b&&(b={field:b}),{fields:a.searchField,conjunction:a.searchConjunction,sort:b}},search:function(b){var c,d,e,f=this,g=f.settings,h=this.getSearchOptions();if(g.score&&(e=f.settings.score.apply(this,[b]),"function"!=typeof e))throw new Error('Selectize "score" setting must be a function that returns a function');if(b!==f.lastQuery?(f.lastQuery=b,d=f.sifter.search(b,a.extend(h,{score:e})),f.currentResults=d):d=a.extend(!0,{},f.currentResults),g.hideSelected)for(c=d.items.length-1;c>=0;c--)-1!==f.items.indexOf(y(d.items[c].id))&&d.items.splice(c,1);return d},refreshOptions:function(b){var c,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s;"undefined"==typeof b&&(b=!0);var t=this,u=t.$control_input.val(),v=t.search(u),w=t.$dropdown_content,x=t.$activeOption&&y(t.$activeOption.attr("data-value"));if(g=v.items.length,"number"==typeof t.settings.maxOptions&&(g=Math.min(g,t.settings.maxOptions)),h={},t.settings.optgroupOrder)for(i=t.settings.optgroupOrder,c=0;cc;c++)for(j=t.options[v.items[c].id],k=t.render("option",j),l=j[t.settings.optgroupField]||"",m=a.isArray(l)?l:[l],e=0,f=m&&m.length;f>e;e++)l=m[e],t.optgroups.hasOwnProperty(l)||(l=""),h.hasOwnProperty(l)||(h[l]=[],i.push(l)),h[l].push(k);for(n=[],c=0,g=i.length;g>c;c++)l=i[c],t.optgroups.hasOwnProperty(l)&&h[l].length?(o=t.render("optgroup_header",t.optgroups[l])||"",o+=h[l].join(""),n.push(t.render("optgroup",a.extend({},t.optgroups[l],{html:o})))):n.push(h[l].join(""));if(w.html(n.join("")),t.settings.highlight&&v.query.length&&v.tokens.length)for(c=0,g=v.tokens.length;g>c;c++)d(w,v.tokens[c].regex);if(!t.settings.hideSelected)for(c=0,g=t.items.length;g>c;c++)t.getOption(t.items[c]).addClass("selected");p=t.settings.create&&v.query.length,p&&(w.prepend(t.render("option_create",{input:u})),s=a(w[0].childNodes[0])),t.hasOptions=v.items.length>0||p,t.hasOptions?(v.items.length>0?(r=x&&t.getOption(x),r&&r.length?q=r:"single"===t.settings.mode&&t.items.length&&(q=t.getOption(t.items[0])),q&&q.length||(q=s&&!t.settings.addPrecedence?t.getAdjacentOption(s,1):w.find("[data-selectable]:first"))):q=s,t.setActiveOption(q),b&&!t.isOpen&&t.open()):(t.setActiveOption(null),b&&t.isOpen&&t.close())},addOption:function(b){var c,d,e,f=this;if(a.isArray(b))for(c=0,d=b.length;d>c;c++)f.addOption(b[c]);else e=y(b[f.settings.valueField]),e&&!f.options.hasOwnProperty(e)&&(f.userOptions[e]=!0,f.options[e]=b,f.lastQuery=null,f.trigger("option_add",e,b))},addOptionGroup:function(a,b){this.optgroups[a]=b,this.trigger("optgroup_add",a,b)},updateOption:function(b,c){var d,e,f,g,h,i,j=this;if(b=y(b),f=y(c[j.settings.valueField]),j.options.hasOwnProperty(b)){if(!f)throw new Error("Value must be set in option data");f!==b&&(delete j.options[b],g=j.items.indexOf(b),-1!==g&&j.items.splice(g,1,f)),j.options[f]=c,h=j.renderCache.item,i=j.renderCache.option,x(h)&&(delete h[b],delete h[f]),x(i)&&(delete i[b],delete i[f]),-1!==j.items.indexOf(f)&&(d=j.getItem(b),e=a(j.render("item",c)),d.hasClass("active")&&e.addClass("active"),d.replaceWith(e)),j.isOpen&&j.refreshOptions(!1)}},removeOption:function(a){var b=this;a=y(a),delete b.userOptions[a],delete b.options[a],b.lastQuery=null,b.trigger("option_remove",a),b.removeItem(a)},clearOptions:function(){var a=this;a.loadedSearches={},a.userOptions={},a.options=a.sifter.items={},a.lastQuery=null,a.trigger("option_clear"),a.clear()},getOption:function(a){return this.getElementWithValue(a,this.$dropdown_content.find("[data-selectable]"))},getAdjacentOption:function(b,c){var d=this.$dropdown.find("[data-selectable]"),e=d.index(b)+c;return e>=0&&ed;d++)if(c[d].getAttribute("data-value")===b)return a(c[d]);return a()},getItem:function(a){return this.getElementWithValue(a,this.$control.children())},addItems:function(b){for(var c=a.isArray(b)?b:[b],d=0,e=c.length;e>d;d++)this.isPending=e-1>d,this.addItem(c[d])},addItem:function(b){F(this,["change"],function(){var c,d,e,f,g=this,h=g.settings.mode;return b=y(b),-1!==g.items.indexOf(b)?void("single"===h&&g.close()):void(g.options.hasOwnProperty(b)&&("single"===h&&g.clear(),"multi"===h&&g.isFull()||(c=a(g.render("item",g.options[b])),g.items.splice(g.caretPos,0,b),g.insertAtCaret(c),g.refreshState(),g.isSetup&&(e=g.$dropdown_content.find("[data-selectable]"),this.isPending||(d=g.getOption(b),f=g.getAdjacentOption(d,1).attr("data-value"),g.refreshOptions(g.isFocused&&"single"!==h),f&&g.setActiveOption(g.getOption(f))),!e.length||null!==g.settings.maxItems&&g.items.length>=g.settings.maxItems?g.close():g.positionDropdown(),g.updatePlaceholder(),g.trigger("item_add",b,c),g.updateOriginalInput()))))})},removeItem:function(a){var b,c,d,e=this;b="object"==typeof a?a:e.getItem(a),a=y(b.attr("data-value")),c=e.items.indexOf(a),-1!==c&&(b.remove(),b.hasClass("active")&&(d=e.$activeItems.indexOf(b[0]),e.$activeItems.splice(d,1)),e.items.splice(c,1),e.lastQuery=null,!e.settings.persist&&e.userOptions.hasOwnProperty(a)&&e.removeOption(a),c0),b.$control_input.data("grow",!c&&!d)},isFull:function(){return null!==this.settings.maxItems&&this.items.length>=this.settings.maxItems},updateOriginalInput:function(){var a,b,c,d=this;if("select"===d.$input[0].tagName.toLowerCase()){for(c=[],a=0,b=d.items.length;b>a;a++)c.push('');c.length||this.$input.attr("multiple")||c.push(''),d.$input.html(c.join(""))}else d.$input.val(d.getValue());d.isSetup&&d.trigger("change",d.$input.val())},updatePlaceholder:function(){if(this.settings.placeholder){var a=this.$control_input;this.items.length?a.removeAttr("placeholder"):a.attr("placeholder",this.settings.placeholder),a.triggerHandler("update")}},open:function(){var a=this;a.isLocked||a.isOpen||"multi"===a.settings.mode&&a.isFull()||(a.focus(),a.isOpen=!0,a.refreshState(),a.$dropdown.css({visibility:"hidden",display:"block"}),a.positionDropdown(),a.$dropdown.css({visibility:"visible"}),a.trigger("dropdown_open",a.$dropdown))},close:function(){var a=this,b=a.isOpen;"single"===a.settings.mode&&a.items.length&&a.hideInput(),a.isOpen=!1,a.$dropdown.hide(),a.setActiveOption(null),a.refreshState(),b&&a.trigger("dropdown_close",a.$dropdown)},positionDropdown:function(){var a=this.$control,b="body"===this.settings.dropdownParent?a.offset():a.position();b.top+=a.outerHeight(!0),this.$dropdown.css({width:a.outerWidth(),top:b.top,left:b.left})},clear:function(){var a=this;a.items.length&&(a.$control.children(":not(input)").remove(),a.items=[],a.setCaret(0),a.updatePlaceholder(),a.updateOriginalInput(),a.refreshState(),a.showInput(),a.trigger("clear"))},insertAtCaret:function(b){var c=Math.min(this.caretPos,this.items.length);0===c?this.$control.prepend(b):a(this.$control[0].childNodes[c]).before(b),this.setCaret(c+1)},deleteSelection:function(b){var c,d,e,f,g,h,i,j,k,l=this;if(e=b&&b.keyCode===p?-1:1,f=H(l.$control_input[0]),l.$activeOption&&!l.settings.hideSelected&&(i=l.getAdjacentOption(l.$activeOption,-1).attr("data-value")),g=[],l.$activeItems.length){for(k=l.$control.children(".active:"+(e>0?"last":"first")),h=l.$control.children(":not(input)").index(k),e>0&&h++,c=0,d=l.$activeItems.length;d>c;c++)g.push(a(l.$activeItems[c]).attr("data-value"));b&&(b.preventDefault(),b.stopPropagation())}else(l.isFocused||"single"===l.settings.mode)&&l.items.length&&(0>e&&0===f.start&&0===f.length?g.push(l.items[l.caretPos-1]):e>0&&f.start===l.$control_input.val().length&&g.push(l.items[l.caretPos]));if(!g.length||"function"==typeof l.settings.onDelete&&l.settings.onDelete.apply(l,[g])===!1)return!1;for("undefined"!=typeof h&&l.setCaret(h);g.length;)l.removeItem(g.pop());return l.showInput(),l.positionDropdown(),l.refreshOptions(!0),i&&(j=l.getOption(i),j.length&&l.setActiveOption(j)),!0},advanceSelection:function(a,b){var c,d,e,f,g,h,i=this;0!==a&&(i.rtl&&(a*=-1),c=a>0?"last":"first",d=H(i.$control_input[0]),i.isFocused&&!i.isInputHidden?(f=i.$control_input.val().length,g=0>a?0===d.start&&0===d.length:d.start===f,g&&!f&&i.advanceCaret(a,b)):(h=i.$control.children(".active:"+c),h.length&&(e=i.$control.children(":not(input)").index(h),i.setActiveItem(null),i.setCaret(a>0?e+1:e))))},advanceCaret:function(a,b){var c,d,e=this;0!==a&&(c=a>0?"next":"prev",e.isShiftDown?(d=e.$control_input[c](),d.length&&(e.hideInput(),e.setActiveItem(d),b&&b.preventDefault())):e.setCaret(e.caretPos+a))},setCaret:function(b){var c=this;b="single"===c.settings.mode?c.items.length:Math.max(0,Math.min(c.items.length,b));var d,e,f,g;for(f=c.$control.children(":not(input)"),d=0,e=f.length;e>d;d++)g=a(f[d]).detach(),b>d?c.$control_input.before(g):c.$control.append(g);c.caretPos=b},lock:function(){this.close(),this.isLocked=!0,this.refreshState()},unlock:function(){this.isLocked=!1,this.refreshState()},disable:function(){var a=this;a.$input.prop("disabled",!0),a.isDisabled=!0,a.lock()},enable:function(){var a=this;a.$input.prop("disabled",!1),a.isDisabled=!1,a.unlock()},destroy:function(){var b=this,c=b.eventNS,d=b.revertSettings;b.trigger("destroy"),b.off(),b.$wrapper.remove(),b.$dropdown.remove(),b.$input.html("").append(d.$children).removeAttr("tabindex").attr({tabindex:d.tabindex}).show(),a(window).off(c),a(document).off(c),a(document.body).off(c),delete b.$input[0].selectize},render:function(a,b){var c,d,e="",f=!1,g=this,h=/^[\t ]*<([a-z][a-z0-9\-_]*(?:\:[a-z][a-z0-9\-_]*)?)/i;return("option"===a||"item"===a)&&(c=y(b[g.settings.valueField]),f=!!c),f&&(x(g.renderCache[a])||(g.renderCache[a]={}),g.renderCache[a].hasOwnProperty(c))?g.renderCache[a][c]:(e=g.settings.render[a].apply(this,[b,z]),("option"===a||"option_create"===a)&&(e=e.replace(h,"<$1 data-selectable")),"optgroup"===a&&(d=b[g.settings.optgroupValueField]||"",e=e.replace(h,'<$1 data-group="'+A(z(d))+'"')),("option"===a||"item"===a)&&(e=e.replace(h,'<$1 data-value="'+A(z(c||""))+'"')),f&&(g.renderCache[a][c]=e),e)}}),L.count=0,L.defaults={plugins:[],delimiter:",",persist:!0,diacritics:!0,create:!1,createOnBlur:!1,highlight:!0,openOnFocus:!0,maxOptions:1e3,maxItems:null,hideSelected:null,addPrecedence:!1,preload:!1,scrollDuration:60,loadThrottle:300,dataAttr:"data-data",optgroupField:"optgroup",valueField:"value",labelField:"text",optgroupLabelField:"label",optgroupValueField:"value",optgroupOrder:null,sortField:"$order",searchField:["text"],searchConjunction:"and",mode:null,wrapperClass:"selectize-control",inputClass:"selectize-input",dropdownClass:"selectize-dropdown",dropdownContentClass:"selectize-dropdown-content",dropdownParent:null,render:{}},a.fn.selectize=function(b){var c=a.fn.selectize.defaults,d=a.extend({},c,b),e=d.dataAttr,f=d.labelField,g=d.valueField,h=d.optgroupField,i=d.optgroupLabelField,j=d.optgroupValueField,k=function(b,c){var e,h,i,j,k=a.trim(b.val()||""); +if(k.length){for(i=k.split(d.delimiter),e=0,h=i.length;h>e;e++)j={},j[f]=i[e],j[g]=i[e],c.options[i[e]]=j;c.items=i}},l=function(b,c){var d,k,l,m,n=0,o=c.options,p=function(a){var b=e&&a.attr(e);return"string"==typeof b&&b.length?JSON.parse(b):null},q=function(b,d){var e,i;if(b=a(b),e=b.attr("value")||"",e.length){if(o.hasOwnProperty(e))return void(d&&(o[e].optgroup?a.isArray(o[e].optgroup)?o[e].optgroup.push(d):o[e].optgroup=[o[e].optgroup,d]:o[e].optgroup=d));i=p(b)||{},i[f]=i[f]||b.text(),i[g]=i[g]||e,i[h]=i[h]||d,i.$order=++n,o[e]=i,b.is(":selected")&&c.items.push(e)}},r=function(b){var d,e,f,g,h;for(b=a(b),f=b.attr("label"),f&&(g=p(b)||{},g[i]=f,g[j]=f,c.optgroups[f]=g),h=a("option",b),d=0,e=h.length;e>d;d++)q(h[d],f)};for(c.maxItems=b.attr("multiple")?null:1,m=b.children(),d=0,k=m.length;k>d;d++)l=m[d].tagName.toLowerCase(),"optgroup"===l?r(m[d]):"option"===l&&q(m[d])};return this.each(function(){if(!this.selectize){var d,e=a(this),f=this.tagName.toLowerCase(),g={placeholder:e.children('option[value=""]').text()||e.attr("placeholder"),options:{},optgroups:{},items:[]};"select"===f?l(e,g):k(e,g),d=new L(e,a.extend(!0,{},c,g,b)),e.data("selectize",d),e.addClass("selectized")}})},a.fn.selectize.defaults=L.defaults,L.define("drag_drop",function(){if(!a.fn.sortable)throw new Error('The "drag_drop" plugin requires jQuery UI "sortable".');if("multi"===this.settings.mode){var b=this;b.lock=function(){var a=b.lock;return function(){var c=b.$control.data("sortable");return c&&c.disable(),a.apply(b,arguments)}}(),b.unlock=function(){var a=b.unlock;return function(){var c=b.$control.data("sortable");return c&&c.enable(),a.apply(b,arguments)}}(),b.setup=function(){var c=b.setup;return function(){c.apply(this,arguments);var d=b.$control.sortable({items:"[data-value]",forcePlaceholderSize:!0,disabled:b.isLocked,start:function(a,b){b.placeholder.css("width",b.helper.css("width")),d.css({overflow:"visible"})},stop:function(){d.css({overflow:"hidden"});var c=b.$activeItems?b.$activeItems.slice():null,e=[];d.children("[data-value]").each(function(){e.push(a(this).attr("data-value"))}),b.setValue(e),b.setActiveItem(c)}})}}()}}),L.define("dropdown_header",function(b){var c=this;b=a.extend({title:"Untitled",headerClass:"selectize-dropdown-header",titleRowClass:"selectize-dropdown-header-title",labelClass:"selectize-dropdown-header-label",closeClass:"selectize-dropdown-header-close",html:function(a){return'
'+a.title+'×
'}},b),c.setup=function(){var d=c.setup;return function(){d.apply(c,arguments),c.$dropdown_header=a(b.html(b)),c.$dropdown.prepend(c.$dropdown_header)}}()}),L.define("optgroup_columns",function(b){var c=this;b=a.extend({equalizeWidth:!0,equalizeHeight:!0},b),this.getAdjacentOption=function(b,c){var d=b.closest("[data-group]").find("[data-selectable]"),e=d.index(b)+c;return e>=0&&ed;d++)f=Math.max(f,j.eq(d).height());j.css({height:f})}b.equalizeWidth&&(i=c.$dropdown_content.innerWidth(),g=Math.round(i/e),j.css({width:g}),e>1&&(h=i-g*(e-1),j.eq(e-1).css({width:h})))}};(b.equalizeHeight||b.equalizeWidth)&&(B.after(this,"positionDropdown",d),B.after(this,"refreshOptions",d))}),L.define("remove_button",function(b){if("single"!==this.settings.mode){b=a.extend({label:"×",title:"Remove",className:"remove",append:!0},b);var c=this,d=''+b.label+"",e=function(a,b){var c=a.search(/(<\/[^>]+>\s*)$/);return a.substring(0,c)+b+a.substring(c)};this.setup=function(){var f=c.setup;return function(){if(b.append){var g=c.settings.render.item;c.settings.render.item=function(){return e(g.apply(this,arguments),d)}}f.apply(this,arguments),this.$control.on("click","."+b.className,function(b){if(b.preventDefault(),!c.isLocked){var d=a(b.currentTarget).parent();c.setActiveItem(d),c.deleteSelection()&&c.setCaret(c.items.length)}})}}()}}),L.define("restore_on_backspace",function(a){var b=this;a.text=a.text||function(a){return a[this.settings.labelField]},this.onKeyDown=function(){var c=b.onKeyDown;return function(b){var d,e;return b.keyCode===p&&""===this.$control_input.val()&&!this.$activeItems.length&&(d=this.caretPos-1,d>=0&&d .selectize-input > div.ui-sortable-placeholder { + visibility: visible !important; + background: #f2f2f2 !important; + background: rgba(0,0,0,0.06) !important; + border: 0 none !important; + .selectize-box-shadow(inset 0 0 12px 4px #fff); + } + .ui-sortable-placeholder::after { + content: '!'; + visibility: hidden; + } + .ui-sortable-helper { + .selectize-box-shadow(0 2px 5px rgba(0,0,0,0.2)); + } +} \ No newline at end of file diff --git a/ajax/libs/selectize.js/0.9.0/less/plugins/dropdown_header.less b/ajax/libs/selectize.js/0.9.0/less/plugins/dropdown_header.less new file mode 100644 index 000000000..c3e777e16 --- /dev/null +++ b/ajax/libs/selectize.js/0.9.0/less/plugins/dropdown_header.less @@ -0,0 +1,20 @@ +.selectize-dropdown-header { + position: relative; + padding: @selectize-padding-dropdown-item-y @selectize-padding-dropdown-item-x; + border-bottom: 1px solid @selectize-color-border; + background: mix(@selectize-color-dropdown, @selectize-color-border, 85%); + .selectize-border-radius(@selectize-border-radius @selectize-border-radius 0 0); +} +.selectize-dropdown-header-close { + position: absolute; + right: @selectize-padding-dropdown-item-x; + top: 50%; + color: @selectize-color-text; + opacity: 0.4; + margin-top: -12px; + line-height: 20px; + font-size: 20px !important; +} +.selectize-dropdown-header-close:hover { + color: darken(@selectize-color-text, 25%); +} \ No newline at end of file diff --git a/ajax/libs/selectize.js/0.9.0/less/plugins/optgroup_columns.less b/ajax/libs/selectize.js/0.9.0/less/plugins/optgroup_columns.less new file mode 100644 index 000000000..5c72d7a0a --- /dev/null +++ b/ajax/libs/selectize.js/0.9.0/less/plugins/optgroup_columns.less @@ -0,0 +1,17 @@ +.selectize-dropdown.plugin-optgroup_columns { + .optgroup { + border-right: 1px solid #f2f2f2; + border-top: 0 none; + float: left; + .selectize-box-sizing(border-box); + } + .optgroup:last-child { + border-right: 0 none; + } + .optgroup:before { + display: none; + } + .optgroup-header { + border-top: 0 none; + } +} \ No newline at end of file diff --git a/ajax/libs/selectize.js/0.9.0/less/plugins/remove_button.less b/ajax/libs/selectize.js/0.9.0/less/plugins/remove_button.less new file mode 100644 index 000000000..47db77720 --- /dev/null +++ b/ajax/libs/selectize.js/0.9.0/less/plugins/remove_button.less @@ -0,0 +1,36 @@ +.selectize-control.plugin-remove_button { + [data-value] { + position: relative; + padding-right: 24px !important; + } + [data-value] .remove { + position: absolute; + top: 0; + right: 0; + bottom: 0; + width: 17px; + text-align: center; + font-weight: bold; + font-size: 12px; + color: inherit; + text-decoration: none; + vertical-align: middle; + display: inline-block; + padding: @selectize-padding-item-y 0 0 0; + border-left: 1px solid @selectize-color-item-border; + .selectize-border-radius(0 2px 2px 0); + .selectize-box-sizing(border-box); + } + [data-value] .remove:hover { + background: rgba(0,0,0,0.05); + } + [data-value].active .remove { + border-left-color: @selectize-color-item-active-border; + } + .disabled [data-value] .remove:hover { + background: none; + } + .disabled [data-value] .remove { + border-left-color: lighten(desaturate(@selectize-color-item-border, 100%), @selectize-lighten-disabled-item-border); + } +} \ No newline at end of file diff --git a/ajax/libs/selectize.js/0.9.0/less/selectize.bootstrap2.less b/ajax/libs/selectize.js/0.9.0/less/selectize.bootstrap2.less new file mode 100644 index 000000000..259449630 --- /dev/null +++ b/ajax/libs/selectize.js/0.9.0/less/selectize.bootstrap2.less @@ -0,0 +1,161 @@ +/** + * selectize.bootstrap2.css (v0.9.0) - Bootstrap 2 Theme + * Copyright (c) 2013 Brian Reavis & contributors + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this + * file except in compliance with the License. You may obtain a copy of the License at: + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under + * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF + * ANY KIND, either express or implied. See the License for the specific language + * governing permissions and limitations under the License. + * + * @author Brian Reavis + */ + +@import "selectize"; + +@selectize-font-family: @baseFontFamily; +@selectize-font-size: @baseFontSize; +@selectize-line-height: @baseLineHeight; + +@selectize-color-text: @textColor; +@selectize-color-highlight: rgba(255,237,40,0.4); +@selectize-color-input: @inputBackground; +@selectize-color-input-full: @inputBackground; +@selectize-color-disabled: @inputBackground; +@selectize-color-item: @btnBackgroundHighlight; +@selectize-color-item-border: @btnBorder; +@selectize-color-item-active: @dropdownLinkBackgroundHover; +@selectize-color-item-active-text: @dropdownLinkColorHover; +@selectize-color-item-active-border: darken(@selectize-color-item-active, 5%); +@selectize-color-optgroup: @dropdownBackground; +@selectize-color-optgroup-text: @grayLight; +@selectize-color-optgroup-border: @dropdownDividerTop; +@selectize-color-dropdown: @dropdownBackground; +@selectize-color-dropdown-border: @inputBorder; +@selectize-color-dropdown-border-top: @dropdownDividerTop; +@selectize-color-dropdown-item-active: @dropdownLinkBackgroundHover; +@selectize-color-dropdown-item-active-text: @dropdownLinkColorHover; +@selectize-color-dropdown-item-create-active-text: @dropdownLinkColorHover; +@selectize-lighten-disabled-item: 8%; +@selectize-lighten-disabled-item-text: 8%; +@selectize-lighten-disabled-item-border: 8%; +@selectize-opacity-disabled: 0.5; +@selectize-shadow-input: none; +@selectize-shadow-input-focus: inset 0 1px 2px rgba(0,0,0,0.15); +@selectize-border-radius: @inputBorderRadius; + +@selectize-padding-x: 10px; +@selectize-padding-y: 7px; +@selectize-padding-dropdown-item-x: @selectize-padding-x; +@selectize-padding-dropdown-item-y: 3px; +@selectize-padding-item-x: 3px; +@selectize-padding-item-y: 1px; +@selectize-margin-item-x: 3px; +@selectize-margin-item-y: 3px; +@selectize-caret-margin: 0; + +@selectize-arrow-size: 5px; +@selectize-arrow-color: @black; +@selectize-arrow-offset: @selectize-padding-x + 5px; + +@selectize-width-item-border: 1px; + +.selectize-dropdown { + margin: 2px 0 0 0; + z-index: @zindexDropdown; + border: 1px solid @dropdownBorder; + border-radius: @baseBorderRadius; + .box-shadow(0 5px 10px rgba(0,0,0,.2)); + + .optgroup-header { + font-size: 11px; + font-weight: bold; + text-shadow: 0 1px 0 rgba(255,255,255,.5); + text-transform: uppercase; + } + .optgroup:first-child:before { + display: none; + } + .optgroup:before { + content: ' '; + display: block; + .nav-divider(); + margin-left: @selectize-padding-dropdown-item-x * -1; + margin-right: @selectize-padding-dropdown-item-x * -1; + } + + [data-selectable].active { + #gradient > .vertical(@dropdownLinkBackgroundHover, darken(@dropdownLinkBackgroundHover, 5%)); + } +} + +.selectize-dropdown-content { + padding: 5px 0; +} + +.selectize-dropdown-header { + padding: @selectize-padding-dropdown-item-y * 2 @selectize-padding-dropdown-item-x; +} + +.selectize-input { + .transition(~"border linear .2s, box-shadow linear .2s"); + + &.dropdown-active { + .selectize-border-radius(@selectize-border-radius); + } + &.dropdown-active::before { + display: none; + } + &.input-active, &.input-active:hover, .selectize-control.multi &.focus { + background: @selectize-color-input !important; + border-color: rgba(82,168,236,.8) !important; + outline: 0 !important; + outline: thin dotted \9 !important; + .box-shadow(~"inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6)") !important; + } +} + +.selectize-control { + &.single { + .selectize-input { + .buttonBackground(@btnBackground, @btnBackgroundHighlight, @grayDark, 0 1px 1px rgba(255,255,255,.75)); + .box-shadow(~"inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05)"); + &:hover { + color: @grayDark; + text-decoration: none; + background-position: 0 -15px; + .transition(background-position .1s linear); + } + &.disabled { + background: @btnBackgroundHighlight !important; + .box-shadow(none); + } + } + } + &.multi { + .selectize-input { + .box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); + &.has-items { + @padding-x: @selectize-padding-x - @selectize-padding-item-x; + padding-left: @padding-x; + padding-right: @padding-x; + } + } + .selectize-input > div { + .gradientBar(@btnBackground, @btnBackgroundHighlight, @selectize-color-item-text, none); + *background-color: @selectize-color-item; + border: @selectize-width-item-border solid @selectize-color-item-border; + .border-radius(@baseBorderRadius); + .box-shadow(~"inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05)"); + &.active { + .box-shadow(~"0 1px 2px rgba(0,0,0,.05)"); + .gradientBar(@selectize-color-item-active, @selectize-color-item-active-border, @selectize-color-item-active-text, none); + *background-color: @selectize-color-item-active; + border: @selectize-width-item-border solid @dropdownLinkBackgroundHover; + } + } + } +} \ No newline at end of file diff --git a/ajax/libs/selectize.js/0.9.0/less/selectize.bootstrap3.less b/ajax/libs/selectize.js/0.9.0/less/selectize.bootstrap3.less new file mode 100644 index 000000000..dbf71d78c --- /dev/null +++ b/ajax/libs/selectize.js/0.9.0/less/selectize.bootstrap3.less @@ -0,0 +1,136 @@ +/** + * selectize.bootstrap3.css (v0.9.0) - Bootstrap 3 Theme + * Copyright (c) 2013 Brian Reavis & contributors + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this + * file except in compliance with the License. You may obtain a copy of the License at: + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under + * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF + * ANY KIND, either express or implied. See the License for the specific language + * governing permissions and limitations under the License. + * + * @author Brian Reavis + */ + +@import "selectize"; + +@selectize-font-family: @font-family-base; +@selectize-font-size: @font-size-base; +@selectize-line-height: @line-height-computed; + +@selectize-color-text: @text-color; +@selectize-color-highlight: rgba(255,237,40,0.4); +@selectize-color-input: @input-bg; +@selectize-color-input-full: @input-bg; +@selectize-color-disabled: @input-bg; +@selectize-color-item: #efefef; +@selectize-color-item-border: rgba(0,0,0,0); +@selectize-color-item-active: @component-active-bg; +@selectize-color-item-active-text: #fff; +@selectize-color-item-active-border: rgba(0,0,0,0); +@selectize-color-optgroup: @dropdown-bg; +@selectize-color-optgroup-text: @dropdown-header-color; +@selectize-color-optgroup-border: @dropdown-divider-bg; +@selectize-color-dropdown: @dropdown-bg; +@selectize-color-dropdown-border-top: mix(@input-border, @input-bg, 0.8); +@selectize-color-dropdown-item-active: @dropdown-link-hover-bg; +@selectize-color-dropdown-item-active-text: @dropdown-link-hover-color; +@selectize-color-dropdown-item-create-active-text: @dropdown-link-hover-color; +@selectize-opacity-disabled: 0.5; +@selectize-shadow-input: none; +@selectize-shadow-input-focus: inset 0 1px 2px rgba(0,0,0,0.15); +@selectize-border: 1px solid @input-border; +@selectize-border-radius: @input-border-radius; + +@selectize-width-item-border: 0; +@selectize-padding-x: @padding-base-horizontal; +@selectize-padding-y: @padding-base-vertical; +@selectize-padding-dropdown-item-x: @padding-base-horizontal; +@selectize-padding-dropdown-item-y: 3px; +@selectize-padding-item-x: 3px; +@selectize-padding-item-y: 1px; +@selectize-margin-item-x: 3px; +@selectize-margin-item-y: 3px; +@selectize-caret-margin: 0; + +@selectize-arrow-size: 5px; +@selectize-arrow-color: @selectize-color-text; +@selectize-arrow-offset: @selectize-padding-x + 5px; + +.selectize-dropdown, .selectize-dropdown.form-control { + height: auto; + padding: 0; + margin: 2px 0 0 0; + z-index: @zindex-dropdown; + background: @selectize-color-dropdown; + border: 1px solid @dropdown-fallback-border; + border: 1px solid @dropdown-border; + .selectize-border-radius(@border-radius-base); + .selectize-box-shadow(0 6px 12px rgba(0,0,0,.175)); +} + +.selectize-dropdown { + .optgroup-header { + font-size: @font-size-small; + line-height: @line-height-base; + } + .optgroup:first-child:before { + display: none; + } + .optgroup:before { + content: ' '; + display: block; + .nav-divider(); + margin-left: @selectize-padding-dropdown-item-x * -1; + margin-right: @selectize-padding-dropdown-item-x * -1; + } +} + +.selectize-dropdown-content { + padding: 5px 0; +} + +.selectize-dropdown-header { + padding: @selectize-padding-dropdown-item-y * 2 @selectize-padding-dropdown-item-x; +} + +.selectize-input { + min-height: @input-height-base; + + &.dropdown-active { + .selectize-border-radius(@selectize-border-radius); + } + &.dropdown-active::before { + display: none; + } + &.focus { + @color: @input-border-focus; + @color-rgba: rgba(red(@color), green(@color), blue(@color), .6); + border-color: @color; + outline: 0; + .selectize-box-shadow(~"inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px @{color-rgba}"); + } +} + +.selectize-control { + &.multi { + .selectize-input.has-items { + padding-left: @selectize-padding-x - @selectize-padding-item-x; + padding-right: @selectize-padding-x - @selectize-padding-item-x; + } + .selectize-input > div { + .selectize-border-radius(@selectize-border-radius - 1px); + } + } +} + +.form-control.selectize-control { + padding: 0; + height: auto; + border: none; + background: none; + .selectize-box-shadow(none); + .selectize-border-radius(0); +} \ No newline at end of file diff --git a/ajax/libs/selectize.js/0.9.0/less/selectize.default.less b/ajax/libs/selectize.js/0.9.0/less/selectize.default.less new file mode 100644 index 000000000..0a539cf9a --- /dev/null +++ b/ajax/libs/selectize.js/0.9.0/less/selectize.default.less @@ -0,0 +1,84 @@ +/** + * selectize.default.css (v0.9.0) - Default Theme + * Copyright (c) 2013 Brian Reavis & contributors + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this + * file except in compliance with the License. You may obtain a copy of the License at: + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under + * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF + * ANY KIND, either express or implied. See the License for the specific language + * governing permissions and limitations under the License. + * + * @author Brian Reavis + */ + +@import "selectize"; + +@selectize-color-item: #1da7ee; +@selectize-color-item-text: #fff; +@selectize-color-item-active-text: #fff; +@selectize-color-item-border: #0073bb; +@selectize-color-item-active: #92c836; +@selectize-color-item-active-border: #00578d; +@selectize-width-item-border: 1px; +@selectize-caret-margin: 0 1px; + +.selectize-control { + &.multi { + .selectize-input { + &.has-items { + @padding-x: @selectize-padding-x - 3px; + padding-left: @padding-x; + padding-right: @padding-x; + } + &.disabled [data-value] { + color: #999; + text-shadow: none; + background: none; + .selectize-box-shadow(none); + + &, .remove { + border-color: #e6e6e6; + } + .remove { + background: none; + } + } + [data-value] { + text-shadow: 0 1px 0 rgba(0,51,83,0.3); + .selectize-border-radius(3px); + .selectize-vertical-gradient(#1da7ee, #178ee9); + .selectize-box-shadow(~"0 1px 0 rgba(0,0,0,0.2),inset 0 1px rgba(255,255,255,0.03)"); + &.active { + .selectize-vertical-gradient(#008fd8, #0075cf); + } + } + } + } + &.single { + .selectize-input { + .selectize-box-shadow(~"0 1px 0 rgba(0,0,0,0.05), inset 0 1px 0 rgba(255,255,255,0.8)"); + .selectize-vertical-gradient(#fefefe, #f2f2f2); + } + } +} + +.selectize-control.single .selectize-input, .selectize-dropdown.single { + border-color: #b8b8b8; +} + +.selectize-dropdown { + .optgroup-header { + padding-top: @selectize-padding-dropdown-item-y + 2px; + font-weight: bold; + font-size: 0.85em; + } + .optgroup { + border-top: 1px solid @selectize-color-dropdown-border-top; + &:first-child { + border-top: 0 none; + } + } +} \ No newline at end of file diff --git a/ajax/libs/selectize.js/0.9.0/less/selectize.legacy.less b/ajax/libs/selectize.js/0.9.0/less/selectize.legacy.less new file mode 100644 index 000000000..04ad58ee5 --- /dev/null +++ b/ajax/libs/selectize.js/0.9.0/less/selectize.legacy.less @@ -0,0 +1,75 @@ +/** + * selectize.legacy.css (v0.9.0) - Default Theme + * Copyright (c) 2013 Brian Reavis & contributors + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this + * file except in compliance with the License. You may obtain a copy of the License at: + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under + * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF + * ANY KIND, either express or implied. See the License for the specific language + * governing permissions and limitations under the License. + * + * @author Brian Reavis + */ + +@import "selectize"; + +@selectize-font-size: 13px; +@selectize-line-height: 20px; + +@selectize-color-input-full: #f2f2f2; +@selectize-color-item: #b8e76f; +@selectize-color-item-text: #3d5d18; +@selectize-color-item-border: #74b21e; +@selectize-color-item-active: #92c836; +@selectize-color-item-active-border: #6f9839; +@selectize-color-highlight: rgba(255,237,40,0.4); +@selectize-color-dropdown-item-active: #fffceb; +@selectize-color-dropdown-item-active-text: @selectize-color-text; +@selectize-color-optgroup: #f8f8f8; +@selectize-color-optgroup-text: @selectize-color-text; +@selectize-width-item-border: 1px; + +@selectize-padding-x: 10px; +@selectize-padding-y: 10px; +@selectize-padding-item-x: 5px; +@selectize-padding-item-y: 1px; +@selectize-padding-dropdown-item-x: 10px; +@selectize-padding-dropdown-item-y: 7px; +@selectize-margin-item-x: 4px; +@selectize-margin-item-y: 4px; + +.selectize-control { + &.multi { + .selectize-input [data-value] { + text-shadow: 0 1px 0 rgba(255,255,255,0.1); + .selectize-border-radius(3px); + .selectize-vertical-gradient(#b8e76f, #a9e25c); + .selectize-box-shadow(0 1px 1px rgba(0,0,0,0.1)); + &.active { + .selectize-vertical-gradient(#92c836, #7abc2c); + } + } + } + &.single { + .selectize-input { + .selectize-box-shadow(~"inset 0 1px 0 rgba(255,255,255,0.8), 0 2px 0 #e0e0e0, 0 3px 0 #c8c8c8, 0 4px 1px rgba(0,0,0,0.1)"); + .selectize-vertical-gradient(#f5f5f5, #efefef); + } + } +} + +.selectize-control.single .selectize-input, .selectize-dropdown.single { + border-color: #b8b8b8; +} + +.selectize-dropdown { + .optgroup-header { + font-weight: bold; + font-size: 0.8em; + border-bottom: 1px solid @selectize-color-dropdown-border-top; + border-top: 1px solid @selectize-color-dropdown-border-top; + } +} \ No newline at end of file diff --git a/ajax/libs/selectize.js/0.9.0/less/selectize.less b/ajax/libs/selectize.js/0.9.0/less/selectize.less new file mode 100644 index 000000000..1bb51f2b8 --- /dev/null +++ b/ajax/libs/selectize.js/0.9.0/less/selectize.less @@ -0,0 +1,290 @@ +@import "plugins/drag_drop"; +@import "plugins/dropdown_header"; +@import "plugins/optgroup_columns"; +@import "plugins/remove_button"; + +// base styles + +@selectize-font-family: inherit; +@selectize-font-smoothing: inherit; +@selectize-font-size: 13px; +@selectize-line-height: 18px; + +@selectize-color-text: #303030; +@selectize-color-border: #d0d0d0; +@selectize-color-highlight: rgba(125,168,208,0.2); +@selectize-color-input: #fff; +@selectize-color-input-full: @selectize-color-input; +@selectize-color-disabled: #fafafa; +@selectize-color-item: #f2f2f2; +@selectize-color-item-text: @selectize-color-text; +@selectize-color-item-border: #d0d0d0; +@selectize-color-item-active: #e8e8e8; +@selectize-color-item-active-text: @selectize-color-text; +@selectize-color-item-active-border: #cacaca; +@selectize-color-dropdown: #fff; +@selectize-color-dropdown-border: @selectize-color-border; +@selectize-color-dropdown-border-top: #f0f0f0; +@selectize-color-dropdown-item-active: #f5fafd; +@selectize-color-dropdown-item-active-text: #495c68; +@selectize-color-dropdown-item-create-text: rgba(red(@selectize-color-text), green(@selectize-color-text), blue(@selectize-color-text), 0.5); +@selectize-color-dropdown-item-create-active-text: @selectize-color-dropdown-item-active-text; +@selectize-color-optgroup: @selectize-color-dropdown; +@selectize-color-optgroup-text: @selectize-color-text; +@selectize-lighten-disabled-item: 30%; +@selectize-lighten-disabled-item-text: 30%; +@selectize-lighten-disabled-item-border: 30%; +@selectize-opacity-disabled: 0.5; + +@selectize-shadow-input: inset 0 1px 1px rgba(0,0,0,0.1); +@selectize-shadow-input-focus: inset 0 1px 2px rgba(0,0,0,0.15); +@selectize-border: 1px solid @selectize-color-border; +@selectize-border-radius: 3px; + +@selectize-width-item-border: 0; +@selectize-max-height-dropdown: 200px; + +@selectize-padding-x: 8px; +@selectize-padding-y: 8px; +@selectize-padding-item-x: 6px; +@selectize-padding-item-y: 2px; +@selectize-padding-dropdown-item-x: @selectize-padding-x; +@selectize-padding-dropdown-item-y: 5px; +@selectize-margin-item-x: 3px; +@selectize-margin-item-y: 3px; + +@selectize-arrow-size: 5px; +@selectize-arrow-color: #808080; +@selectize-arrow-offset: 15px; + +@selectize-caret-margin: 0 2px 0 0; +@selectize-caret-margin-rtl: 0 4px 0 -2px; + +.selectize-border-radius (@radii) { + -webkit-border-radius: @radii; + -moz-border-radius: @radii; + border-radius: @radii; +} +.selectize-unselectable () { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +.selectize-box-shadow (@shadow) { + -webkit-box-shadow: @shadow; + box-shadow: @shadow; +} +.selectize-box-sizing (@type: border-box) { + -webkit-box-sizing: @type; + -moz-box-sizing: @type; + box-sizing: @type; +} +.selectize-vertical-gradient (@color-top, @color-bottom) { + background-color: mix(@color-top, @color-bottom, 60%); + background-image: -moz-linear-gradient(top, @color-top, @color-bottom); // FF 3.6+ + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@color-top), to(@color-bottom)); // Safari 4+, Chrome 2+ + background-image: -webkit-linear-gradient(top, @color-top, @color-bottom); // Safari 5.1+, Chrome 10+ + background-image: -o-linear-gradient(top, @color-top, @color-bottom); // Opera 11.10 + background-image: linear-gradient(to bottom, @color-top, @color-bottom); // Standard, IE10 + background-repeat: repeat-x; + filter: e(%("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",argb(@color-top),argb(@color-bottom))); // IE9 and down +} + +.selectize-control { + position: relative; +} + +.selectize-dropdown, .selectize-input, .selectize-input input { + color: @selectize-color-text; + font-family: @selectize-font-family; + font-size: @selectize-font-size; + line-height: @selectize-line-height; + -webkit-font-smoothing: @selectize-font-smoothing; +} + +.selectize-input, .selectize-control.single .selectize-input.input-active { + background: @selectize-color-input; + cursor: text; + display: inline-block; +} + +.selectize-input { + border: @selectize-border; + padding: @selectize-padding-y @selectize-padding-x; + display: inline-block; + width: 100%; + overflow: hidden; + position: relative; + z-index: 1; + .selectize-box-sizing(border-box); + .selectize-box-shadow(@selectize-shadow-input); + .selectize-border-radius(@selectize-border-radius); + + .selectize-control.multi &.has-items { + @padding-x: @selectize-padding-x; + @padding-top: @selectize-padding-y - @selectize-padding-item-y - @selectize-width-item-border; + @padding-bottom: @selectize-padding-y - @selectize-padding-item-y - @selectize-margin-item-y - @selectize-width-item-border; + padding: @padding-top @padding-x @padding-bottom; + } + + &.full { + background-color: @selectize-color-input-full; + } + &.disabled, &.disabled * { + cursor: default !important; + } + &.focus { + .selectize-box-shadow(@selectize-shadow-input-focus); + } + &.dropdown-active { + .selectize-border-radius(@selectize-border-radius @selectize-border-radius 0 0); + } + + > * { + vertical-align: baseline; + display: -moz-inline-stack; + display: inline-block; + zoom: 1; + *display: inline; + } + .selectize-control.multi & > div { + cursor: pointer; + margin: 0 @selectize-margin-item-x @selectize-margin-item-y 0; + padding: @selectize-padding-item-y @selectize-padding-item-x; + background: @selectize-color-item; + color: @selectize-color-item-text; + border: @selectize-width-item-border solid @selectize-color-item-border; + + &.active { + background: @selectize-color-item-active; + color: @selectize-color-item-active-text; + border: @selectize-width-item-border solid @selectize-color-item-active-border; + } + } + .selectize-control.multi &.disabled > div { + &, &.active { + color: lighten(desaturate(@selectize-color-item-text, 100%), @selectize-lighten-disabled-item-text); + background: lighten(desaturate(@selectize-color-item, 100%), @selectize-lighten-disabled-item); + border: @selectize-width-item-border solid lighten(desaturate(@selectize-color-item-border, 100%), @selectize-lighten-disabled-item-border); + } + } + > input { + padding: 0 !important; + min-height: 0 !important; + max-height: none !important; + max-width: 100% !important; + margin: @selectize-caret-margin !important; + text-indent: 0 !important; + border: 0 none !important; + background: none !important; + line-height: inherit !important; + -webkit-user-select: auto !important; + .selectize-box-shadow(none) !important; + &:focus { outline: none !important; } + } +} + +.selectize-input::after { + content: ' '; + display: block; + clear: left; +} + +.selectize-input.dropdown-active::before { + content: ' '; + display: block; + position: absolute; + background: @selectize-color-dropdown-border-top; + height: 1px; + bottom: 0; + left: 0; + right: 0; +} + +.selectize-dropdown { + position: absolute; + z-index: 10; + border: @selectize-border; + background: @selectize-color-dropdown; + margin: -1px 0 0 0; + border-top: 0 none; + .selectize-box-sizing(border-box); + .selectize-box-shadow(0 1px 3px rgba(0,0,0,0.1)); + .selectize-border-radius(0 0 @selectize-border-radius @selectize-border-radius); + + [data-selectable] { + cursor: pointer; + overflow: hidden; + .highlight { + background: @selectize-color-highlight; + .selectize-border-radius(1px); + } + } + [data-selectable], .optgroup-header { + padding: @selectize-padding-dropdown-item-y @selectize-padding-dropdown-item-x; + } + .optgroup:first-child .optgroup-header { + border-top: 0 none; + } + .optgroup-header { + color: @selectize-color-optgroup-text; + background: @selectize-color-optgroup; + cursor: default; + } + .active { + background-color: @selectize-color-dropdown-item-active; + color: @selectize-color-dropdown-item-active-text; + &.create { + color: @selectize-color-dropdown-item-create-active-text; + } + } + .create { + color: @selectize-color-dropdown-item-create-text; + } +} + +.selectize-dropdown-content { + overflow-y: auto; + overflow-x: hidden; + max-height: @selectize-max-height-dropdown; +} + +.selectize-control.single .selectize-input { + &, input { cursor: pointer; } + &.input-active, &.input-active input { cursor: text; } + + &:after { + content: ' '; + display: block; + position: absolute; + top: 50%; + right: @selectize-arrow-offset; + margin-top: round(-@selectize-arrow-size / 2); + width: 0; + height: 0; + border-style: solid; + border-width: @selectize-arrow-size @selectize-arrow-size 0 @selectize-arrow-size; + border-color: @selectize-arrow-color transparent transparent transparent; + } + &.dropdown-active:after { + margin-top: @selectize-arrow-size * -0.8; + border-width: 0 @selectize-arrow-size @selectize-arrow-size @selectize-arrow-size; + border-color: transparent transparent @selectize-arrow-color transparent; + } +} + +.selectize-control.rtl { + &.single .selectize-input:after { + left: @selectize-arrow-offset; + right: auto; + } + .selectize-input > input { + margin: @selectize-caret-margin-rtl !important; + } +} + +.selectize-control .selectize-input.disabled { + opacity: @selectize-opacity-disabled; + background-color: @selectize-color-disabled; +} diff --git a/ajax/libs/selectize.js/package.json b/ajax/libs/selectize.js/package.json index 521efb298..8a9846756 100644 --- a/ajax/libs/selectize.js/package.json +++ b/ajax/libs/selectize.js/package.json @@ -1,7 +1,7 @@ { "name": "selectize.js", "filename": "js/selectize.min.js", - "version": "0.8.5", + "version": "0.9.0", "description": "A jQuery-based select UI control with autocomplete and native-feeling keyboard navigation; useful for tagging, contact lists, etc.", "homepage": "http://brianreavis.github.io/selectize.js/", "keywords": [ From 04018311adef99df344ce4884d6998727dbab4d5 Mon Sep 17 00:00:00 2001 From: Magnus Burton Date: Mon, 21 Apr 2014 17:39:50 +0200 Subject: [PATCH 02/20] Create fullcalendar.min.css --- ajax/libs/fullcalendar/1.6.4/fullcalendar.min.css | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 ajax/libs/fullcalendar/1.6.4/fullcalendar.min.css diff --git a/ajax/libs/fullcalendar/1.6.4/fullcalendar.min.css b/ajax/libs/fullcalendar/1.6.4/fullcalendar.min.css new file mode 100644 index 000000000..e1e9adcdd --- /dev/null +++ b/ajax/libs/fullcalendar/1.6.4/fullcalendar.min.css @@ -0,0 +1,6 @@ +/*! + * FullCalendar v1.6.4 Stylesheet + * Docs & License: http://arshaw.com/fullcalendar/ + * (c) 2013 Adam Shaw + */ +.fc{direction:ltr;text-align:left}.fc table{border-collapse:collapse;border-spacing:0}.fc table,html .fc{font-size:1em}.fc td,.fc th{padding:0;vertical-align:top}.fc-header td{white-space:nowrap}.fc-header-left{width:25%;text-align:left}.fc-header-center{text-align:center}.fc-header-right{width:25%;text-align:right}.fc-header-title{display:inline-block;vertical-align:top}.fc-header-title h2{margin-top:0;white-space:nowrap}.fc .fc-header-space{padding-left:10px}.fc-header .fc-button{margin-bottom:1em;vertical-align:top;margin-right:-1px}.fc-header .fc-corner-right,.fc-header .ui-corner-right{margin-right:0}.fc-header .fc-state-hover,.fc-header .ui-state-hover{z-index:2}.fc-header .fc-state-down{z-index:3}.fc-header .fc-state-active,.fc-header .ui-state-active{z-index:4}.fc-content{clear:both;zoom:1}.fc-view{width:100%;overflow:hidden}.fc-widget-content,.fc-widget-header{border:1px solid #ddd}.fc-state-highlight{background:#fcf8e3}.fc-cell-overlay{background:#bce8f1;opacity:.3;filter:alpha(opacity=30)}.fc-button{position:relative;display:inline-block;padding:0 .6em;overflow:hidden;height:1.9em;line-height:1.9em;white-space:nowrap;cursor:pointer}.fc-state-default{border:1px solid}.fc-state-default.fc-corner-left{border-top-left-radius:4px;border-bottom-left-radius:4px}.fc-state-default.fc-corner-right{border-top-right-radius:4px;border-bottom-right-radius:4px}.fc-text-arrow{margin:0 .1em;font-size:2em;font-family:"Courier New",Courier,monospace;vertical-align:baseline}.fc-button-next .fc-text-arrow,.fc-button-prev .fc-text-arrow{font-weight:700}.fc-button .fc-icon-wrap{position:relative;float:left;top:50%}.fc-button .ui-icon{position:relative;float:left;margin-top:-50%;*margin-top:0;*top:-50%}.fc-state-default{background-color:#f5f5f5;background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-image:-webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to bottom,#fff,#e6e6e6);background-repeat:repeat-x;border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0,0,0,.1)rgba(0,0,0,.1)rgba(0,0,0,.25);color:#333;text-shadow:0 1px 1px rgba(255,255,255,.75);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 2px rgba(0,0,0,.05)}.fc-state-active,.fc-state-disabled,.fc-state-down,.fc-state-hover{color:#333;background-color:#e6e6e6}.fc-state-hover{color:#333;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s linear;-o-transition:background-position .1s linear;transition:background-position .1s linear}.fc-state-active,.fc-state-down{background-color:#ccc;background-image:none;outline:0;box-shadow:inset 0 2px 4px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.05)}.fc-state-disabled{cursor:default;background-image:none;opacity:.65;filter:alpha(opacity=65);box-shadow:none}.fc-event-container>*{z-index:8}.fc-event-container>.ui-draggable-dragging,.fc-event-container>.ui-resizable-resizing{z-index:9}.fc-event{border:1px solid #3a87ad;background-color:#3a87ad;color:#fff;font-size:.85em;cursor:default}a.fc-event{text-decoration:none}.fc-event-draggable,a.fc-event{cursor:pointer}.fc-rtl .fc-event{text-align:right}.fc-event-inner{width:100%;height:100%;overflow:hidden}.fc-event-time,.fc-event-title{padding:0 1px}.fc .ui-resizable-handle{display:block;position:absolute;z-index:99999;overflow:hidden;font-size:300%;line-height:50%}.fc-event-hori{border-width:1px 0;margin-bottom:1px}.fc-ltr .fc-event-hori.fc-event-start,.fc-rtl .fc-event-hori.fc-event-end{border-left-width:1px;border-top-left-radius:3px;border-bottom-left-radius:3px}.fc-ltr .fc-event-hori.fc-event-end,.fc-rtl .fc-event-hori.fc-event-start{border-right-width:1px;border-top-right-radius:3px;border-bottom-right-radius:3px}.fc-event-hori .ui-resizable-e{top:0!important;right:-3px!important;width:7px!important;height:100%!important;cursor:e-resize}.fc-event-hori .ui-resizable-w{top:0!important;left:-3px!important;width:7px!important;height:100%!important;cursor:w-resize}.fc-event-hori .ui-resizable-handle{_padding-bottom:14px}table.fc-border-separate{border-collapse:separate}.fc-border-separate td,.fc-border-separate th{border-width:1px 0 0 1px}.fc-border-separate td.fc-last,.fc-border-separate th.fc-last{border-right-width:1px}.fc-border-separate tr.fc-last td,.fc-border-separate tr.fc-last th{border-bottom-width:1px}.fc-border-separate tbody tr.fc-first td,.fc-border-separate tbody tr.fc-first th{border-top-width:0}.fc-grid th{text-align:center}.fc .fc-week-number{width:22px;text-align:center}.fc .fc-week-number div{padding:0 2px}.fc-grid .fc-day-number{float:right;padding:0 2px}.fc-grid .fc-other-month .fc-day-number{opacity:.3;filter:alpha(opacity=30)}.fc-grid .fc-day-content{clear:both;padding:2px 2px 1px}.fc-grid .fc-event-time{font-weight:700}.fc-rtl .fc-grid .fc-day-number{float:left}.fc-rtl .fc-grid .fc-event-time{float:right}.fc-agenda table{border-collapse:separate}.fc-agenda-days th{text-align:center}.fc-agenda .fc-agenda-axis{width:50px;padding:0 4px;vertical-align:middle;text-align:right;white-space:nowrap;font-weight:400}.fc-agenda .fc-week-number{font-weight:700}.fc-agenda .fc-day-content{padding:2px 2px 1px}.fc-agenda-days .fc-agenda-axis{border-right-width:1px}.fc-agenda-days .fc-col0{border-left-width:0}.fc-agenda-allday th{border-width:0 1px}.fc-agenda-allday .fc-day-content{min-height:34px;_height:34px}.fc-agenda-divider-inner{height:2px;overflow:hidden}.fc-widget-header .fc-agenda-divider-inner{background:#eee}.fc-agenda-slots th{border-width:1px 1px 0}.fc-agenda-slots td{border-width:1px 0 0;background:0 0}.fc-agenda-slots td div{height:20px}.fc-agenda-slots tr.fc-slot0 td,.fc-agenda-slots tr.fc-slot0 th{border-top-width:0}.fc-agenda-slots tr.fc-minor td,.fc-agenda-slots tr.fc-minor th{border-top-style:dotted}.fc-agenda-slots tr.fc-minor th.ui-widget-header{*border-top-style:solid}.fc-event-vert{border-width:0 1px}.fc-event-vert.fc-event-start{border-top-width:1px;border-top-left-radius:3px;border-top-right-radius:3px}.fc-event-vert.fc-event-end{border-bottom-width:1px;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.fc-event-vert .fc-event-time{white-space:nowrap;font-size:10px}.fc-event-vert .fc-event-inner{position:relative;z-index:2}.fc-event-vert .fc-event-bg{position:absolute;z-index:1;top:0;left:0;width:100%;height:100%;background:#fff;opacity:.25;filter:alpha(opacity=25)}.fc-event-vert .ui-resizable-s{bottom:0!important;width:100%!important;height:8px!important;overflow:hidden!important;line-height:8px!important;font-size:11px!important;font-family:monospace;text-align:center;cursor:s-resize}.fc-agenda .ui-resizable-resizing{_overflow:hidden} From 60e0257d4a04bd85d82146bd23c5631db11957d7 Mon Sep 17 00:00:00 2001 From: Guido Gautier Date: Tue, 22 Apr 2014 11:47:57 +0200 Subject: [PATCH 03/20] Add semantic-ui 0.16.1 --- ajax/libs/semantic-ui/0.16.1/css/semantic.css | 15135 ++++++++++++++++ .../semantic-ui/0.16.1/css/semantic.min.css | 14 + .../semantic-ui/0.16.1/fonts/basic.icons.eot | Bin 0 -> 40166 bytes .../semantic-ui/0.16.1/fonts/basic.icons.svg | 450 + .../semantic-ui/0.16.1/fonts/basic.icons.ttf | Bin 0 -> 39924 bytes .../semantic-ui/0.16.1/fonts/basic.icons.woff | Bin 0 -> 24676 bytes ajax/libs/semantic-ui/0.16.1/fonts/icons.eot | Bin 0 -> 37405 bytes ajax/libs/semantic-ui/0.16.1/fonts/icons.otf | Bin 0 -> 61896 bytes ajax/libs/semantic-ui/0.16.1/fonts/icons.svg | 399 + ajax/libs/semantic-ui/0.16.1/fonts/icons.ttf | Bin 0 -> 79076 bytes ajax/libs/semantic-ui/0.16.1/fonts/icons.woff | Bin 0 -> 43572 bytes .../0.16.1/images/loader-large-inverted.gif | Bin 0 -> 10168 bytes .../0.16.1/images/loader-large.gif | Bin 0 -> 8492 bytes .../0.16.1/images/loader-medium-inverted.gif | Bin 0 -> 5384 bytes .../0.16.1/images/loader-medium.gif | Bin 0 -> 4472 bytes .../0.16.1/images/loader-mini-inverted.gif | Bin 0 -> 2722 bytes .../semantic-ui/0.16.1/images/loader-mini.gif | Bin 0 -> 2548 bytes .../0.16.1/images/loader-small-inverted.gif | Bin 0 -> 4241 bytes .../0.16.1/images/loader-small.gif | Bin 0 -> 3447 bytes .../semantic-ui/0.16.1/javascript/semantic.js | 12055 ++++++++++++ .../0.16.1/javascript/semantic.min.js | 16 + 21 files changed, 28069 insertions(+) create mode 100644 ajax/libs/semantic-ui/0.16.1/css/semantic.css create mode 100644 ajax/libs/semantic-ui/0.16.1/css/semantic.min.css create mode 100644 ajax/libs/semantic-ui/0.16.1/fonts/basic.icons.eot create mode 100644 ajax/libs/semantic-ui/0.16.1/fonts/basic.icons.svg create mode 100644 ajax/libs/semantic-ui/0.16.1/fonts/basic.icons.ttf create mode 100644 ajax/libs/semantic-ui/0.16.1/fonts/basic.icons.woff create mode 100644 ajax/libs/semantic-ui/0.16.1/fonts/icons.eot create mode 100644 ajax/libs/semantic-ui/0.16.1/fonts/icons.otf create mode 100644 ajax/libs/semantic-ui/0.16.1/fonts/icons.svg create mode 100644 ajax/libs/semantic-ui/0.16.1/fonts/icons.ttf create mode 100644 ajax/libs/semantic-ui/0.16.1/fonts/icons.woff create mode 100644 ajax/libs/semantic-ui/0.16.1/images/loader-large-inverted.gif create mode 100644 ajax/libs/semantic-ui/0.16.1/images/loader-large.gif create mode 100644 ajax/libs/semantic-ui/0.16.1/images/loader-medium-inverted.gif create mode 100644 ajax/libs/semantic-ui/0.16.1/images/loader-medium.gif create mode 100644 ajax/libs/semantic-ui/0.16.1/images/loader-mini-inverted.gif create mode 100644 ajax/libs/semantic-ui/0.16.1/images/loader-mini.gif create mode 100644 ajax/libs/semantic-ui/0.16.1/images/loader-small-inverted.gif create mode 100644 ajax/libs/semantic-ui/0.16.1/images/loader-small.gif create mode 100644 ajax/libs/semantic-ui/0.16.1/javascript/semantic.js create mode 100644 ajax/libs/semantic-ui/0.16.1/javascript/semantic.min.js diff --git a/ajax/libs/semantic-ui/0.16.1/css/semantic.css b/ajax/libs/semantic-ui/0.16.1/css/semantic.css new file mode 100644 index 000000000..d84725f00 --- /dev/null +++ b/ajax/libs/semantic-ui/0.16.1/css/semantic.css @@ -0,0 +1,15135 @@ +/* + * # Semantic - Breadcrumb + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Breadcrumb +*******************************/ +.ui.breadcrumb { + margin: 1em 0em; + display: inline-block; + vertical-align: middle; +} +.ui.breadcrumb:first-child { + margin-top: 0em; +} +.ui.breadcrumb:last-child { + margin-bottom: 0em; +} +/******************************* + Content +*******************************/ +.ui.breadcrumb .divider { + display: inline-block; + opacity: 0.5; + margin: 0em 0.15em 0em; + font-size: 1em; + color: rgba(0, 0, 0, 0.3); +} +.ui.breadcrumb a.section { + cursor: pointer; +} +.ui.breadcrumb .section { + display: inline-block; + margin: 0em; + padding: 0em; +} +/* Loose Coupling */ +.ui.breadcrumb.segment { + display: inline-block; + padding: 0.5em 1em; +} +/******************************* + States +*******************************/ +.ui.breadcrumb .active.section { + font-weight: bold; +} +/******************************* + Variations +*******************************/ +.ui.small.breadcrumb { + font-size: 0.75em; +} +.ui.large.breadcrumb { + font-size: 1.1em; +} +.ui.huge.breadcrumb { + font-size: 1.3em; +} + +/* + * # Semantic - Form + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Standard +*******************************/ +/*-------------------- + Form +---------------------*/ +.ui.form { + position: relative; + max-width: 100%; +} +.ui.form :first-child { + margin-top: 0em; +} +.ui.form :last-child { + margin-bottom: 0em; +} +/*-------------------- + Content +---------------------*/ +.ui.form > p { + margin: 1em 0; +} +/*-------------------- + Field +---------------------*/ +.ui.form .field { + clear: both; + margin: 0em 0em 1em; +} +/*-------------------- + Labels +---------------------*/ +.ui.form .field > label { + margin: 0em 0em 0.3em; + display: block; + color: #555555; + font-size: 0.875em; +} +/*-------------------- + Standard Inputs +---------------------*/ +.ui.form textarea, +.ui.form input[type="text"], +.ui.form input[type="email"], +.ui.form input[type="date"], +.ui.form input[type="password"], +.ui.form input[type="number"], +.ui.form input[type="url"], +.ui.form input[type="tel"], +.ui.form .ui.input { + width: 100%; +} +.ui.form textarea, +.ui.form input[type="text"], +.ui.form input[type="email"], +.ui.form input[type="date"], +.ui.form input[type="password"], +.ui.form input[type="number"], +.ui.form input[type="url"], +.ui.form input[type="tel"] { + margin: 0em; + padding: 0.65em 1em; + font-size: 1em; + background-color: #FFFFFF; + border: 1px solid rgba(0, 0, 0, 0.15); + outline: none; + color: rgba(0, 0, 0, 0.7); + border-radius: 0.3125em; + -webkit-transition: background-color 0.3s ease-out, -webkit-box-shadow 0.2s ease, border-color 0.2s ease; + -moz-transition: background-color 0.3s ease-out, box-shadow 0.2s ease, border-color 0.2s ease; + transition: background-color 0.3s ease-out, box-shadow 0.2s ease, border-color 0.2s ease; + -webkit-box-shadow: 0em 0em 0em 0em rgba(0, 0, 0, 0.3) inset; + box-shadow: 0em 0em 0em 0em rgba(0, 0, 0, 0.3) inset; + -webkit-appearance: none; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +.ui.textarea, +.ui.form textarea { + line-height: 1.33; + min-height: 8em; + height: 12em; + max-height: 24em; + resize: vertical; +} +.ui.form textarea, +.ui.form input[type="checkbox"] { + vertical-align: top; +} +/*-------------------- + Dividers +---------------------*/ +.ui.form .divider { + clear: both; + margin: 1em 0em; +} +/*-------------------- + Types of Messages +---------------------*/ +.ui.form .info.message, +.ui.form .warning.message, +.ui.form .error.message { + display: none; +} +/* Assumptions */ +.ui.form .message:first-child { + margin-top: 0px; +} +/*-------------------- + Validation Prompt +---------------------*/ +.ui.form .field .prompt.label { + white-space: nowrap; +} +.ui.form .inline.field .prompt { + margin-top: 0em; + margin-left: 1em; +} +.ui.form .inline.field .prompt:before { + margin-top: -0.3em; + bottom: auto; + right: auto; + top: 50%; + left: 0em; +} +/******************************* + States +*******************************/ +/*-------------------- + Focus +---------------------*/ +.ui.form input[type="text"]:focus, +.ui.form input[type="email"]:focus, +.ui.form input[type="date"]:focus, +.ui.form input[type="password"]:focus, +.ui.form input[type="number"]:focus, +.ui.form input[type="url"]:focus, +.ui.form input[type="tel"]:focus, +.ui.form textarea:focus { + color: rgba(0, 0, 0, 0.85); + border-color: rgba(0, 0, 0, 0.2); + border-bottom-left-radius: 0; + border-top-left-radius: 0; + -webkit-appearance: none; + -webkit-box-shadow: 0.3em 0em 0em 0em rgba(0, 0, 0, 0.2) inset; + box-shadow: 0.3em 0em 0em 0em rgba(0, 0, 0, 0.2) inset; +} +/*-------------------- + Error +---------------------*/ +/* On Form */ +.ui.form.warning .warning.message { + display: block; +} +/*-------------------- + Warning +---------------------*/ +/* On Form */ +.ui.form.error .error.message { + display: block; +} +/* On Field(s) */ +.ui.form .fields.error .field label, +.ui.form .field.error label, +.ui.form .fields.error .field .input, +.ui.form .field.error .input { + color: #D95C5C; +} +.ui.form .fields.error .field .corner.label, +.ui.form .field.error .corner.label { + border-color: #D95C5C; + color: #FFFFFF; +} +.ui.form .fields.error .field textarea, +.ui.form .fields.error .field input[type="text"], +.ui.form .fields.error .field input[type="email"], +.ui.form .fields.error .field input[type="date"], +.ui.form .fields.error .field input[type="password"], +.ui.form .fields.error .field input[type="number"], +.ui.form .fields.error .field input[type="url"], +.ui.form .fields.error .field input[type="tel"], +.ui.form .field.error textarea, +.ui.form .field.error input[type="text"], +.ui.form .field.error input[type="email"], +.ui.form .field.error input[type="date"], +.ui.form .field.error input[type="password"], +.ui.form .field.error input[type="number"], +.ui.form .field.error input[type="url"], +.ui.form .field.error input[type="tel"] { + background-color: #FFFAFA; + border-color: #E7BEBE; + border-left: none; + color: #D95C5C; + padding-left: 1.2em; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + -webkit-box-shadow: 0.3em 0em 0em 0em #D95C5C inset; + box-shadow: 0.3em 0em 0em 0em #D95C5C inset; +} +.ui.form .field.error textarea:focus, +.ui.form .field.error input[type="text"]:focus, +.ui.form .field.error input[type="email"]:focus, +.ui.form .field.error input[type="date"]:focus, +.ui.form .field.error input[type="password"]:focus, +.ui.form .field.error input[type="number"]:focus, +.ui.form .field.error input[type="url"]:focus, +.ui.form .field.error input[type="tel"]:focus { + border-color: #ff5050; + color: #ff5050; + -webkit-appearance: none; + -webkit-box-shadow: 0.3em 0em 0em 0em #FF5050 inset; + box-shadow: 0.3em 0em 0em 0em #FF5050 inset; +} +/*---------------------------- + Dropdown Selection Warning +-----------------------------*/ +.ui.form .fields.error .field .ui.dropdown, +.ui.form .fields.error .field .ui.dropdown .item, +.ui.form .field.error .ui.dropdown, +.ui.form .field.error .ui.dropdown .item { + background-color: #FFFAFA; + color: #D95C5C; +} +.ui.form .fields.error .field .ui.dropdown, +.ui.form .field.error .ui.dropdown { + -webkit-box-shadow: 0px 0px 0px 1px #E7BEBE !important; + box-shadow: 0px 0px 0px 1px #E7BEBE !important; +} +.ui.form .fields.error .field .ui.dropdown:hover, +.ui.form .field.error .ui.dropdown:hover { + -webkit-box-shadow: 0px 0px 0px 1px #E7BEBE !important; + box-shadow: 0px 0px 0px 1px #E7BEBE !important; +} +.ui.form .fields.error .field .ui.dropdown:hover .menu, +.ui.form .field.error .ui.dropdown:hover .menu { + -webkit-box-shadow: 0px 1px 0px 1px #E7BEBE; + box-shadow: 0px 1px 0px 1px #E7BEBE; +} +.ui.form .fields.error .field .ui.dropdown .menu .item:hover, +.ui.form .field.error .ui.dropdown .menu .item:hover { + background-color: #FFF2F2; +} +.ui.form .fields.error .field .ui.dropdown .menu .active.item, +.ui.form .field.error .ui.dropdown .menu .active.item { + background-color: #FDCFCF !important; +} +/*-------------------- + Empty (Placeholder) +---------------------*/ +/* browsers require these rules separate */ +.ui.form ::-webkit-input-placeholder { + color: #AAAAAA; +} +.ui.form ::-moz-placeholder { + color: #AAAAAA; +} +.ui.form :focus::-webkit-input-placeholder { + color: #999999; +} +.ui.form :focus::-moz-placeholder { + color: #999999; +} +/* Error Placeholder */ +.ui.form .error ::-webkit-input-placeholder { + color: rgba(255, 80, 80, 0.4); +} +.ui.form .error ::-moz-placeholder { + color: rgba(255, 80, 80, 0.4); +} +.ui.form .error :focus::-webkit-input-placeholder { + color: rgba(255, 80, 80, 0.7); +} +.ui.form .error :focus::-moz-placeholder { + color: rgba(255, 80, 80, 0.7); +} +/*-------------------- + Disabled +---------------------*/ +.ui.form .field :disabled, +.ui.form .field.disabled { + opacity: 0.5; +} +.ui.form .field.disabled label { + opacity: 0.5; +} +.ui.form .field.disabled :disabled { + opacity: 1; +} +/*-------------------- + Loading State +---------------------*/ +/* On Form */ +.ui.form.loading { + position: relative; +} +.ui.form.loading:after { + position: absolute; + top: 0%; + left: 0%; + content: ''; + width: 100%; + height: 100%; + background: rgba(255, 255, 255, 0.8) url(../images/loader-large.gif) no-repeat 50% 50%; + visibility: visible; +} +/******************************* + Variations +*******************************/ +/*-------------------- + Fluid Width +---------------------*/ +.ui.form.fluid { + width: 100%; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +/*-------------------------- + Input w/ attached Button +---------------------------*/ +.ui.form input.attached { + width: auto; +} +/*-------------------- + Date Input +---------------------*/ +.ui.form .date.field > label { + position: relative; +} +.ui.form .date.field > label:after { + position: absolute; + top: 2em; + right: 0.5em; + font-family: 'Icons'; + content: '\f133'; + font-size: 1.2em; + font-weight: normal; + color: #CCCCCC; +} +/*-------------------- + Inverted Colors +---------------------*/ +.ui.inverted.form label { + color: #FFFFFF; +} +.ui.inverted.form .field.error textarea, +.ui.inverted.form .field.error input[type="text"], +.ui.inverted.form .field.error input[type="email"], +.ui.inverted.form .field.error input[type="date"], +.ui.inverted.form .field.error input[type="password"], +.ui.inverted.form .field.error input[type="number"], +.ui.inverted.form .field.error input[type="url"], +.ui.inverted.form .field.error input[type="tel"] { + background-color: #FFCCCC; +} +.ui.inverted.form .ui.checkbox label { + color: rgba(255, 255, 255, 0.8); +} +.ui.inverted.form .ui.checkbox label:hover, +.ui.inverted.form .ui.checkbox .box:hover { + color: #FFFFFF; +} +/*-------------------- + Field Groups +---------------------*/ +/* Grouped Vertically */ +.ui.form .grouped.fields { + margin: 0em 0em 1em; +} +.ui.form .grouped.fields .field { + display: block; + float: none; + margin: 0.5em 0em; + padding: 0em; +} +/*-------------------- + Fields +---------------------*/ +/* Split fields */ +.ui.form .fields { + clear: both; +} +.ui.form .fields:after { + content: ' '; + display: block; + clear: both; + visibility: hidden; + line-height: 0; + height: 0; +} +.ui.form .fields > .field { + clear: none; + float: left; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +.ui.form .fields > .field:first-child { + border-left: none; + -webkit-box-shadow: none; + box-shadow: none; +} +/* Other Combinations */ +.ui.form .two.fields > .fields, +.ui.form .two.fields > .field { + width: 50%; + padding-left: 1%; + padding-right: 1%; +} +.ui.form .three.fields > .fields, +.ui.form .three.fields > .field { + width: 33.333%; + padding-left: 1%; + padding-right: 1%; +} +.ui.form .four.fields > .fields, +.ui.form .four.fields > .field { + width: 25%; + padding-left: 1%; + padding-right: 1%; +} +.ui.form .five.fields > .fields, +.ui.form .five.fields > .field { + width: 20%; + padding-left: 1%; + padding-right: 1%; +} +.ui.form .fields .field:first-child { + padding-left: 0%; +} +.ui.form .fields .field:last-child { + padding-right: 0%; +} +/* Fields grid support */ +.ui.form .fields .wide.field { + width: 6.25%; + padding-left: 1%; + padding-right: 1%; +} +.ui.form .fields .wide.field:first-child { + padding-left: 0%; +} +.ui.form .fields .wide.field:last-child { + padding-right: 0%; +} +.ui.form .fields > .one.wide.field { + width: 6.25%; +} +.ui.form .fields > .two.wide.field { + width: 12.5%; +} +.ui.form .fields > .three.wide.field { + width: 18.75%; +} +.ui.form .fields > .four.wide.field { + width: 25%; +} +.ui.form .fields > .five.wide.field { + width: 31.25%; +} +.ui.form .fields > .six.wide.field { + width: 37.5%; +} +.ui.form .fields > .seven.wide.field { + width: 43.75%; +} +.ui.form .fields > .eight.wide.field { + width: 50%; +} +.ui.form .fields > .nine.wide.field { + width: 56.25%; +} +.ui.form .fields > .ten.wide.field { + width: 62.5%; +} +.ui.form .fields > .eleven.wide.field { + width: 68.75%; +} +.ui.form .fields > .twelve.wide.field { + width: 75%; +} +.ui.form .fields > .thirteen.wide.field { + width: 81.25%; +} +.ui.form .fields > .fourteen.wide.field { + width: 87.5%; +} +.ui.form .fields > .fifteen.wide.field { + width: 93.75%; +} +.ui.form .fields > .sixteen.wide.field { + width: 100%; +} +/* Swap to full width on mobile */ +@media only screen and (max-width: 767px) { + .ui.form .two.fields > .fields, + .ui.form .two.fields > .field, + .ui.form .three.fields > .fields, + .ui.form .three.fields > .field, + .ui.form .four.fields > .fields, + .ui.form .four.fields > .field, + .ui.form .five.fields > .fields, + .ui.form .five.fields > .field, + .ui.form .fields > .two.wide.field, + .ui.form .fields > .three.wide.field, + .ui.form .fields > .four.wide.field, + .ui.form .fields > .five.wide.field, + .ui.form .fields > .six.wide.field, + .ui.form .fields > .seven.wide.field, + .ui.form .fields > .eight.wide.field, + .ui.form .fields > .nine.wide.field, + .ui.form .fields > .ten.wide.field, + .ui.form .fields > .eleven.wide.field, + .ui.form .fields > .twelve.wide.field, + .ui.form .fields > .thirteen.wide.field, + .ui.form .fields > .fourteen.wide.field, + .ui.form .fields > .fifteen.wide.field, + .ui.form .fields > .sixteen.wide.field { + width: 100%; + padding-left: 0%; + padding-right: 0%; + } +} +/*-------------------- + Inline Fields +---------------------*/ +.ui.form .inline.fields .field { + min-height: 1.3em; + margin-right: 0.5em; +} +.ui.form .inline.fields .field > label, +.ui.form .inline.fields .field > p, +.ui.form .inline.fields .field > input, +.ui.form .inline.field > label, +.ui.form .inline.field > p, +.ui.form .inline.field > input { + display: inline-block; + width: auto; + margin-top: 0em; + margin-bottom: 0em; + vertical-align: middle; + font-size: 1em; +} +.ui.form .inline.fields .field > input, +.ui.form .inline.field > input { + font-size: 0.875em; +} +.ui.form .inline.fields .field > :first-child, +.ui.form .inline.field > :first-child { + margin: 0em 0.5em 0em 0em; +} +.ui.form .inline.fields .field > :only-child, +.ui.form .inline.field > :only-child { + margin: 0em; +} +/*-------------------- + Sizes +---------------------*/ +/* Standard */ +.ui.small.form { + font-size: 0.875em; +} +.ui.small.form textarea, +.ui.small.form input[type="text"], +.ui.small.form input[type="email"], +.ui.small.form input[type="date"], +.ui.small.form input[type="password"], +.ui.small.form input[type="number"], +.ui.small.form input[type="url"], +.ui.small.form input[type="tel"], +.ui.small.form label { + font-size: 1em; +} +/* Large */ +.ui.large.form { + font-size: 1.125em; +} + +/* + * # Semantic - Grid + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Grid +*******************************/ +.ui.grid { + display: block; + text-align: left; + font-size: 0em; + margin: 0% -1.5%; + padding: 0%; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +body > .ui.grid { + margin-left: 0% !important; + margin-right: 0% !important; +} +.ui.grid:after, +.ui.row:after { + content: "."; + display: block; + height: 0; + clear: both; + visibility: hidden; +} +/*------------------- + Columns +--------------------*/ +/* Standard 16 column */ +.ui.grid > .column, +.ui.grid > .row > .column { + display: inline-block; + text-align: left; + font-size: 1rem; + width: 6.25%; + padding-left: 1.5%; + padding-right: 1.5%; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + vertical-align: top; +} +/* Vertical padding when no rows */ +.ui.grid > .column { + margin-top: 1rem; + margin-bottom: 1rem; +} +/*------------------- + Rows +--------------------*/ +.ui.grid > .row { + display: block; + width: 100% !important; + margin-top: 1.5%; + padding: 1rem 0% 0%; + font-size: 0rem; +} +.ui.grid > .row:first-child { + padding-top: 0rem; + margin-top: 0rem; +} +/*------------------- + Content +--------------------*/ +.ui.grid > .row > img, +.ui.grid > .row > .column > img { + max-width: 100%; +} +.ui.grid .column > .ui.segment:only-child { + margin: 0em; +} +/******************************* + Variations +*******************************/ +/*----------------------- + Page Grid (Responsive) +-------------------------*/ +.ui.page.grid { + min-width: 320px; + margin-left: 0%; + margin-right: 0%; +} +@media only screen and (max-width: 991px) { + .ui.page.grid { + padding: 0% 4%; + } +} +@media only screen and (min-width: 992px) { + .ui.page.grid { + padding: 0% 8%; + } +} +@media only screen and (min-width: 1500px) { + .ui.page.grid { + padding: 0% 13%; + } +} +@media only screen and (min-width: 1750px) { + .ui.page.grid { + padding: 0% 18%; + } +} +@media only screen and (min-width: 2000px) { + .ui.page.grid { + padding: 0% 23%; + } +} +/*------------------- + Column Width +--------------------*/ +/* Sizing Combinations */ +.ui.grid > .row > .one.wide.column, +.ui.grid > .column.row > .one.wide.column, +.ui.grid > .one.wide.column, +.ui.column.grid > .one.wide.column { + width: 6.25%; +} +.ui.grid > .row > .two.wide.column, +.ui.grid > .column.row > .two.wide.column, +.ui.grid > .two.wide.column, +.ui.column.grid > .two.wide.column { + width: 12.5%; +} +.ui.grid > .row > .three.wide.column, +.ui.grid > .column.row > .three.wide.column, +.ui.grid > .three.wide.column, +.ui.column.grid > .three.wide.column { + width: 18.75%; +} +.ui.grid > .row > .four.wide.column, +.ui.grid > .column.row > .four.wide.column, +.ui.grid > .four.wide.column, +.ui.column.grid > .four.wide.column { + width: 25%; +} +.ui.grid > .row > .five.wide.column, +.ui.grid > .column.row > .five.wide.column, +.ui.grid > .five.wide.column, +.ui.column.grid > .five.wide.column { + width: 31.25%; +} +.ui.grid > .row > .six.wide.column, +.ui.grid > .column.row > .six.wide.column, +.ui.grid > .six.wide.column, +.ui.column.grid > .six.wide.column { + width: 37.5%; +} +.ui.grid > .row > .seven.wide.column, +.ui.grid > .column.row > .seven.wide.column, +.ui.grid > .seven.wide.column, +.ui.column.grid > .seven.wide.column { + width: 43.75%; +} +.ui.grid > .row > .eight.wide.column, +.ui.grid > .column.row > .eight.wide.column, +.ui.grid > .eight.wide.column, +.ui.column.grid > .eight.wide.column { + width: 50%; +} +.ui.grid > .row > .nine.wide.column, +.ui.grid > .column.row > .nine.wide.column, +.ui.grid > .nine.wide.column, +.ui.column.grid > .nine.wide.column { + width: 56.25%; +} +.ui.grid > .row > .ten.wide.column, +.ui.grid > .column.row > .ten.wide.column, +.ui.grid > .ten.wide.column, +.ui.column.grid > .ten.wide.column { + width: 62.5%; +} +.ui.grid > .row > .eleven.wide.column, +.ui.grid > .column.row > .eleven.wide.column, +.ui.grid > .eleven.wide.column, +.ui.column.grid > .eleven.wide.column { + width: 68.75%; +} +.ui.grid > .row > .twelve.wide.column, +.ui.grid > .column.row > .twelve.wide.column, +.ui.grid > .twelve.wide.column, +.ui.column.grid > .twelve.wide.column { + width: 75%; +} +.ui.grid > .row > .thirteen.wide.column, +.ui.grid > .column.row > .thirteen.wide.column, +.ui.grid > .thirteen.wide.column, +.ui.column.grid > .thirteen.wide.column { + width: 81.25%; +} +.ui.grid > .row > .fourteen.wide.column, +.ui.grid > .column.row > .fourteen.wide.column, +.ui.grid > .fourteen.wide.column, +.ui.column.grid > .fourteen.wide.column { + width: 87.5%; +} +.ui.grid > .row > .fifteen.wide.column, +.ui.grid > .column.row > .fifteen.wide.column, +.ui.grid > .fifteen.wide.column, +.ui.column.grid > .fifteen.wide.column { + width: 93.75%; +} +.ui.grid > .row > .sixteen.wide.column, +.ui.grid > .column.row > .sixteen.wide.column, +.ui.grid > .sixteen.wide.column, +.ui.column.grid > .sixteen.wide.column { + width: 100%; +} +/*------------------- + Column Count +--------------------*/ +/* Assume full width with one column */ +.ui.one.column.grid > .row > .column, +.ui.one.column.grid > .column, +.ui.grid > .one.column.row > .column { + width: 100%; +} +.ui.two.column.grid > .row > .column, +.ui.two.column.grid > .column, +.ui.grid > .two.column.row > .column { + width: 50%; +} +.ui.three.column.grid > .row > .column, +.ui.three.column.grid > .column, +.ui.grid > .three.column.row > .column { + width: 33.3333%; +} +.ui.four.column.grid > .row > .column, +.ui.four.column.grid > .column, +.ui.grid > .four.column.row > .column { + width: 25%; +} +.ui.five.column.grid > .row > .column, +.ui.five.column.grid > .column, +.ui.grid > .five.column.row > .column { + width: 20%; +} +.ui.six.column.grid > .row > .column, +.ui.six.column.grid > .column, +.ui.grid > .six.column.row > .column { + width: 16.66667%; +} +.ui.seven.column.grid > .row > .column, +.ui.seven.column.grid > .column, +.ui.grid > .seven.column.row > .column { + width: 14.2857%; +} +.ui.eight.column.grid > .row > .column, +.ui.eight.column.grid > .column, +.ui.grid > .eight.column.row > .column { + width: 12.5%; +} +.ui.nine.column.grid > .row > .column, +.ui.nine.column.grid > .column, +.ui.grid > .nine.column.row > .column { + width: 11.1111%; +} +.ui.ten.column.grid > .row > .column, +.ui.ten.column.grid > .column, +.ui.grid > .ten.column.row > .column { + width: 10%; +} +.ui.eleven.column.grid > .row > .column, +.ui.eleven.column.grid > .column, +.ui.grid > .eleven.column.row > .column { + width: 9.0909%; +} +.ui.twelve.column.grid > .row > .column, +.ui.twelve.column.grid > .column, +.ui.grid > .twelve.column.row > .column { + width: 8.3333%; +} +.ui.thirteen.column.grid > .row > .column, +.ui.thirteen.column.grid > .column, +.ui.grid > .thirteen.column.row > .column { + width: 7.6923%; +} +.ui.fourteen.column.grid > .row > .column, +.ui.fourteen.column.grid > .column, +.ui.grid > .fourteen.column.row > .column { + width: 7.1428%; +} +.ui.fifteen.column.grid > .row > .column, +.ui.fifteen.column.grid > .column, +.ui.grid > .fifteen.column.row > .column { + width: 6.6666%; +} +.ui.sixteen.column.grid > .row > .column, +.ui.sixteen.column.grid > .column, +.ui.grid > .sixteen.column.row > .column { + width: 6.25%; +} +/* Assume full width with one column */ +.ui.grid > .column:only-child, +.ui.grid > .row > .column:only-child { + width: 100%; +} +/*---------------------- + Relaxed +-----------------------*/ +.ui.relaxed.grid { + margin: 0% -2.5%; +} +.ui.relaxed.grid > .column, +.ui.relaxed.grid > .row > .column { + padding-left: 2.5%; + padding-right: 2.5%; +} +/*---------------------- + "Floated" +-----------------------*/ +.ui.grid .left.floated.column { + float: left; +} +.ui.grid .right.floated.column { + float: right; +} +/*---------------------- + Divided +-----------------------*/ +.ui.divided.grid, +.ui.divided.grid > .row { + display: table; + width: 100%; + margin-left: 0% !important; + margin-right: 0% !important; +} +.ui.divided.grid > .column:not(.row), +.ui.divided.grid > .row > .column { + display: table-cell; + -webkit-box-shadow: -1px 0px 0px 0px rgba(0, 0, 0, 0.1), -2px 0px 0px 0px rgba(255, 255, 255, 0.8); + box-shadow: -1px 0px 0px 0px rgba(0, 0, 0, 0.1), -2px 0px 0px 0px rgba(255, 255, 255, 0.8); +} +.ui.divided.grid > .column.row { + display: table; +} +.ui.divided.grid > .column:first-child, +.ui.divided.grid > .row > .column:first-child { + -webkit-box-shadow: none; + box-shadow: none; +} +/* Vertically Divided */ +.ui.vertically.divided.grid > .row { + -webkit-box-shadow: 0px -1px 0px 0px rgba(0, 0, 0, 0.1), 0px -2px 0px 0px rgba(255, 255, 255, 0.8) !important; + box-shadow: 0px -1px 0px 0px rgba(0, 0, 0, 0.1), 0px -2px 0px 0px rgba(255, 255, 255, 0.8) !important; +} +.ui.vertically.divided.grid > .row > .column, +.ui.vertically.divided.grid > .column:not(.row), +.ui.vertically.divided.grid > .row:first-child { + -webkit-box-shadow: none !important; + box-shadow: none !important; +} +/*---------------------- + Celled +-----------------------*/ +.ui.celled.grid { + display: table; + width: 100%; + margin-left: 0% !important; + margin-right: 0% !important; + -webkit-box-shadow: 0px 0px 0px 1px #DFDFDF; + box-shadow: 0px 0px 0px 1px #DFDFDF; +} +.ui.celled.grid > .row, +.ui.celled.grid > .column.row, +.ui.celled.grid > .column.row:first-child { + display: table; + width: 100%; + margin-top: 0em; + padding-top: 0em; + -webkit-box-shadow: 0px -1px 0px 0px #dfdfdf; + box-shadow: 0px -1px 0px 0px #dfdfdf; +} +.ui.celled.grid > .column:not(.row), +.ui.celled.grid > .row > .column { + display: table-cell; + padding: 0.75em; + -webkit-box-shadow: -1px 0px 0px 0px #dfdfdf; + box-shadow: -1px 0px 0px 0px #dfdfdf; +} +.ui.celled.grid > .column:first-child, +.ui.celled.grid > .row > .column:first-child { + -webkit-box-shadow: none; + box-shadow: none; +} +.ui.celled.page.grid { + -webkit-box-shadow: none; + box-shadow: none; +} +/*---------------------- + Horizontally Centered +-----------------------*/ +/* Vertical Centered */ +.ui.left.aligned.grid, +.ui.left.aligned.grid > .row > .column, +.ui.left.aligned.grid > .column, +.ui.grid .left.aligned.column, +.ui.grid > .left.aligned.row > .column { + text-align: left; +} +.ui.center.aligned.grid, +.ui.center.aligned.grid > .row > .column, +.ui.center.aligned.grid > .column, +.ui.grid .center.aligned.column, +.ui.grid > .center.aligned.row > .column { + text-align: center; +} +.ui.right.aligned.grid, +.ui.right.aligned.grid > .row > .column, +.ui.right.aligned.grid > .column, +.ui.grid .right.aligned.column, +.ui.grid > .right.aligned.row > .column { + text-align: right; +} +.ui.justified.grid, +.ui.justified.grid > .row > .column, +.ui.justified.grid > .column, +.ui.grid .justified.column, +.ui.grid > .justified.row > .column { + text-align: justify; + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; +} +/*---------------------- + Vertically Centered +-----------------------*/ +/* Vertical Centered */ +.ui.top.aligned.grid, +.ui.top.aligned.grid > .row > .column, +.ui.top.aligned.grid > .column, +.ui.grid .top.aligned.column, +.ui.grid > .top.aligned.row > .column { + vertical-align: top; +} +.ui.middle.aligned.grid, +.ui.middle.aligned.grid > .row > .column, +.ui.middle.aligned.grid > .column, +.ui.grid .middle.aligned.column, +.ui.grid > .middle.aligned.row > .column { + vertical-align: middle; +} +.ui.bottom.aligned.grid, +.ui.bottom.aligned.grid > .row > .column, +.ui.bottom.aligned.grid > .column, +.ui.grid .bottom.aligned.column, +.ui.grid > .bottom.aligned.row > .column { + vertical-align: bottom; +} +/*---------------------- + Equal Height Columns +-----------------------*/ +.ui.grid > .equal.height.row { + display: table; + width: 100%; +} +.ui.grid > .equal.height.row > .column { + display: table-cell; +} +/*---------------------- + Only (Device) +-----------------------*/ +/* Mobile Only */ +@media only screen and (max-width: 767px) { + .ui.mobile.only.grid, + .ui.grid > .mobile.only.row { + display: block !important; + } + .ui.grid > .row > .mobile.only.column { + display: inline-block !important; + } + .ui.divided.mobile.only.grid, + .ui.celled.mobile.only.grid, + .ui.divided.mobile.only.grid .row, + .ui.celled.mobile.only.grid .row, + .ui.divided.grid .mobile.only.row, + .ui.celled.grid .mobile.only.row, + .ui.grid .mobile.only.equal.height.row, + .ui.mobile.only.grid .equal.height.row { + display: table !important; + } + .ui.divided.grid > .row > .mobile.only.column, + .ui.celled.grid > .row > .mobile.only.column, + .ui.divided.mobile.only.grid > .row > .column, + .ui.celled.mobile.only.grid > .row > .column, + .ui.divided.mobile.only.grid > .column, + .ui.celled.mobile.only.grid > .column { + display: table-cell !important; + } +} +@media only screen and (min-width: 768px) { + .ui.mobile.only.grid, + .ui.grid > .mobile.only.row, + .ui.grid > .mobile.only.column, + .ui.grid > .row > .mobile.only.column { + display: none; + } +} +/* Tablet Only */ +@media only screen and (min-width: 768px) and (max-width: 991px) { + .ui.tablet.only.grid, + .ui.grid > .tablet.only.row { + display: block !important; + } + .ui.grid > .row > .tablet.only.column { + display: inline-block !important; + } + .ui.divided.tablet.only.grid, + .ui.celled.tablet.only.grid, + .ui.divided.tablet.only.grid .row, + .ui.celled.tablet.only.grid .row, + .ui.divided.grid .tablet.only.row, + .ui.celled.grid .tablet.only.row, + .ui.grid .tablet.only.equal.height.row, + .ui.tablet.only.grid .equal.height.row { + display: table !important; + } + .ui.divided.grid > .row > .tablet.only.column, + .ui.celled.grid > .row > .tablet.only.column, + .ui.divided.tablet.only.grid > .row > .column, + .ui.celled.tablet.only.grid > .row > .column, + .ui.divided.tablet.only.grid > .column, + .ui.celled.tablet.only.grid > .column { + display: table-cell !important; + } +} +@media only screen and (max-width: 767px), (min-width: 992px) { + .ui.tablet.only.grid, + .ui.grid > .tablet.only.row, + .ui.grid > .tablet.only.column, + .ui.grid > .row > .tablet.only.column { + display: none; + } +} +/* Computer Only */ +@media only screen and (min-width: 992px) { + .ui.computer.only.grid, + .ui.grid > .computer.only.row { + display: block !important; + } + .ui.grid > .row > .computer.only.column { + display: inline-block !important; + } + .ui.divided.computer.only.grid, + .ui.celled.computer.only.grid, + .ui.divided.computer.only.grid .row, + .ui.celled.computer.only.grid .row, + .ui.divided.grid .computer.only.row, + .ui.celled.grid .computer.only.row, + .ui.grid .computer.only.equal.height.row, + .ui.computer.only.grid .equal.height.row { + display: table !important; + } + .ui.divided.grid > .row > .computer.only.column, + .ui.celled.grid > .row > .computer.only.column, + .ui.divided.computer.only.grid > .row > .column, + .ui.celled.computer.only.grid > .row > .column, + .ui.divided.computer.only.grid > .column, + .ui.celled.computer.only.grid > .column { + display: table-cell !important; + } +} +@media only screen and (max-width: 991px) { + .ui.computer.only.grid, + .ui.grid > .computer.only.row, + .ui.grid > .computer.only.column, + .ui.grid > .row > .computer.only.column { + display: none; + } +} +/*------------------- + Doubling +--------------------*/ +/* Mobily Only */ +@media only screen and (max-width: 767px) { + .ui.two.column.doubling.grid > .row > .column, + .ui.two.column.doubling.grid > .column, + .ui.grid > .two.column.doubling.row > .column { + width: 100%; + } + .ui.three.column.doubling.grid > .row > .column, + .ui.three.column.doubling.grid > .column, + .ui.grid > .three.column.doubling.row > .column { + width: 100%; + } + .ui.four.column.doubling.grid > .row > .column, + .ui.four.column.doubling.grid > .column, + .ui.grid > .four.column.doubling.row > .column { + width: 100%; + } + .ui.five.column.doubling.grid > .row > .column, + .ui.five.column.doubling.grid > .column, + .ui.grid > .five.column.doubling.row > .column { + width: 100%; + } + .ui.six.column.doubling.grid > .row > .column, + .ui.six.column.doubling.grid > .column, + .ui.grid > .six.column.doubling.row > .column { + width: 50%; + } + .ui.seven.column.doubling.grid > .row > .column, + .ui.seven.column.doubling.grid > .column, + .ui.grid > .seven.column.doubling.row > .column { + width: 50%; + } + .ui.eight.column.doubling.grid > .row > .column, + .ui.eight.column.doubling.grid > .column, + .ui.grid > .eight.column.doubling.row > .column { + width: 50%; + } + .ui.nine.column.doubling.grid > .row > .column, + .ui.nine.column.doubling.grid > .column, + .ui.grid > .nine.column.doubling.row > .column { + width: 50%; + } + .ui.ten.column.doubling.grid > .row > .column, + .ui.ten.column.doubling.grid > .column, + .ui.grid > .ten.column.doubling.row > .column { + width: 50%; + } + .ui.twelve.column.doubling.grid > .row > .column, + .ui.twelve.column.doubling.grid > .column, + .ui.grid > .twelve.column.doubling.row > .column { + width: 33.3333333333333%; + } + .ui.fourteen.column.doubling.grid > .row > .column, + .ui.fourteen.column.doubling.grid > .column, + .ui.grid > .fourteen.column.doubling.row > .column { + width: 33.3333333333333%; + } + .ui.sixteen.column.doubling.grid > .row > .column, + .ui.sixteen.column.doubling.grid > .column, + .ui.grid > .sixteen.column.doubling.row > .column { + width: 25%; + } +} +/* Tablet Only */ +@media only screen and (min-width: 768px) and (max-width: 991px) { + .ui.two.column.doubling.grid > .row > .column, + .ui.two.column.doubling.grid > .column, + .ui.grid > .two.column.doubling.row > .column { + width: 100%; + } + .ui.three.column.doubling.grid > .row > .column, + .ui.three.column.doubling.grid > .column, + .ui.grid > .three.column.doubling.row > .column { + width: 50%; + } + .ui.four.column.doubling.grid > .row > .column, + .ui.four.column.doubling.grid > .column, + .ui.grid > .four.column.doubling.row > .column { + width: 50%; + } + .ui.five.column.doubling.grid > .row > .column, + .ui.five.column.doubling.grid > .column, + .ui.grid > .five.column.doubling.row > .column { + width: 33.3333333%; + } + .ui.six.column.doubling.grid > .row > .column, + .ui.six.column.doubling.grid > .column, + .ui.grid > .six.column.doubling.row > .column { + width: 33.3333333%; + } + .ui.eight.column.doubling.grid > .row > .column, + .ui.eight.column.doubling.grid > .column, + .ui.grid > .eight.column.doubling.row > .column { + width: 33.3333333%; + } + .ui.eight.column.doubling.grid > .row > .column, + .ui.eight.column.doubling.grid > .column, + .ui.grid > .eight.column.doubling.row > .column { + width: 25%; + } + .ui.nine.column.doubling.grid > .row > .column, + .ui.nine.column.doubling.grid > .column, + .ui.grid > .nine.column.doubling.row > .column { + width: 25%; + } + .ui.ten.column.doubling.grid > .row > .column, + .ui.ten.column.doubling.grid > .column, + .ui.grid > .ten.column.doubling.row > .column { + width: 20%; + } + .ui.twelve.column.doubling.grid > .row > .column, + .ui.twelve.column.doubling.grid > .column, + .ui.grid > .twelve.column.doubling.row > .column { + width: 16.6666666%; + } + .ui.fourteen.column.doubling.grid > .row > .column, + .ui.fourteen.column.doubling.grid > .column, + .ui.grid > .fourteen.column.doubling.row > .column { + width: 14.28571428571429%; + } + .ui.sixteen.column.doubling.grid > .row > .column, + .ui.sixteen.column.doubling.grid > .column, + .ui.grid > .sixteen.column.doubling.row > .column { + width: 12.5%; + } +} +/*------------------- + Stackable +--------------------*/ +@media only screen and (max-width: 767px) { + .ui.stackable.grid { + display: block !important; + padding: 0em; + margin: 0em; + } + .ui.stackable.grid > .row > .column, + .ui.stackable.grid > .column { + display: block !important; + width: auto !important; + margin: 1em 0em 0em !important; + padding: 1em 0em 0em !important; + -webkit-box-shadow: none !important; + box-shadow: none !important; + } + .ui.stackable.divided.grid .column, + .ui.stackable.celled.grid .column { + border-top: 1px dotted rgba(0, 0, 0, 0.1); + } + .ui.stackable.grid > .row:first-child > .column:first-child, + .ui.stackable.grid > .column:first-child { + margin-top: 0em !important; + padding-top: 0em !important; + } + .ui.stackable.divided.grid > .row:first-child > .column:first-child, + .ui.stackable.celled.grid > .row:first-child > .column:first-child, + .ui.stackable.divided.grid > .column:first-child, + .ui.stackable.celled.grid > .column:first-child { + border-top: none !important; + } + .ui.stackable.page.grid > .row > .column, + .ui.stackable.page.grid > .column { + padding-left: 1em !important; + padding-right: 1em !important; + } + /* Remove pointers from vertical menus */ + .ui.stackable.grid .vertical.pointing.menu .item:after { + display: none; + } +} + +/* + * # Semantic - Menu + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Standard +*******************************/ +/*-------------- + Menu +---------------*/ +.ui.menu { + margin: 1rem 0rem; + background-color: #FFFFFF; + font-size: 0px; + font-weight: normal; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); + border-radius: 0.1875rem; +} +.ui.menu:first-child { + margin-top: 0rem; +} +.ui.menu:last-child { + margin-bottom: 0rem; +} +.ui.menu:after { + content: "."; + display: block; + height: 0; + clear: both; + visibility: hidden; +} +.ui.menu > .item:first-child { + border-radius: 0.1875em 0px 0px 0.1875em; +} +.ui.menu > .item:last-child { + border-radius: 0px 0.1875em 0.1875em 0px; +} +.ui.menu .item { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + vertical-align: middle; + line-height: 1; + text-decoration: none; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + -webkit-transition: opacity 0.2s ease, background 0.2s ease, -webkit-box-shadow 0.2s ease; + -moz-transition: opacity 0.2s ease, background 0.2s ease, box-shadow 0.2s ease; + transition: opacity 0.2s ease, background 0.2s ease, box-shadow 0.2s ease; +} +/*-------------- + Colors +---------------*/ +/* Text Color */ +.ui.menu .item, +.ui.menu .item > a:not(.button) { + color: rgba(0, 0, 0, 0.75); +} +.ui.menu .item .item, +.ui.menu .item .item > a:not(.button) { + color: rgba(30, 30, 30, 0.7); +} +.ui.menu .item .item .item, +.ui.menu .item .item .item > a:not(.button) { + color: rgba(30, 30, 30, 0.6); +} +.ui.menu .dropdown .menu .item, +.ui.menu .dropdown .menu .item a:not(.button) { + color: rgba(0, 0, 0, 0.75); +} +/* Hover */ +.ui.menu .item .menu a.item:hover, +.ui.menu .item .menu .link.item:hover { + color: rgba(0, 0, 0, 0.85); +} +.ui.menu .dropdown .menu .item a:not(.button):hover { + color: rgba(0, 0, 0, 0.85); +} +/* Active */ +.ui.menu .active.item, +.ui.menu .active.item a:not(.button) { + color: rgba(0, 0, 0, 0.85); + border-radius: 0px; +} +/*-------------- + Items +---------------*/ +.ui.menu .item { + position: relative; + display: inline-block; + padding: 0.83em 0.95em; + border-top: 0em solid rgba(0, 0, 0, 0); + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + -moz-user-select: -moz-none; + -khtml-user-select: none; + -webkit-user-select: none; + -ms-user-select: none; + user-select: none; +} +.ui.menu .menu { + margin: 0em; +} +.ui.menu .item.left, +.ui.menu .menu.left { + float: left; +} +.ui.menu .item.right, +.ui.menu .menu.right { + float: right; +} +/*-------------- + Borders +---------------*/ +.ui.menu .item:before { + position: absolute; + content: ''; + top: 0%; + left: 0px; + width: 1px; + height: 100%; + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.05)), color-stop(50%, rgba(0, 0, 0, 0.1)), to(rgba(0, 0, 0, 0.05))); + background-image: -webkit-linear-gradient(rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.1) 50%, rgba(0, 0, 0, 0.05) 100%); + background-image: -moz-linear-gradient(rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.1) 50%, rgba(0, 0, 0, 0.05) 100%); + background-image: linear-gradient(rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.1) 50%, rgba(0, 0, 0, 0.05) 100%); +} +.ui.menu > .menu:not(.right):first-child > .item:first-child:before, +.ui.menu .item:first-child:before { + display: none; +} +.ui.menu .menu.right .item:before, +.ui.menu .item.right:before { + right: auto; + left: 0px; +} +/*-------------- + Text Content +---------------*/ +.ui.menu .text.item > *, +.ui.menu .item > p:only-child { + -webkit-user-select: text; + -moz-user-select: text; + -ms-user-select: text; + user-select: text; + line-height: 1.3; + color: rgba(0, 0, 0, 0.6); +} +.ui.menu .item > p:first-child { + margin-top: 0px; +} +.ui.menu .item > p:last-child { + margin-bottom: 0px; +} +/*-------------- + Button +---------------*/ +.ui.menu:not(.vertical) .item > .button { + position: relative; + top: -0.05em; + margin: -0.55em 0; + padding-bottom: 0.55em; + padding-top: 0.55em; + font-size: 0.875em; +} +/*-------------- + Inputs +---------------*/ +.ui.menu:not(.vertical) .item > .input { + margin-top: -0.85em; + margin-bottom: -0.85em; + padding-top: 0.3em; + padding-bottom: 0.3em; + width: 100%; + vertical-align: top; +} +.ui.menu .item > .input input { + padding-top: 0.35em; + padding-bottom: 0.35em; +} +.ui.vertical.menu .item > .input input { + margin: 0em; + padding-top: 0.63em; + padding-bottom: 0.63em; +} +/* Action Input */ +.ui.menu:not(.vertical) .item > .button.labeled > .icon { + padding-top: 0.6em; +} +.ui.menu:not(.vertical) .item .action.input > .button { + font-size: 0.8em; + padding: 0.55em 0.8em; +} +/* Resizes */ +.ui.small.menu:not(.vertical) .item > .input input { + padding-top: 0.4em; + padding-bottom: 0.4em; +} +.ui.large.menu:not(.vertical) .item > .input input { + top: -0.125em; + padding-bottom: 0.6em; + padding-top: 0.6em; +} +.ui.large.menu:not(.vertical) .item .action.input > .button { + font-size: 0.8em; + padding: 0.9em; +} +.ui.large.menu:not(.vertical) .item .action.input > .button > .icon { + padding-top: 0.8em; +} +/*-------------- + Header +---------------*/ +.ui.menu .header.item { + background-color: rgba(0, 0, 0, 0.04); + margin: 0em; +} +.ui.vertical.menu .header.item { + font-weight: bold; +} +/*-------------- + Dropdowns +---------------*/ +.ui.menu .dropdown .menu .item .icon { + float: none; + margin: 0em 0.75em 0em 0em; +} +.ui.menu .dropdown.item .menu { + left: 1px; + margin: 0px; + min-width: -webkit-calc(99%); + min-width: -moz-calc(99%); + min-width: calc(99%); + -webkit-box-shadow: 0 1px 1px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0 1px 1px 1px rgba(0, 0, 0, 0.1); +} +.ui.secondary.menu .dropdown.item .menu { + left: 0px; + min-width: 100%; +} +.ui.menu .pointing.dropdown.item .menu { + margin-top: 0.75em; +} +.ui.menu .simple.dropdown.item .menu { + margin: 0px !important; +} +.ui.menu .dropdown.item .menu .item { + width: 100%; + color: rgba(0, 0, 0, 0.75); +} +.ui.menu .dropdown.item .menu .active.item { + -webkit-box-shadow: none !important; + box-shadow: none !important; +} +.ui.menu .ui.dropdown .menu .item:before { + display: none; +} +/*-------------- + Labels +---------------*/ +.ui.menu .item > .label { + background-color: rgba(0, 0, 0, 0.35); + color: #FFFFFF; + margin: -0.15em 0em -0.15em 0.5em; + padding: 0.3em 0.8em; + vertical-align: baseline; +} +.ui.menu .item > .floating.label { + padding: 0.3em 0.8em; +} +/*-------------- + Images +---------------*/ +.ui.menu .item > img:only-child { + display: block; + max-width: 100%; + margin: 0em auto; +} +/******************************* + States +*******************************/ +/*-------------- + Hover +---------------*/ +.ui.link.menu .item:hover, +.ui.menu .link.item:hover, +.ui.menu a.item:hover, +.ui.menu .ui.dropdown .menu .item:hover { + cursor: pointer; + background-color: rgba(0, 0, 0, 0.02); +} +.ui.menu .ui.dropdown.item.active { + background-color: rgba(0, 0, 0, 0.02); + -webkit-box-shadow: none; + box-shadow: none; + -moz-border-bottom-right-radius: 0em; + border-bottom-right-radius: 0em; + -moz-border-bottom-left-radius: 0em; + border-bottom-left-radius: 0em; +} +/*-------------- + Down +---------------*/ +.ui.link.menu .item:active, +.ui.menu .link.item:active, +.ui.menu a.item:active, +.ui.menu .ui.dropdown .menu .item:active { + background-color: rgba(0, 0, 0, 0.05); +} +/*-------------- + Active +---------------*/ +.ui.menu .active.item { + background-color: rgba(0, 0, 0, 0.01); + color: rgba(0, 0, 0, 0.95); + -webkit-box-shadow: 0em 0.2em 0em inset; + box-shadow: 0em 0.2em 0em inset; +} +.ui.vertical.menu .active.item { + border-radius: 0em; + -webkit-box-shadow: 0.2em 0em 0em inset; + box-shadow: 0.2em 0em 0em inset; +} +.ui.vertical.menu > .active.item:first-child { + border-radius: 0em 0.1875em 0em 0em; +} +.ui.vertical.menu > .active.item:last-child { + border-radius: 0em 0em 0.1875em 0em; +} +.ui.vertical.menu > .active.item:only-child { + border-radius: 0em 0.1875em 0.1875em 0em; +} +.ui.vertical.menu .active.item .menu .active.item { + border-left: none; +} +.ui.vertical.menu .active.item .menu .active.item { + padding-left: 1.5rem; +} +.ui.vertical.menu .item .menu .active.item { + background-color: rgba(0, 0, 0, 0.03); + -webkit-box-shadow: none; + box-shadow: none; +} +/*-------------- + Disabled +---------------*/ +.ui.menu .item.disabled, +.ui.menu .item.disabled:hover { + cursor: default; + color: rgba(0, 0, 0, 0.2); + background-color: transparent !important; +} +/*-------------------- + Loading +---------------------*/ +/* On Form */ +.ui.menu.loading { + position: relative; +} +.ui.menu.loading:after { + position: absolute; + top: 0%; + left: 0%; + content: ''; + width: 100%; + height: 100%; + background: rgba(255, 255, 255, 0.8) url(../images/loader-large.gif) no-repeat 50% 50%; + visibility: visible; +} +/******************************* + Types +*******************************/ +/*-------------- + Vertical +---------------*/ +.ui.vertical.menu .item { + display: block; + height: auto !important; + border-top: none; + border-left: 0em solid rgba(0, 0, 0, 0); + border-right: none; +} +.ui.vertical.menu > .item:first-child { + border-radius: 0.1875em 0.1875em 0px 0px; +} +.ui.vertical.menu > .item:last-child { + border-radius: 0px 0px 0.1875em 0.1875em; +} +.ui.vertical.menu .item > .label { + float: right; + text-align: center; +} +.ui.vertical.menu .item > i.icon { + float: right; + width: 1.22em; + margin: 0em 0em 0em 0.5em; +} +.ui.vertical.menu .item > .label + i.icon { + float: none; + margin: 0em 0.25em 0em 0em; +} +/*--- Border ---*/ +.ui.vertical.menu .item:before { + position: absolute; + content: ''; + top: 0%; + left: 0px; + width: 100%; + height: 1px; + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.03) 0%, rgba(0, 0, 0, 0.1) 1.5em, rgba(0, 0, 0, 0.03) 100%); + background-image: -moz-linear-gradient(left, rgba(0, 0, 0, 0.03) 0%, rgba(0, 0, 0, 0.1) 1.5em, rgba(0, 0, 0, 0.03) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.03)), color-stop(1.5em, rgba(0, 0, 0, 0.1)), to(rgba(0, 0, 0, 0.03))); + background-image: linear-gradient(to right, rgba(0, 0, 0, 0.03) 0%, rgba(0, 0, 0, 0.1) 1.5em, rgba(0, 0, 0, 0.03) 100%); +} +.ui.vertical.menu .item:first-child:before { + background-image: none !important; +} +/*--- Dropdown ---*/ +.ui.vertical.menu .dropdown.item > i { + float: right; + content: "\f0da"; +} +.ui.vertical.menu .dropdown.item .menu { + top: 0% !important; + left: 100%; + margin: 0px 0px 0px 1px; + -webkit-box-shadow: 0 0px 1px 1px #DDDDDD; + box-shadow: 0 0px 1px 1px #DDDDDD; +} +.ui.vertical.menu .dropdown.item.active { + border-top-right-radius: 0em; + border-bottom-right-radius: 0em; +} +.ui.vertical.menu .dropdown.item .menu .item { + font-size: 1rem; +} +.ui.vertical.menu .dropdown.item .menu .item i.icon { + margin-right: 0em; +} +.ui.vertical.menu .dropdown.item.active { + -webkit-box-shadow: none; + box-shadow: none; +} +/*--- Sub Menu ---*/ +.ui.vertical.menu .item > .menu { + margin: 0.5em -0.95em 0em; +} +.ui.vertical.menu .item > .menu > .item { + padding: 0.5rem 1.5rem; + font-size: 0.875em; +} +.ui.vertical.menu .item > .menu > .item:before { + display: none; +} +/*-------------- + Tiered +---------------*/ +.ui.tiered.menu > .sub.menu > .item { + color: rgba(0, 0, 0, 0.4); +} +.ui.tiered.menu > .menu > .item:hover { + color: rgba(0, 0, 0, 0.8); +} +.ui.tiered.menu .item.active { + color: rgba(0, 0, 0, 0.8); +} +.ui.tiered.menu > .menu .item.active:after { + position: absolute; + content: ''; + margin-top: -1px; + top: 100%; + left: 0px; + width: 100%; + height: 2px; + background-color: #FBFBFB; +} +.ui.tiered.menu .sub.menu { + background-color: rgba(0, 0, 0, 0.01); + border-radius: 0em; + border-top: 1px solid rgba(0, 0, 0, 0.1); + -webkit-box-shadow: none; + box-shadow: none; + color: #FFFFFF; +} +.ui.tiered.menu .sub.menu .item { + font-size: 0.875rem; +} +.ui.tiered.menu .sub.menu .item:before { + background-image: none; +} +.ui.tiered.menu .sub.menu .active.item { + padding-top: 0.83em; + background-color: transparent; + border-radius: 0 0 0 0; + border-top: medium none; + -webkit-box-shadow: none; + box-shadow: none; + color: rgba(0, 0, 0, 0.7) !important; +} +.ui.tiered.menu .sub.menu .active.item:after { + display: none; +} +/* Inverted */ +.ui.inverted.tiered.menu > .menu > .item { + color: rgba(255, 255, 255, 0.5); +} +.ui.inverted.tiered.menu .sub.menu { + background-color: rgba(0, 0, 0, 0.2); +} +.ui.inverted.tiered.menu .sub.menu .item { + color: rgba(255, 255, 255, 0.6); +} +.ui.inverted.tiered.menu > .menu > .item:hover { + color: rgba(255, 255, 255, 0.9); +} +.ui.inverted.tiered.menu .active.item:after { + display: none; +} +.ui.inverted.tiered.menu > .sub.menu > .active.item, +.ui.inverted.tiered.menu > .menu > .active.item { + color: #ffffff !important; + -webkit-box-shadow: none; + box-shadow: none; +} +/* Tiered pointing */ +.ui.pointing.tiered.menu > .menu > .item:after { + display: none; +} +.ui.pointing.tiered.menu > .sub.menu > .item:after { + display: block; +} +/*-------------- + Tabular +---------------*/ +.ui.tabular.menu { + background-color: transparent; + border-bottom: 1px solid #DCDDDE; + border-radius: 0em; + -webkit-box-shadow: none !important; + box-shadow: none !important; +} +.ui.tabular.menu .item { + background-color: transparent; + border-left: 1px solid transparent; + border-right: 1px solid transparent; + border-top: 1px solid transparent; + padding-left: 1.4em; + padding-right: 1.4em; + color: rgba(0, 0, 0, 0.6); +} +.ui.tabular.menu .item:before { + display: none; +} +/* Hover */ +.ui.tabular.menu .item:hover { + background-color: transparent; + color: rgba(0, 0, 0, 0.8); +} +/* Active */ +.ui.tabular.menu .active.item { + position: relative; + background-color: #FFFFFF; + color: rgba(0, 0, 0, 0.8); + border-color: #DCDDDE; + font-weight: bold; + margin-bottom: -1px; + border-bottom: 1px solid #FFFFFF; + -webkit-box-shadow: none; + box-shadow: none; + border-radius: 5px 5px 0 0; +} +/* Coupling with segment for attachment */ +.ui.attached.tabular.menu { + position: relative; + z-index: 2; +} +.ui.tabular.menu ~ .bottom.attached.segment { + margin: 1px 0px 0px 1px; +} +/*-------------- + Pagination +---------------*/ +.ui.pagination.menu { + margin: 0em; + display: inline-block; + vertical-align: middle; +} +.ui.pagination.menu .item { + min-width: 3em; + text-align: center; +} +.ui.pagination.menu .icon.item i.icon { + vertical-align: top; +} +.ui.pagination.menu.floated { + display: block; +} +/* active */ +.ui.pagination.menu .active.item { + border-top: none; + padding-top: 0.83em; + background-color: rgba(0, 0, 0, 0.05); + -webkit-box-shadow: none; + box-shadow: none; +} +/*-------------- + Secondary +---------------*/ +.ui.secondary.menu { + background-color: transparent; + border-radius: 0px; + -webkit-box-shadow: none; + box-shadow: none; +} +.ui.secondary.menu > .menu > .item, +.ui.secondary.menu > .item { + -webkit-box-shadow: none; + box-shadow: none; + border: none; + height: auto !important; + margin: 0em 0.25em; + padding: 0.5em 1em; + border-radius: 0.3125em; +} +.ui.secondary.menu > .menu > .item:before, +.ui.secondary.menu > .item:before { + display: none !important; +} +.ui.secondary.menu .item > .input input { + background-color: transparent; + border: none; +} +.ui.secondary.menu .link.item, +.ui.secondary.menu a.item { + opacity: 0.8; + -webkit-transition: none; + -moz-transition: none; + transition: none; +} +.ui.secondary.menu .header.item { + border-right: 0.1em solid rgba(0, 0, 0, 0.1); + background-color: transparent; + border-radius: 0em; +} +/* hover */ +.ui.secondary.menu .link.item:hover, +.ui.secondary.menu a.item:hover { + opacity: 1; +} +/* active */ +.ui.secondary.menu > .menu > .active.item, +.ui.secondary.menu > .active.item { + background-color: rgba(0, 0, 0, 0.08); + opacity: 1; + -webkit-box-shadow: none; + box-shadow: none; +} +.ui.secondary.vertical.menu > .active.item { + border-radius: 0.3125em; +} +/* inverted */ +.ui.secondary.inverted.menu .link.item, +.ui.secondary.inverted.menu a.item { + color: rgba(255, 255, 255, 0.5); +} +.ui.secondary.inverted.menu .link.item:hover, +.ui.secondary.inverted.menu a.item:hover { + color: rgba(255, 255, 255, 0.9); +} +.ui.secondary.inverted.menu .active.item { + background-color: rgba(255, 255, 255, 0.1); +} +/* disable variations */ +.ui.secondary.item.menu > .item { + margin: 0em; +} +.ui.secondary.attached.menu { + -webkit-box-shadow: none; + box-shadow: none; +} +/*--------------------- + Secondary Pointing +-----------------------*/ +.ui.secondary.pointing.menu { + border-bottom: 3px solid rgba(0, 0, 0, 0.1); +} +.ui.secondary.pointing.menu > .menu > .item, +.ui.secondary.pointing.menu > .item { + margin: 0em 0em -3px; + padding: 0.6em 0.95em; + border-bottom: 3px solid rgba(0, 0, 0, 0); + border-radius: 0em; + -webkit-transition: color 0.2s + ; + -moz-transition: color 0.2s + ; + transition: color 0.2s + ; +} +/* Item Types */ +.ui.secondary.pointing.menu .header.item { + margin-bottom: -3px; + background-color: transparent !important; + border-right-width: 0px !important; + font-weight: bold !important; + color: rgba(0, 0, 0, 0.8) !important; +} +.ui.secondary.pointing.menu .text.item { + -webkit-box-shadow: none !important; + box-shadow: none !important; +} +.ui.secondary.pointing.menu > .menu > .item:after, +.ui.secondary.pointing.menu > .item:after { + display: none; +} +/* Hover */ +.ui.secondary.pointing.menu > .menu > .link.item:hover, +.ui.secondary.pointing.menu > .link.item:hover, +.ui.secondary.pointing.menu > .menu > a.item:hover, +.ui.secondary.pointing.menu > a.item:hover { + background-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +/* Down */ +.ui.secondary.pointing.menu > .menu > .link.item:active, +.ui.secondary.pointing.menu > .link.item:active, +.ui.secondary.pointing.menu > .menu > a.item:active, +.ui.secondary.pointing.menu > a.item:active { + background-color: transparent; + border-color: rgba(0, 0, 0, 0.2); +} +/* Active */ +.ui.secondary.pointing.menu > .menu > .item.active, +.ui.secondary.pointing.menu > .item.active { + background-color: transparent; + border-color: rgba(0, 0, 0, 0.4); + -webkit-box-shadow: none; + box-shadow: none; +} +/*--------------------- + Secondary Vertical +-----------------------*/ +.ui.secondary.vertical.pointing.menu { + border: none; + border-right: 3px solid rgba(0, 0, 0, 0.1); +} +.ui.secondary.vertical.menu > .item { + border: none; + margin: 0em 0em 0.3em; + padding: 0.6em 0.8em; + border-radius: 0.1875em; +} +.ui.secondary.vertical.menu > .header.item { + border-radius: 0em; +} +.ui.secondary.vertical.pointing.menu > .item { + margin: 0em -3px 0em 0em; + border-bottom: none; + border-right: 3px solid transparent; + border-radius: 0em; +} +/* Hover */ +.ui.secondary.vertical.pointing.menu > .item:hover { + background-color: transparent; + color: rgba(0, 0, 0, 0.7); +} +/* Down */ +.ui.secondary.vertical.pointing.menu > .item:active { + background-color: transparent; + border-color: rgba(0, 0, 0, 0.2); +} +/* Active */ +.ui.secondary.vertical.pointing.menu > .item.active { + background-color: transparent; + border-color: rgba(0, 0, 0, 0.4); + color: rgba(0, 0, 0, 0.85); +} +/*-------------- + Inverted +---------------*/ +.ui.secondary.inverted.menu { + background-color: transparent; +} +.ui.secondary.inverted.pointing.menu { + border-bottom: 3px solid rgba(255, 255, 255, 0.1); +} +.ui.secondary.inverted.pointing.menu > .item { + color: rgba(255, 255, 255, 0.7); +} +.ui.secondary.inverted.pointing.menu > .header.item { + color: #FFFFFF !important; +} +/* Hover */ +.ui.secondary.inverted.pointing.menu > .menu > .item:hover, +.ui.secondary.inverted.pointing.menu > .item:hover { + color: rgba(255, 255, 255, 0.85); +} +/* Down */ +.ui.secondary.inverted.pointing.menu > .menu > .item:active, +.ui.secondary.inverted.pointing.menu > .item:active { + border-color: rgba(255, 255, 255, 0.4); +} +/* Active */ +.ui.secondary.inverted.pointing.menu > .menu > .item.active, +.ui.secondary.inverted.pointing.menu > .item.active { + border-color: rgba(255, 255, 255, 0.8); + color: #ffffff; +} +/*--------------------- + Inverted Vertical +----------------------*/ +.ui.secondary.inverted.vertical.pointing.menu { + border-right: 3px solid rgba(255, 255, 255, 0.1); + border-bottom: none; +} +/*-------------- + Text Menu +---------------*/ +.ui.text.menu { + background-color: transparent; + margin: 1rem -1rem; + border-radius: 0px; + -webkit-box-shadow: none; + box-shadow: none; +} +.ui.text.menu > .item { + opacity: 0.8; + margin: 0em 1em; + padding: 0em; + height: auto !important; + border-radius: 0px; + -webkit-box-shadow: none; + box-shadow: none; + -webkit-transition: opacity 0.2s ease + ; + -moz-transition: opacity 0.2s ease + ; + transition: opacity 0.2s ease + ; +} +.ui.text.menu > .item:before { + display: none !important; +} +.ui.text.menu .header.item { + background-color: transparent; + opacity: 1; + color: rgba(50, 50, 50, 0.8); + font-size: 0.875rem; + padding: 0em; + text-transform: uppercase; + font-weight: bold; +} +/*--- fluid text ---*/ +.ui.text.item.menu .item { + margin: 0em; +} +/*--- vertical text ---*/ +.ui.vertical.text.menu { + margin: 1rem 0em; +} +.ui.vertical.text.menu:first-child { + margin-top: 0rem; +} +.ui.vertical.text.menu:last-child { + margin-bottom: 0rem; +} +.ui.vertical.text.menu .item { + float: left; + clear: left; + margin: 0.5em 0em; +} +.ui.vertical.text.menu .item > i.icon { + float: none; + margin: 0em 0.83em 0em 0em; +} +.ui.vertical.text.menu .header.item { + margin: 0.8em 0em; +} +/*--- hover ---*/ +.ui.text.menu .item:hover { + opacity: 1; + background-color: transparent; +} +/*--- active ---*/ +.ui.text.menu .active.item { + background-color: transparent; + padding: 0em; + border: none; + opacity: 1; + font-weight: bold; + -webkit-box-shadow: none; + box-shadow: none; +} +/* disable variations */ +.ui.text.pointing.menu .active.item:after { + -webkit-box-shadow: none; + box-shadow: none; +} +.ui.text.attached.menu { + -webkit-box-shadow: none; + box-shadow: none; +} +.ui.inverted.text.menu, +.ui.inverted.text.menu .item, +.ui.inverted.text.menu .item:hover, +.ui.inverted.text.menu .item.active { + background-color: transparent; +} +/*-------------- + Icon Only +---------------*/ +.ui.icon.menu, +.ui.vertical.icon.menu { + width: auto; + display: inline-block; + height: auto; +} +.ui.icon.menu > .item { + height: auto; + text-align: center; + color: rgba(60, 60, 60, 0.7); +} +.ui.icon.menu > .item > .icon { + display: block; + float: none !important; + opacity: 1; + margin: 0em auto !important; +} +.ui.icon.menu .icon:before { + opacity: 1; +} +/* Item Icon Only */ +.ui.menu .icon.item .icon { + margin: 0em; +} +.ui.vertical.icon.menu { + float: none; +} +/*--- inverted ---*/ +.ui.inverted.icon.menu .item { + color: rgba(255, 255, 255, 0.8); +} +.ui.inverted.icon.menu .icon { + color: #ffffff; +} +/*-------------- + Labeled Icon +---------------*/ +.ui.labeled.icon.menu { + text-align: center; +} +.ui.labeled.icon.menu > .item > .icon { + display: block; + font-size: 1.5em !important; + margin: 0em auto 0.3em !important; +} +/******************************* + Variations +*******************************/ +/*-------------- + Colors +---------------*/ +/*--- Light Colors ---*/ +.ui.menu .green.active.item, +.ui.green.menu .active.item { + border-color: #A1CF64 !important; + color: #A1CF64 !important; +} +.ui.menu .red.active.item, +.ui.red.menu .active.item { + border-color: #D95C5C !important; + color: #D95C5C !important; +} +.ui.menu .blue.active.item, +.ui.blue.menu .active.item { + border-color: #6ECFF5 !important; + color: #6ECFF5 !important; +} +.ui.menu .purple.active.item, +.ui.purple.menu .active.item { + border-color: #564F8A !important; + color: #564F8A !important; +} +.ui.menu .orange.active.item, +.ui.orange.menu .active.item { + border-color: #F05940 !important; + color: #F05940 !important; +} +.ui.menu .teal.active.item, +.ui.teal.menu .active.item { + border-color: #00B5AD !important; + color: #00B5AD !important; +} +/*-------------- + Inverted +---------------*/ +.ui.inverted.menu { + background-color: #333333; + -webkit-box-shadow: none; + box-shadow: none; +} +.ui.inverted.menu .header.item { + margin: 0em; + background-color: rgba(0, 0, 0, 0.3); + -webkit-box-shadow: none; + box-shadow: none; +} +.ui.inverted.menu .item, +.ui.inverted.menu .item > a { + color: #FFFFFF; +} +.ui.inverted.menu .item .item, +.ui.inverted.menu .item .item > a { + color: rgba(255, 255, 255, 0.8); +} +.ui.inverted.menu .dropdown .menu .item, +.ui.inverted.menu .dropdown .menu .item a { + color: rgba(0, 0, 0, 0.75) !important; +} +.ui.inverted.menu .item.disabled, +.ui.inverted.menu .item.disabled:hover { + color: rgba(255, 255, 255, 0.2); +} +/*--- Border ---*/ +.ui.inverted.menu .item:before { + background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0.03) 100%); + background-image: -moz-linear-gradient(rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0.03) 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.03)), color-stop(50%, rgba(255, 255, 255, 0.1)), to(rgba(255, 255, 255, 0.03))); + background-image: linear-gradient(rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0.03) 100%); +} +.ui.vertical.inverted.menu .item:before { + background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0.03) 100%); + background-image: -moz-linear-gradient(left, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0.03) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0.03)), color-stop(50%, rgba(255, 255, 255, 0.1)), to(rgba(255, 255, 255, 0.03))); + background-image: linear-gradient(to right, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0.03) 100%); +} +/*--- Hover ---*/ +.ui.link.inverted.menu .item:hover, +.ui.inverted.menu .link.item:hover, +.ui.inverted.menu a.item:hover, +.ui.inverted.menu .dropdown.item:hover { + background-color: rgba(255, 255, 255, 0.1); +} +.ui.inverted.menu a.item:hover, +.ui.inverted.menu .item > a:hover, +.ui.inverted.menu .item .menu a.item:hover, +.ui.inverted.menu .item .menu .link.item:hover { + color: #ffffff; +} +/*--- Down ---*/ +.ui.inverted.menu a.item:active, +.ui.inverted.menu .dropdown.item:active, +.ui.inverted.menu .link.item:active, +.ui.inverted.menu a.item:active { + background-color: rgba(255, 255, 255, 0.15); +} +/*--- Active ---*/ +.ui.inverted.menu .active.item { + -webkit-box-shadow: none !important; + box-shadow: none !important; + background-color: rgba(255, 255, 255, 0.2); +} +.ui.inverted.menu .active.item, +.ui.inverted.menu .active.item a { + color: #ffffff !important; +} +.ui.inverted.vertical.menu .item .menu .active.item { + background-color: rgba(255, 255, 255, 0.2); + color: #ffffff; +} +/*--- Pointers ---*/ +.ui.inverted.pointing.menu .active.item:after { + background-color: #5B5B5B; + -webkit-box-shadow: none; + box-shadow: none; +} +.ui.inverted.pointing.menu .active.item:hover:after { + background-color: #4A4A4A; +} +/*-------------- + Selection +---------------*/ +.ui.selection.menu > .item { + color: rgba(0, 0, 0, 0.4); +} +.ui.selection.menu > .item:hover { + color: rgba(0, 0, 0, 0.6); +} +.ui.selection.menu > .item.active { + color: rgba(0, 0, 0, 0.85); +} +.ui.inverted.selection.menu > .item { + color: rgba(255, 255, 255, 0.4); +} +.ui.inverted.selection.menu > .item:hover { + color: rgba(255, 255, 255, 0.9); +} +.ui.inverted.selection.menu > .item.active { + color: #FFFFFF; +} +/*-------------- + Floated +---------------*/ +.ui.floated.menu { + float: left; + margin: 0rem 0.5rem 0rem 0rem; +} +.ui.right.floated.menu { + float: right; + margin: 0rem 0rem 0rem 0.5rem; +} +/*-------------- + Inverted Colors +---------------*/ +/*--- Light Colors ---*/ +.ui.grey.menu { + background-color: #F0F0F0; +} +/*--- Inverted Colors ---*/ +.ui.inverted.green.menu { + background-color: #A1CF64; +} +.ui.inverted.green.pointing.menu .active.item:after { + background-color: #A1CF64; +} +.ui.inverted.red.menu { + background-color: #D95C5C; +} +.ui.inverted.red.pointing.menu .active.item:after { + background-color: #F16883; +} +.ui.inverted.blue.menu { + background-color: #6ECFF5; +} +.ui.inverted.blue.pointing.menu .active.item:after { + background-color: #6ECFF5; +} +.ui.inverted.purple.menu { + background-color: #564F8A; +} +.ui.inverted.purple.pointing.menu .active.item:after { + background-color: #564F8A; +} +.ui.inverted.orange.menu { + background-color: #F05940; +} +.ui.inverted.orange.pointing.menu .active.item:after { + background-color: #F05940; +} +.ui.inverted.teal.menu { + background-color: #00B5AD; +} +.ui.inverted.teal.pointing.menu .active.item:after { + background-color: #00B5AD; +} +/*-------------- + Fitted +---------------*/ +.ui.fitted.menu .item, +.ui.fitted.menu .item .menu .item, +.ui.menu .fitted.item { + padding: 0em; +} +.ui.horizontally.fitted.menu .item, +.ui.horizontally.fitted.menu .item .menu .item, +.ui.menu .horizontally.fitted.item { + padding-top: 0.83em; + padding-bottom: 0.83em; +} +.ui.vertically.fitted.menu .item, +.ui.vertically.fitted.menu .item .menu .item, +.ui.menu .vertically.fitted.item { + padding-left: 0.95em; + padding-right: 0.95em; +} +/*-------------- + Borderless +---------------*/ +.ui.borderless.menu .item:before, +.ui.borderless.menu .item .menu .item:before, +.ui.menu .borderless.item:before { + background-image: none; +} +/*------------------- + Compact +--------------------*/ +.ui.compact.menu { + display: inline-block; + margin: 0em; + vertical-align: middle; +} +.ui.compact.vertical.menu { + width: auto !important; +} +.ui.compact.vertical.menu .item:last-child::before { + display: block; +} +/*------------------- + Fluid +--------------------*/ +.ui.menu.fluid, +.ui.vertical.menu.fluid { + display: block; + width: 100% !important; +} +/*------------------- + Evenly Sized +--------------------*/ +.ui.item.menu, +.ui.item.menu .item { + width: 100%; + padding-left: 0px !important; + padding-right: 0px !important; + text-align: center; +} +.ui.menu.two.item .item { + width: 50%; +} +.ui.menu.three.item .item { + width: 33.333%; +} +.ui.menu.four.item .item { + width: 25%; +} +.ui.menu.five.item .item { + width: 20%; +} +.ui.menu.six.item .item { + width: 16.666%; +} +.ui.menu.seven.item .item { + width: 14.285%; +} +.ui.menu.eight.item .item { + width: 12.500%; +} +.ui.menu.nine.item .item { + width: 11.11%; +} +.ui.menu.ten.item .item { + width: 10.0%; +} +.ui.menu.eleven.item .item { + width: 9.09%; +} +.ui.menu.twelve.item .item { + width: 8.333%; +} +/*-------------- + Fixed +---------------*/ +.ui.menu.fixed { + position: fixed; + z-index: 999; + margin: 0em; + border: none; + width: 100%; +} +.ui.menu.fixed, +.ui.menu.fixed .item:first-child, +.ui.menu.fixed .item:last-child { + border-radius: 0px !important; +} +.ui.menu.fixed.top { + top: 0px; + left: 0px; + right: auto; + bottom: auto; +} +.ui.menu.fixed.right { + top: 0px; + right: 0px; + left: auto; + bottom: auto; + width: auto; + height: 100%; +} +.ui.menu.fixed.bottom { + bottom: 0px; + left: 0px; + top: auto; + right: auto; +} +.ui.menu.fixed.left { + top: 0px; + left: 0px; + right: auto; + bottom: auto; + width: auto; + height: 100%; +} +/* Coupling with Grid */ +.ui.fixed.menu + .ui.grid { + padding-top: 2.75rem; +} +/*------------------- + Pointing +--------------------*/ +.ui.pointing.menu .active.item:after { + position: absolute; + bottom: -0.3em; + left: 50%; + content: ""; + margin-left: -0.3em; + width: 0.6em; + height: 0.6em; + border: none; + border-bottom: 1px solid rgba(0, 0, 0, 0.1); + border-right: 1px solid rgba(0, 0, 0, 0.1); + background-image: none; + -webkit-transform: rotate(45deg); + -moz-transform: rotate(45deg); + -ms-transform: rotate(45deg); + transform: rotate(45deg); + z-index: 2; + -webkit-transition: background 0.2s ease + ; + -moz-transition: background 0.2s ease + ; + transition: background 0.2s ease + ; +} +/* Don't double up pointers */ +.ui.pointing.menu .active.item .menu .active.item:after { + display: none; +} +.ui.vertical.pointing.menu .active.item:after { + position: absolute; + top: 50%; + margin-top: -0.3em; + right: -0.4em; + bottom: auto; + left: auto; + border: none; + border-top: 1px solid rgba(0, 0, 0, 0.1); + border-right: 1px solid rgba(0, 0, 0, 0.1); +} +/* Colors */ +.ui.pointing.menu .active.item:after { + background-color: #FCFCFC; +} +.ui.pointing.menu .active.item:hover:after { + background-color: #FAFAFA; +} +.ui.vertical.pointing.menu .menu .active.item:after { + background-color: #F4F4F4; +} +.ui.pointing.menu a.active.item:active:after { + background-color: #F0F0F0; +} +/*-------------- + Attached +---------------*/ +.ui.menu.attached { + margin: 0rem; + border-radius: 0px; + /* avoid rgba multiplying */ + -webkit-box-shadow: 0px 0px 0px 1px #DDDDDD; + box-shadow: 0px 0px 0px 1px #DDDDDD; +} +.ui.top.attached.menu { + border-radius: 0.1875em 0.1875em 0px 0px; +} +.ui.menu.bottom.attached { + border-radius: 0px 0px 0.1875em 0.1875em; +} +/*-------------- + Sizes +---------------*/ +.ui.small.menu .item { + font-size: 0.875rem; +} +.ui.small.vertical.menu { + width: 13rem; +} +.ui.menu .item { + font-size: 1rem; +} +.ui.vertical.menu { + width: 15rem; +} +.ui.large.menu .item { + font-size: 1.125rem; +} +.ui.large.menu .item .item { + font-size: 0.875rem; +} +.ui.large.menu .dropdown .item { + font-size: 1rem; +} +.ui.large.vertical.menu { + width: 18rem; +} + +/* + * # Semantic - Message + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Message +*******************************/ +.ui.message { + position: relative; + min-height: 18px; + margin: 1em 0em; + height: auto; + background-color: #EFEFEF; + padding: 1em; + line-height: 1.33; + color: rgba(0, 0, 0, 0.6); + -webkit-transition: opacity 0.1s ease, color 0.1s ease, background 0.1s ease, -webkit-box-shadow 0.1s ease; + -moz-transition: opacity 0.1s ease, color 0.1s ease, background 0.1s ease, box-shadow 0.1s ease; + transition: opacity 0.1s ease, color 0.1s ease, background 0.1s ease, box-shadow 0.1s ease; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + border-radius: 0.325em 0.325em 0.325em 0.325em; +} +.ui.message:first-child { + margin-top: 0em; +} +.ui.message:last-child { + margin-bottom: 0em; +} +/*-------------- + Content +---------------*/ +/* block with headers */ +.ui.message .header { + margin: 0em; + font-size: 1.33em; + font-weight: bold; +} +/* block with paragraphs */ +.ui.message p { + opacity: 0.85; + margin: 1em 0em; +} +.ui.message p:first-child { + margin-top: 0em; +} +.ui.message p:last-child { + margin-bottom: 0em; +} +.ui.message .header + p { + margin-top: 0.3em; +} +.ui.message > :first-child { + margin-top: 0em; +} +.ui.message > :last-child { + margin-bottom: 0em; +} +/* block with child list */ +.ui.message ul.list { + opacity: 0.85; + list-style-position: inside; + margin: 0.2em 0em; + padding: 0em; +} +.ui.message ul.list li { + position: relative; + list-style-type: none; + margin: 0em 0em 0.3em 1em; + padding: 0em; +} +.ui.message ul.list li:before { + position: absolute; + content: '\2022'; + top: -0.05em; + left: -0.8em; + height: 100%; + vertical-align: baseline; + opacity: 0.5; +} +.ui.message ul.list li:first-child { + margin-top: 0em; +} +/* dismissable block */ +.ui.message > .close.icon { + cursor: pointer; + position: absolute; + right: 0em; + top: 0em; + width: 2.5em; + height: 2.5em; + opacity: 0.7; + padding: 0.75em 0em 0em 0.75em; + z-index: 2; + -webkit-transition: opacity 0.1s linear + ; + -moz-transition: opacity 0.1s linear + ; + transition: opacity 0.1s linear + ; + z-index: 10; +} +.ui.message > .close.icon:hover { + opacity: 1; +} +/******************************* + States +*******************************/ +.ui.message.visible { + display: block !important; +} +.ui.icon.message.animating, +.ui.icon.message.visible { + display: table !important; +} +.ui.message.hidden { + display: none !important; +} +/******************************* + Variations +*******************************/ +/*-------------- + Compact +---------------*/ +.ui.compact.message { + display: inline-block; +} +/*-------------- + Attached +---------------*/ +.ui.attached.message { + margin-left: -1px; + margin-right: -1px; + margin-bottom: -1px; + border-radius: 0.325em 0.325em 0em 0em; + -webkit-box-shadow: 0em 0em 0em 1px rgba(0, 0, 0, 0.1) inset; + box-shadow: 0em 0em 0em 1px rgba(0, 0, 0, 0.1) inset; +} +.ui.attached + .ui.attached.message:not(.top):not(.bottom) { + margin-top: -1px; + border-radius: 0em; +} +.ui.bottom.attached.message { + margin-top: -1px; + border-radius: 0em 0em 0.325em 0.325em; +} +.ui.bottom.attached.message:not(:last-child) { + margin-bottom: 1em; +} +.ui.attached.icon.message { + display: block; + width: auto; +} +/*-------------- + Icon +---------------*/ +.ui.icon.message { + display: table; + width: 100%; +} +.ui.icon.message > .icon:not(.close) { + display: table-cell; + vertical-align: middle; + font-size: 3.8em; + opacity: 0.5; +} +.ui.icon.message > .icon + .content { + padding-left: 1em; +} +.ui.icon.message > .content { + display: table-cell; + vertical-align: middle; +} +/*-------------- + Inverted +---------------*/ +.ui.inverted.message { + background-color: rgba(255, 255, 255, 0.05); + color: rgba(255, 255, 255, 0.95); +} +/*-------------- + Floating +---------------*/ +.ui.floating.message { + -webkit-box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1), 0px 0px 0px 1px rgba(0, 0, 0, 0.05) inset; + box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1), 0px 0px 0px 1px rgba(0, 0, 0, 0.05) inset; +} +/*-------------- + Colors +---------------*/ +.ui.black.message { + background-color: #333333; + color: rgba(255, 255, 255, 0.95); +} +/*-------------- + Types +---------------*/ +.ui.blue.message, +.ui.info.message { + background-color: #E6F4F9; + color: #4D8796; +} +/* Green Text Block */ +.ui.green.message { + background-color: #DEFCD5; + color: #52A954; +} +/* Yellow Text Block */ +.ui.yellow.message, +.ui.warning.message { + background-color: #F6F3D5; + color: #96904D; +} +/* Red Text Block */ +.ui.red.message { + background-color: #F1D7D7; + color: #A95252; +} +/* Success Text Block */ +.ui.success.message, +.ui.positive.message { + background-color: #DEFCD5; + color: #52A954; +} +/* Error Text Block */ +.ui.error.message, +.ui.negative.message { + background-color: #F1D7D7; + color: #A95252; +} +/*-------------- + Sizes +---------------*/ +.ui.small.message { + font-size: 0.875em; +} +.ui.message { + font-size: 1em; +} +.ui.large.message { + font-size: 1.125em; +} +.ui.huge.message { + font-size: 1.5em; +} +.ui.massive.message { + font-size: 2em; +} + +/* + * # Semantic - Table + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Table +*******************************/ +/* Prototype */ +.ui.table { + width: 100%; + border-collapse: collapse; +} +/* Table Content */ +.ui.table th, +.ui.table tr, +.ui.table td { + border-collapse: collapse; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + -webkit-transition: all 0.1s ease-out; + -moz-transition: all 0.1s ease-out; + transition: all 0.1s ease-out; +} +/* Headers */ +.ui.table thead { + border-bottom: 1px solid rgba(0, 0, 0, 0.03); +} +.ui.table tfoot th { + background-color: rgba(0, 0, 0, 0.03); +} +.ui.table th { + cursor: auto; + background-color: rgba(0, 0, 0, 0.05); + text-align: left; + color: rgba(0, 0, 0, 0.8); + padding: 0.5em 0.7em; + vertical-align: middle; +} +.ui.table thead th:first-child { + border-radius: 5px 0px 0px 0px; +} +.ui.table thead th:last-child { + border-radius: 0px 5px 0px 0px; +} +.ui.table tfoot th:first-child { + border-radius: 0px 0px 0px 5px; +} +.ui.table tfoot th:last-child { + border-radius: 0px 0px 5px 0px; +} +.ui.table tfoot th:only-child { + border-radius: 0px 0px 5px 5px; +} +/* Table Cells */ +.ui.table td { + padding: 0.40em 0.7em; + vertical-align: middle; +} +/* Footer */ +.ui.table tfoot { + border-top: 1px solid rgba(0, 0, 0, 0.03); +} +.ui.table tfoot th { + font-weight: normal; + font-style: italic; +} +/* Table Striping */ +.ui.table tbody tr:nth-child(2n) { + background-color: rgba(0, 0, 50, 0.02); +} +/* Icons */ +.ui.table > .icon { + vertical-align: baseline; +} +.ui.table > .icon:only-child { + margin: 0em; +} +/* Table Segment */ +.ui.table.segment:after { + display: none; +} +.ui.table.segment.stacked:after { + display: block; +} +/* Responsive */ +@media only screen and (max-width: 768px) { + .ui.table { + display: block; + padding: 0em; + } + .ui.table thead, + .ui.table tfoot { + display: none; + } + .ui.table tbody { + display: block; + } + .ui.table tr { + display: block; + } + .ui.table tr > td { + width: 100% !important; + display: block; + border: none !important; + padding: 0.25em 0.75em; + -webkit-box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.05) !important; + box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.05) !important; + } + .ui.table td:first-child { + font-weight: bold; + padding-top: 1em; + } + .ui.table td:last-child { + -webkit-box-shadow: 0px -1px 0px 0px rgba(0, 0, 0, 0.1) inset !important; + box-shadow: 0px -1px 0px 0px rgba(0, 0, 0, 0.1) inset !important; + padding-bottom: 1em; + } + /* Clear BG Colors */ + .ui.table tr > td.warning, + .ui.table tr > td.error, + .ui.table tr > td.active, + .ui.table tr > td.positive, + .ui.table tr > td.negative { + background-color: transparent !important; + } +} +/******************************* + States +*******************************/ +/*-------------- + Hover +---------------*/ +/* Sortable */ +.ui.sortable.table th.disabled:hover { + cursor: auto; + text-align: left; + font-weight: bold; + color: #333333; + color: rgba(0, 0, 0, 0.8); +} +.ui.sortable.table thead th:hover { + background-color: rgba(0, 0, 0, 0.13); + color: rgba(0, 0, 0, 0.8); +} +/* Inverted Sortable */ +.ui.inverted.sortable.table thead th:hover { + background-color: rgba(255, 255, 255, 0.13); + color: #ffffff; +} +/*-------------- + Positive +---------------*/ +.ui.table tr.positive, +.ui.table td.positive { + -webkit-box-shadow: 2px 0px 0px #119000 inset; + box-shadow: 2px 0px 0px #119000 inset; +} +.ui.table tr.positive td, +.ui.table td.positive { + background-color: #F2F8F0 !important; + color: #119000 !important; +} +.ui.celled.table tr.positive:hover td, +.ui.celled.table tr:hover td.positive, +.ui.table tr.positive:hover td, +.ui.table td:hover.positive, +.ui.table th:hover.positive { + background-color: #ECF5E9 !important; + color: #119000 !important; +} +/*-------------- + Negative +---------------*/ +.ui.table tr.negative, +.ui.table td.negative { + -webkit-box-shadow: 2px 0px 0px #CD2929 inset; + box-shadow: 2px 0px 0px #CD2929 inset; +} +.ui.table tr.negative td, +.ui.table td.negative { + background-color: #F9F4F4; + color: #CD2929 !important; +} +.ui.celled.table tr.negative:hover td, +.ui.celled.table tr:hover td.negative, +.ui.table tr.negative:hover td, +.ui.table td:hover.negative, +.ui.table th:hover.negative { + background-color: #F2E8E8; + color: #CD2929; +} +/*-------------- + Error +---------------*/ +.ui.table tr.error, +.ui.table td.error { + -webkit-box-shadow: 2px 0px 0px #CD2929 inset; + box-shadow: 2px 0px 0px #CD2929 inset; +} +.ui.table tr.error td, +.ui.table td.error, +.ui.table th.error { + background-color: #F9F4F4; + color: #CD2929; +} +.ui.celled.table tr.error:hover td, +.ui.celled.table tr:hover td.error, +.ui.table tr.error:hover td, +.ui.table td:hover.error, +.ui.table th:hover.error { + background-color: #F2E8E8; + color: #CD2929; +} +/*-------------- + Warning +---------------*/ +.ui.table tr.warning, +.ui.table td.warning { + -webkit-box-shadow: 2px 0px 0px #7D6C00 inset; + box-shadow: 2px 0px 0px #7D6C00 inset; +} +.ui.table tr.warning td, +.ui.table td.warning, +.ui.table th.warning { + background-color: #FBF6E9; + color: #7D6C00; +} +.ui.celled.table tr.warning:hover td, +.ui.celled.table tr:hover td.warning, +.ui.table tr.warning:hover td, +.ui.table td:hover.warning, +.ui.table th:hover.warning { + background-color: #F3EDDC; + color: #7D6C00; +} +/*-------------- + Active +---------------*/ +.ui.table tr.active, +.ui.table td.active { + -webkit-box-shadow: 2px 0px 0px rgba(50, 50, 50, 0.9) inset; + box-shadow: 2px 0px 0px rgba(50, 50, 50, 0.9) inset; +} +.ui.table tr.active td, +.ui.table tr td.active { + background-color: #E0E0E0; + color: rgba(50, 50, 50, 0.9); + /* border-color: rgba(0, 0, 0, 0.15) !important; */ +} +/*-------------- + Disabled +---------------*/ +.ui.table tr.disabled td, +.ui.table tr td.disabled, +.ui.table tr.disabled:hover td, +.ui.table tr:hover td.disabled { + color: rgba(150, 150, 150, 0.3); +} +/******************************* + Variations +*******************************/ +/*-------------- + Column Count +---------------*/ +.ui.two.column.table td { + width: 50%; +} +.ui.three.column.table td { + width: 33.3333%; +} +.ui.four.column.table td { + width: 25%; +} +.ui.five.column.table td { + width: 20%; +} +.ui.six.column.table td { + width: 16.66667%; +} +.ui.seven.column.table td { + width: 14.2857%; +} +.ui.eight.column.table td { + width: 12.5%; +} +.ui.nine.column.table td { + width: 11.1111%; +} +.ui.ten.column.table td { + width: 10%; +} +.ui.eleven.column.table td { + width: 9.0909%; +} +.ui.twelve.column.table td { + width: 8.3333%; +} +.ui.thirteen.column.table td { + width: 7.6923%; +} +.ui.fourteen.column.table td { + width: 7.1428%; +} +.ui.fifteen.column.table td { + width: 6.6666%; +} +.ui.sixteen.column.table td { + width: 6.25%; +} +/* Column Width */ +.ui.table th.one.wide, +.ui.table td.one.wide { + width: 6.25%; +} +.ui.table th.two.wide, +.ui.table td.two.wide { + width: 12.5%; +} +.ui.table th.three.wide, +.ui.table td.three.wide { + width: 18.75%; +} +.ui.table th.four.wide, +.ui.table td.four.wide { + width: 25%; +} +.ui.table th.five.wide, +.ui.table td.five.wide { + width: 31.25%; +} +.ui.table th.six.wide, +.ui.table td.six.wide { + width: 37.5%; +} +.ui.table th.seven.wide, +.ui.table td.seven.wide { + width: 43.75%; +} +.ui.table th.eight.wide, +.ui.table td.eight.wide { + width: 50%; +} +.ui.table th.nine.wide, +.ui.table td.nine.wide { + width: 56.25%; +} +.ui.table th.ten.wide, +.ui.table td.ten.wide { + width: 62.5%; +} +.ui.table th.eleven.wide, +.ui.table td.eleven.wide { + width: 68.75%; +} +.ui.table th.twelve.wide, +.ui.table td.twelve.wide { + width: 75%; +} +.ui.table th.thirteen.wide, +.ui.table td.thirteen.wide { + width: 81.25%; +} +.ui.table th.fourteen.wide, +.ui.table td.fourteen.wide { + width: 87.5%; +} +.ui.table th.fifteen.wide, +.ui.table td.fifteen.wide { + width: 93.75%; +} +.ui.table th.sixteen.wide, +.ui.table td.sixteen.wide { + width: 100%; +} +/*-------------- + Celled +---------------*/ +.ui.celled.table { + color: rgba(0, 0, 0, 0.8); +} +.ui.celled.table tbody tr, +.ui.celled.table tfoot tr { + border: none; +} +.ui.celled.table th, +.ui.celled.table td { + border: 1px solid rgba(0, 0, 0, 0.1); +} +/* Coupling with segment */ +.ui.celled.table.segment th:first-child, +.ui.celled.table.segment td:first-child { + border-left: none; +} +.ui.celled.table.segment th:last-child, +.ui.celled.table.segment td:last-child { + border-right: none; +} +/*-------------- + Sortable +---------------*/ +.ui.sortable.table thead th { + cursor: pointer; + white-space: nowrap; +} +.ui.sortable.table thead th.sorted, +.ui.sortable.table thead th.sorted:hover { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +.ui.sortable.table thead th:after { + display: inline-block; + content: ''; + width: 1em; + opacity: 0.8; + margin: 0em 0em 0em 0.5em; + font-family: 'Icons'; + font-style: normal; + font-weight: normal; + text-decoration: inherit; +} +.ui.sortable.table thead th.ascending:after { + content: '\25b4'; +} +.ui.sortable.table thead th.descending:after { + content: '\25be'; +} +/*-------------- + Inverted +---------------*/ +/* Text Color */ +.ui.inverted.table td { + color: rgba(255, 255, 255, 0.9); +} +.ui.inverted.table th { + background-color: rgba(0, 0, 0, 0.15); + color: rgba(255, 255, 255, 0.9); +} +/* Stripes */ +.ui.inverted.table tbody tr:nth-child(2n) { + background-color: rgba(255, 255, 255, 0.06); +} +/*-------------- + Definition +---------------*/ +.ui.definition.table td:first-child { + font-weight: bold; +} +/*-------------- + Collapsing +---------------*/ +.ui.collapsing.table { + width: auto; +} +/*-------------- + Basic +---------------*/ +.ui.basic.table th { + background-color: transparent; + padding: 0.5em; +} +.ui.basic.table tbody tr { + border-bottom: 1px solid rgba(0, 0, 0, 0.03); +} +.ui.basic.table td { + padding: 0.8em 0.5em; +} +.ui.basic.table tbody tr:nth-child(2n) { + background-color: transparent !important; +} +/*-------------- + Padded +---------------*/ +.ui.padded.table th, +.ui.padded.table td { + padding: 0.8em 1em; +} +.ui.compact.table th { + padding: 0.3em 0.5em; +} +.ui.compact.table td { + padding: 0.2em 0.5em; +} +/*-------------- + Sizes +---------------*/ +/* Small */ +.ui.small.table { + font-size: 0.875em; +} +/* Standard */ +.ui.table { + font-size: 1em; +} +/* Large */ +.ui.large.table { + font-size: 1.1em; +} + +/* + * # Semantic - basic.Icon (Basic) + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Basic Icon +*******************************/ +@font-face { + font-family: 'Basic Icons'; + src: url(../fonts/basic.icons.eot); + src: url(../fonts/basic.icons.eot?#iefix) format('embedded-opentype'), url(../fonts/basic.icons.svg#basic.icons) format('svg'), url(../fonts/basic.icons.woff) format('woff'), url(../fonts/basic.icons.ttf) format('truetype'); + font-style: normal; + font-weight: normal; + font-variant: normal; + text-decoration: inherit; + text-transform: none; +} +i.basic.icon { + display: inline-block; + opacity: 0.75; + margin: 0em 0.25em 0em 0em; + width: 1.23em; + height: 1em; + font-family: 'Basic Icons'; + font-style: normal; + line-height: 1; + font-weight: normal; + text-decoration: inherit; + text-align: center; + speak: none; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + -webkit-font-smoothing: antialiased; + -moz-font-smoothing: antialiased; + font-smoothing: antialiased; +} +/* basic.icons available */ +i.basic.icon.circle.attention:before { + content: '\2757'; +} +/* '❗' */ +i.basic.icon.circle.help:before { + content: '\e704'; +} +/* '' */ +i.basic.icon.circle.info:before { + content: '\e705'; +} +/* '' */ +i.basic.icon.add:before { + content: '\2795'; +} +/* '➕' */ +i.basic.icon.chart:before { + content: '📈'; +} +/* '\1f4c8' */ +i.basic.icon.chart.bar:before { + content: '📊'; +} +/* '\1f4ca' */ +i.basic.icon.chart.pie:before { + content: '\e7a2'; +} +/* '' */ +i.basic.icon.resize.full:before { + content: '\e744'; +} +/* '' */ +i.basic.icon.resize.horizontal:before { + content: '\2b0d'; +} +/* '⬍' */ +i.basic.icon.resize.small:before { + content: '\e746'; +} +/* '' */ +i.basic.icon.resize.vertical:before { + content: '\2b0c'; +} +/* '⬌' */ +i.basic.icon.down:before { + content: '\2193'; +} +/* '↓' */ +i.basic.icon.down.triangle:before { + content: '\25be'; +} +/* '▾' */ +i.basic.icon.down.arrow:before { + content: '\e75c'; +} +/* '' */ +i.basic.icon.left:before { + content: '\2190'; +} +/* '←' */ +i.basic.icon.left.triangle:before { + content: '\25c2'; +} +/* '◂' */ +i.basic.icon.left.arrow:before { + content: '\e75d'; +} +/* '' */ +i.basic.icon.right:before { + content: '\2192'; +} +/* '→' */ +i.basic.icon.right.triangle:before { + content: '\25b8'; +} +/* '▸' */ +i.basic.icon.right.arrow:before { + content: '\e75e'; +} +/* '' */ +i.basic.icon.up:before { + content: '\2191'; +} +/* '↑' */ +i.basic.icon.up.triangle:before { + content: '\25b4'; +} +/* '▴' */ +i.basic.icon.up.arrow:before { + content: '\e75f'; +} +/* '' */ +i.basic.icon.folder:before { + content: '\e810'; +} +/* '' */ +i.basic.icon.open.folder:before { + content: '📂'; +} +/* '\1f4c2' */ +i.basic.icon.globe:before { + content: '𝌍'; +} +/* '\1d30d' */ +i.basic.icon.desk.globe:before { + content: '🌐'; +} +/* '\1f310' */ +i.basic.icon.star:before { + content: '\e801'; +} +/* '' */ +i.basic.icon.star.empty:before { + content: '\e800'; +} +/* '' */ +i.basic.icon.star.half:before { + content: '\e701'; +} +/* '' */ +i.basic.icon.lock:before { + content: '🔒'; +} +/* '\1f512' */ +i.basic.icon.unlock:before { + content: '🔓'; +} +/* '\1f513' */ +i.basic.icon.layout.grid:before { + content: '\e80c'; +} +/* '' */ +i.basic.icon.layout.block:before { + content: '\e708'; +} +/* '' */ +i.basic.icon.layout.list:before { + content: '\e80b'; +} +/* '' */ +i.basic.icon.heart.empty:before { + content: '\2661'; +} +/* '♡' */ +i.basic.icon.heart:before { + content: '\2665'; +} +/* '♥' */ +i.basic.icon.asterisk:before { + content: '\2731'; +} +/* '✱' */ +i.basic.icon.attachment:before { + content: '📎'; +} +/* '\1f4ce' */ +i.basic.icon.attention:before { + content: '\26a0'; +} +/* '⚠' */ +i.basic.icon.trophy:before { + content: '🏉'; +} +/* '\1f3c9' */ +i.basic.icon.barcode:before { + content: '\e792'; +} +/* '' */ +i.basic.icon.cart:before { + content: '\e813'; +} +/* '' */ +i.basic.icon.block:before { + content: '🚫'; +} +/* '\1f6ab' */ +i.basic.icon.book:before { + content: '📖'; +} +i.basic.icon.bookmark:before { + content: '🔖'; +} +/* '\1f516' */ +i.basic.icon.calendar:before { + content: '📅'; +} +/* '\1f4c5' */ +i.basic.icon.cancel:before { + content: '\2716'; +} +/* '✖' */ +i.basic.icon.close:before { + content: '\e80d'; +} +/* '' */ +i.basic.icon.color:before { + content: '\e794'; +} +/* '' */ +i.basic.icon.chat:before { + content: '\e720'; +} +/* '' */ +i.basic.icon.check:before { + content: '\2611'; +} +/* '☑' */ +i.basic.icon.time:before { + content: '🕔'; +} +/* '\1f554' */ +i.basic.icon.cloud:before { + content: '\2601'; +} +/* '☁' */ +i.basic.icon.code:before { + content: '\e714'; +} +/* '' */ +i.basic.icon.email:before { + content: '\40'; +} +/* '@' */ +i.basic.icon.settings:before { + content: '\26ef'; +} +/* '⛯' */ +i.basic.icon.setting:before { + content: '\2699'; +} +/* '⚙' */ +i.basic.icon.comment:before { + content: '\e802'; +} +/* '' */ +i.basic.icon.clockwise.counter:before { + content: '\27f2'; +} +/* '⟲' */ +i.basic.icon.clockwise:before { + content: '\27f3'; +} +/* '⟳' */ +i.basic.icon.cube:before { + content: '\e807'; +} +/* '' */ +i.basic.icon.direction:before { + content: '\27a2'; +} +/* '➢' */ +i.basic.icon.doc:before { + content: '📄'; +} +/* '\1f4c4' */ +i.basic.icon.docs:before { + content: '\e736'; +} +/* '' */ +i.basic.icon.dollar:before { + content: '💵'; +} +/* '\1f4b5' */ +i.basic.icon.paint:before { + content: '\e7b5'; +} +/* '' */ +i.basic.icon.edit:before { + content: '\270d'; +} +/* '✍' */ +i.basic.icon.eject:before { + content: '\2ecf'; +} +/* '⻏' */ +i.basic.icon.export:before { + content: '\e715'; +} +/* '' */ +i.basic.icon.hide:before { + content: '\e70b'; +} +/* '' */ +i.basic.icon.unhide:before { + content: '\e80f'; +} +/* '' */ +i.basic.icon.facebook:before { + content: '\f301'; +} +/* '' */ +i.basic.icon.fast-forward:before { + content: '\e804'; +} +/* '' */ +i.basic.icon.fire:before { + content: '🔥'; +} +/* '\1f525' */ +i.basic.icon.flag:before { + content: '\2691'; +} +/* '⚑' */ +i.basic.icon.lightning:before { + content: '\26a1'; +} +/* '⚡' */ +i.basic.icon.lab:before { + content: '\68'; +} +/* 'h' */ +i.basic.icon.flight:before { + content: '\2708'; +} +/* '✈' */ +i.basic.icon.forward:before { + content: '\27a6'; +} +/* '➦' */ +i.basic.icon.gift:before { + content: '🎁'; +} +/* '\1f381' */ +i.basic.icon.github:before { + content: '\f308'; +} +/* '' */ +i.basic.icon.globe:before { + content: '\e817'; +} +/* '' */ +i.basic.icon.headphones:before { + content: '🎧'; +} +/* '\1f3a7' */ +i.basic.icon.question:before { + content: '\2753'; +} +/* '❓' */ +i.basic.icon.home:before { + content: '\2302'; +} +/* '⌂' */ +i.basic.icon.i:before { + content: '\2139'; +} +/* 'ℹ' */ +i.basic.icon.idea:before { + content: '💡'; +} +/* '\1f4a1' */ +i.basic.icon.open:before { + content: '🔗'; +} +/* '\1f517' */ +i.basic.icon.content:before { + content: '\e782'; +} +/* '' */ +i.basic.icon.location:before { + content: '\e724'; +} +/* '' */ +i.basic.icon.mail:before { + content: '\2709'; +} +/* '✉' */ +i.basic.icon.mic:before { + content: '🎤'; +} +/* '\1f3a4' */ +i.basic.icon.minus:before { + content: '\2d'; +} +/* '-' */ +i.basic.icon.money:before { + content: '💰'; +} +/* '\1f4b0' */ +i.basic.icon.off:before { + content: '\e78e'; +} +/* '' */ +i.basic.icon.pause:before { + content: '\e808'; +} +/* '' */ +i.basic.icon.photos:before { + content: '\e812'; +} +/* '' */ +i.basic.icon.photo:before { + content: '🌄'; +} +/* '\1f304' */ +i.basic.icon.pin:before { + content: '📌'; +} +/* '\1f4cc' */ +i.basic.icon.play:before { + content: '\e809'; +} +/* '' */ +i.basic.icon.plus:before { + content: '\2b'; +} +/* '+' */ +i.basic.icon.print:before { + content: '\e716'; +} +/* '' */ +i.basic.icon.rss:before { + content: '\e73a'; +} +/* '' */ +i.basic.icon.search:before { + content: '🔍'; +} +/* '\1f50d' */ +i.basic.icon.shuffle:before { + content: '\e803'; +} +/* '' */ +i.basic.icon.tag:before { + content: '\e80a'; +} +/* '' */ +i.basic.icon.tags:before { + content: '\e70d'; +} +/* '' */ +i.basic.icon.terminal:before { + content: '\e7ac'; +} +/* '' */ +i.basic.icon.thumbs.down:before { + content: '👎'; +} +/* '\1f44e' */ +i.basic.icon.thumbs.up:before { + content: '👍'; +} +/* '\1f44d' */ +i.basic.icon.to-end:before { + content: '\e806'; +} +/* '' */ +i.basic.icon.to-start:before { + content: '\e805'; +} +/* '' */ +i.basic.icon.top.list:before { + content: '🏆'; +} +/* '\1f3c6' */ +i.basic.icon.trash:before { + content: '\e729'; +} +/* '' */ +i.basic.icon.twitter:before { + content: '\f303'; +} +/* '' */ +i.basic.icon.upload:before { + content: '\e711'; +} +/* '' */ +i.basic.icon.user.add:before { + content: '\e700'; +} +/* '' */ +i.basic.icon.user:before { + content: '👤'; +} +/* '\1f464' */ +i.basic.icon.community:before { + content: '\e814'; +} +/* '' */ +i.basic.icon.users:before { + content: '👥'; +} +/* '\1f465' */ +i.basic.icon.id:before { + content: '\e722'; +} +/* '' */ +i.basic.icon.url:before { + content: '🔗'; +} +/* '\1f517' */ +i.basic.icon.zoom.in:before { + content: '\e750'; +} +/* '' */ +i.basic.icon.zoom.out:before { + content: '\e751'; +} +/* '' */ +/*-------------- + Spacing Fix +---------------*/ +/* dropdown arrows are to the right */ +i.dropdown.basic.icon { + margin: 0em 0em 0em 0.5em; +} +/* stars are usually consecutive */ +i.basic.icon.star { + width: auto; + margin: 0em; +} +/* left side basic.icons */ +i.basic.icon.left, +i.basic.icon.left, +i.basic.icon.left { + width: auto; + margin: 0em 0.5em 0em 0em; +} +/* right side basic.icons */ +i.basic.icon.search, +i.basic.icon.up, +i.basic.icon.down, +i.basic.icon.right { + width: auto; + margin: 0em 0em 0em 0.5em; +} +/*-------------- + Aliases +---------------*/ +/* aliases for convenience */ +i.basic.icon.delete:before { + content: '\e80d'; +} +/* '' */ +i.basic.icon.dropdown:before { + content: '\25be'; +} +/* '▾' */ +i.basic.icon.help:before { + content: '\e704'; +} +/* '' */ +i.basic.icon.info:before { + content: '\e705'; +} +/* '' */ +i.basic.icon.error:before { + content: '\e80d'; +} +/* '' */ +i.basic.icon.dislike:before { + content: '\2661'; +} +/* '♡' */ +i.basic.icon.like:before { + content: '\2665'; +} +/* '♥' */ +i.basic.icon.eye:before { + content: '\e80f'; +} +/* '' */ +i.basic.icon.eye.hidden:before { + content: '\e70b'; +} +/* '' */ +i.basic.icon.date:before { + content: '📅'; +} +/* '\1f4c5' */ +/******************************* + States +*******************************/ +i.basic.icon.hover { + opacity: 1; +} +i.basic.icon.active { + opacity: 1; +} +i.emphasized.basic.icon { + opacity: 1; +} +i.basic.icon.disabled { + opacity: 0.3; +} +/******************************* + Variations +*******************************/ +/*------------------- + Link +--------------------*/ +i.link.basic.icon { + cursor: pointer; + opacity: 0.7; + -webkit-transition: opacity 0.3s ease-out; + -moz-transition: opacity 0.3s ease-out; + transition: opacity 0.3s ease-out; +} +.link.basic.icon:hover { + opacity: 1 !important; +} +/*------------------- + Circular +--------------------*/ +i.circular.basic.icon { + border-radius: 500px !important; + padding: 0.5em 0em !important; + -webkit-box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset; + box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset; + line-height: 1 !important; + width: 2em !important; + height: 2em !important; +} +i.circular.inverted.basic.icon { + border: none; + -webkit-box-shadow: none; + box-shadow: none; +} +/*------------------- + Flipped +--------------------*/ +i.vertically.flipped.basic.icon { + -webkit-transform: scale(1, -1); + -moz-transform: scale(1, -1); + -ms-transform: scale(1, -1); + transform: scale(1, -1); +} +i.horizontally.flipped.basic.icon { + -webkit-transform: scale(-1, 1); + -moz-transform: scale(-1, 1); + -ms-transform: scale(-1, 1); + transform: scale(-1, 1); +} +/*------------------- + Rotated +--------------------*/ +i.left.rotated.basic.icon { + -webkit-transform: rotate(-90deg); + -moz-transform: rotate(-90deg); + -ms-transform: rotate(-90deg); + transform: rotate(-90deg); +} +i.right.rotated.basic.icon { + -webkit-transform: rotate(90deg); + -moz-transform: rotate(90deg); + -ms-transform: rotate(90deg); + transform: rotate(90deg); +} +/*------------------- + Square +--------------------*/ +i.square.basic.icon { + width: 2em; + height: 2em; + padding: 0.5em 0.35em !important; + -webkit-box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset; + box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset; + vertical-align: baseline; +} +i.square.basic.icon:before { + vertical-align: middle; +} +i.square.inverted.basic.icon { + border: none; + -webkit-box-shadow: none; + box-shadow: none; +} +/*------------------- + Inverted +--------------------*/ +i.inverted.basic.icon { + background-color: #222222; + color: #FFFFFF; +} +/*------------------- + Colors +--------------------*/ +i.blue.basic.icon { + color: #6ECFF5 !important; +} +i.black.basic.icon { + color: #5C6166 !important; +} +i.green.basic.icon { + color: #A1CF64 !important; +} +i.red.basic.icon { + color: #D95C5C !important; +} +i.purple.basic.icon { + color: #564F8A !important; +} +i.teal.basic.icon { + color: #00B5AD !important; +} +/*------------------- + Inverted Colors +--------------------*/ +i.inverted.black.basic.icon { + background-color: #5C6166 !important; + color: #FFFFFF !important; +} +i.inverted.blue.basic.icon { + background-color: #6ECFF5 !important; + color: #FFFFFF !important; +} +i.inverted.green.basic.icon { + background-color: #A1CF64 !important; + color: #FFFFFF !important; +} +i.inverted.red.basic.icon { + background-color: #D95C5C !important; + color: #FFFFFF !important; +} +i.inverted.purple.basic.icon { + background-color: #564F8A !important; + color: #FFFFFF !important; +} +i.inverted.teal.basic.icon { + background-color: #00B5AD !important; + color: #FFFFFF !important; +} +/*------------------- + Sizes +--------------------*/ +i.small.basic.icon { + font-size: 0.875em; +} +i.basic.icon { + font-size: 1em; +} +i.large.basic.icon { + font-size: 1.5em; + margin-right: 0.2em; + vertical-align: middle; +} +i.big.basic.icon { + font-size: 2em; + margin-right: 0.5em; + vertical-align: middle; +} +i.huge.basic.icon { + font-size: 4em; + margin-right: 0.75em; + vertical-align: middle; +} +i.massive.basic.icon { + font-size: 8em; + margin-right: 1em; + vertical-align: middle; +} + +/* + * # Semantic - Button + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Button +*******************************/ +/* Prototype */ +.ui.button { + cursor: pointer; + display: inline-block; + vertical-align: middle; + min-height: 1em; + outline: none; + border: none; + background-color: #FAFAFA; + color: #808080; + margin: 0em; + padding: 0.8em 1.5em; + font-size: 1rem; + text-transform: uppercase; + line-height: 1; + font-weight: bold; + font-style: normal; + text-align: center; + text-decoration: none; + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.05))); + background-image: -webkit-linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.05)); + background-image: -moz-linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.05)); + background-image: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.05)); + border-radius: 0.25em; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.08) inset; + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.08) inset; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + -webkit-transition: opacity 0.25s ease, background-color 0.25s ease, color 0.25s ease, background 0.25s ease, -webkit-box-shadow 0.25s ease; + -moz-transition: opacity 0.25s ease, background-color 0.25s ease, color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease; + transition: opacity 0.25s ease, background-color 0.25s ease, color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease; +} +/******************************* + States +*******************************/ +/*-------------- + Active +---------------*/ +.ui.buttons .active.button, +.ui.active.button { + background-color: #EAEAEA; + background-image: none; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.05) inset !important; + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.05) inset !important; + color: rgba(0, 0, 0, 0.7); +} +/*-------------- + Hover +---------------*/ +.ui.button:hover { + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.08))); + background-image: -webkit-linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.08)); + background-image: -moz-linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.08)); + background-image: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.08)); + color: rgba(0, 0, 0, 0.7); +} +.ui.button.active:hover { + background-image: none; +} +.ui.button:hover .icon, +.ui.button.hover .icon { + opacity: 0.85; +} +/*-------------- + Down +---------------*/ +.ui.button:active, +.ui.active.button:active { + background-color: #F1F1F1; + color: rgba(0, 0, 0, 0.7); + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.05) inset !important; + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.05) inset !important; +} +/*-------------- + Loading +---------------*/ +.ui.loading.button { + position: relative; + cursor: default; + background-color: #FFFFFF !important; + color: transparent !important; + -webkit-transition: all 0s linear; + -moz-transition: all 0s linear; + transition: all 0s linear; +} +.ui.loading.button:after { + position: absolute; + top: 0em; + left: 0em; + width: 100%; + height: 100%; + content: ''; + background: transparent url(../images/loader-mini.gif) no-repeat 50% 50%; +} +.ui.labeled.icon.loading.button .icon { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} +/*------------------- + Disabled +--------------------*/ +.ui.disabled.button, +.ui.disabled.button:hover, +.ui.disabled.button.active { + background-color: #DDDDDD !important; + cursor: default; + color: rgba(0, 0, 0, 0.5) !important; + opacity: 0.3 !important; + background-image: none !important; + -webkit-box-shadow: none !important; + box-shadow: none !important; +} +/******************************* + Types +*******************************/ +/*------------------- + Animated +--------------------*/ +.ui.animated.button { + position: relative; + overflow: hidden; +} +.ui.animated.button .visible.content { + position: relative; +} +.ui.animated.button .hidden.content { + position: absolute; + width: 100%; +} +/* Horizontal */ +.ui.animated.button .visible.content, +.ui.animated.button .hidden.content { + -webkit-transition: right 0.3s ease 0s; + -moz-transition: right 0.3s ease 0s; + transition: right 0.3s ease 0s; +} +.ui.animated.button .visible.content { + left: auto; + right: 0%; +} +.ui.animated.button .hidden.content { + top: 50%; + left: auto; + right: -100%; + margin-top: -0.55em; +} +.ui.animated.button:hover .visible.content { + left: auto; + right: 200%; +} +.ui.animated.button:hover .hidden.content { + left: auto; + right: 0%; +} +/* Vertical */ +.ui.vertical.animated.button .visible.content, +.ui.vertical.animated.button .hidden.content { + -webkit-transition: top 0.3s ease 0s, -webkit-transform 0.3s ease 0s; + -moz-transition: top 0.3s ease 0s, -moz-transform 0.3s ease 0s; + transition: top 0.3s ease 0s, transform 0.3s ease 0s; +} +.ui.vertical.animated.button .visible.content { + -webkit-transform: translateY(0%); + -moz-transform: translateY(0%); + -ms-transform: translateY(0%); + transform: translateY(0%); + right: auto; +} +.ui.vertical.animated.button .hidden.content { + top: -100%; + left: 0%; + right: auto; +} +.ui.vertical.animated.button:hover .visible.content { + -webkit-transform: translateY(200%); + -moz-transform: translateY(200%); + -ms-transform: translateY(200%); + transform: translateY(200%); + right: auto; +} +.ui.vertical.animated.button:hover .hidden.content { + top: 50%; + right: auto; +} +/* Fade */ +.ui.fade.animated.button .visible.content, +.ui.fade.animated.button .hidden.content { + -webkit-transition: opacity 0.3s ease 0s, -webkit-transform 0.3s ease 0s; + -moz-transition: opacity 0.3s ease 0s, -moz-transform 0.3s ease 0s; + transition: opacity 0.3s ease 0s, transform 0.3s ease 0s; +} +.ui.fade.animated.button .visible.content { + left: auto; + right: auto; + opacity: 1; + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} +.ui.fade.animated.button .hidden.content { + opacity: 0; + left: 0%; + right: auto; + -webkit-transform: scale(1.2); + -moz-transform: scale(1.2); + -ms-transform: scale(1.2); + transform: scale(1.2); +} +.ui.fade.animated.button:hover .visible.content { + left: auto; + right: auto; + opacity: 0; + -webkit-transform: scale(0.7); + -moz-transform: scale(0.7); + -ms-transform: scale(0.7); + transform: scale(0.7); +} +.ui.fade.animated.button:hover .hidden.content { + left: 0%; + right: auto; + opacity: 1; + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); +} +/*------------------- + Primary +--------------------*/ +.ui.primary.buttons .button, +.ui.primary.button { + background-color: #D95C5C; + color: #FFFFFF; +} +.ui.primary.buttons .button:hover, +.ui.primary.button:hover, +.ui.primary.buttons .active.button, +.ui.primary.button.active { + background-color: #E75859; + color: #FFFFFF; +} +.ui.primary.buttons .button:active, +.ui.primary.button:active { + background-color: #D24B4C; + color: #FFFFFF; +} +/*------------------- + Secondary +--------------------*/ +.ui.secondary.buttons .button, +.ui.secondary.button { + background-color: #00B5AD; + color: #FFFFFF; +} +.ui.secondary.buttons .button:hover, +.ui.secondary.button:hover, +.ui.secondary.buttons .active.button, +.ui.secondary.button.active { + background-color: #009A93; + color: #FFFFFF; +} +.ui.secondary.buttons .button:active, +.ui.secondary.button:active { + background-color: #00847E; + color: #FFFFFF; +} +/*------------------- + Social +--------------------*/ +/* Facebook */ +.ui.facebook.button { + background-color: #3B579D; + color: #FFFFFF; +} +.ui.facebook.button:hover { + background-color: #3A59A9; + color: #FFFFFF; +} +.ui.facebook.button:active { + background-color: #334F95; + color: #FFFFFF; +} +/* Twitter */ +.ui.twitter.button { + background-color: #4092CC; + color: #FFFFFF; +} +.ui.twitter.button:hover { + background-color: #399ADE; + color: #FFFFFF; +} +.ui.twitter.button:active { + background-color: #3283BC; + color: #FFFFFF; +} +/* Google Plus */ +.ui.google.plus.button { + background-color: #D34836; + color: #FFFFFF; +} +.ui.google.plus.button:hover { + background-color: #E3432E; + color: #FFFFFF; +} +.ui.google.plus.button:active { + background-color: #CA3A27; + color: #FFFFFF; +} +/* Linked In */ +.ui.linkedin.button { + background-color: #1F88BE; + color: #FFFFFF; +} +.ui.linkedin.button:hover { + background-color: #1394D6; + color: #FFFFFF; +} +.ui.linkedin.button:active { + background-color: #1179AE; + color: #FFFFFF; +} +/* YouTube */ +.ui.youtube.button { + background-color: #CC181E; + color: #FFFFFF; +} +.ui.youtube.button:hover { + background-color: #DF0209; + color: #FFFFFF; +} +.ui.youtube.button:active { + background-color: #A50006; + color: #FFFFFF; +} +/* Instagram */ +.ui.instagram.button { + background-color: #49769C; + color: #FFFFFF; +} +.ui.instagram.button:hover { + background-color: #4781B1; + color: #FFFFFF; +} +.ui.instagram.button:active { + background-color: #38658A; + color: #FFFFFF; +} +/* Pinterest */ +.ui.pinterest.button { + background-color: #00ACED; + color: #FFFFFF; +} +.ui.pinterest.button:hover { + background-color: #00B9FF; + color: #FFFFFF; +} +.ui.pinterest.button:active { + background-color: #009EDA; + color: #FFFFFF; +} +/* vk.com */ +.ui.vk.button { + background-color: #4D7198; + color: #FFFFFF; +} +.ui.vk.button:hover { + background-color: #537AA5; + color: #FFFFFF; +} +.ui.vk.button:active { + background-color: #405E7E; + color: #FFFFFF; +} +/*-------------- + Icon +---------------*/ +.ui.button > .icon { + margin-right: 0.6em; + line-height: 1; + -webkit-transition: opacity 0.1s ease + ; + -moz-transition: opacity 0.1s ease + ; + transition: opacity 0.1s ease + ; +} +/******************************* + Variations +*******************************/ +/*------------------- + Floated +--------------------*/ +.ui.left.floated.buttons, +.ui.left.floated.button { + float: left; + margin-right: 0.25em; +} +.ui.right.floated.buttons, +.ui.right.floated.button { + float: right; + margin-left: 0.25em; +} +/*------------------- + Sizes +--------------------*/ +.ui.buttons .button, +.ui.button { + font-size: 1rem; +} +.ui.mini.buttons .button, +.ui.mini.buttons .or, +.ui.mini.button { + font-size: 0.8rem; +} +.ui.mini.buttons .button, +.ui.mini.button { + padding: 0.6em 0.8em; +} +.ui.mini.icon.buttons .button, +.ui.mini.buttons .icon.button { + padding: 0.6em 0.6em; +} +.ui.tiny.buttons .button, +.ui.tiny.buttons .or, +.ui.tiny.button { + font-size: 0.875em; +} +.ui.tiny.buttons .button, +.ui.tiny.buttons .button, +.ui.tiny.button { + padding: 0.6em 0.8em; +} +.ui.tiny.icon.buttons .button, +.ui.tiny.buttons .icon.button { + padding: 0.6em 0.6em; +} +.ui.small.buttons .button, +.ui.small.buttons .or, +.ui.small.button { + font-size: 0.875rem; +} +.ui.large.buttons .button, +.ui.large.buttons .or, +.ui.large.button { + font-size: 1.125rem; +} +.ui.big.buttons .button, +.ui.big.buttons .or, +.ui.big.button { + font-size: 1.25rem; +} +.ui.huge.buttons .button, +.ui.huge.buttons .or, +.ui.huge.button { + font-size: 1.375rem; +} +.ui.massive.buttons .button, +.ui.massive.buttons .or, +.ui.massive.button { + font-size: 1.5rem; + font-weight: bold; +} +/* Or resize */ +.ui.tiny.buttons .or:before, +.ui.mini.buttons .or:before { + width: 1.45em; + height: 1.55em; + line-height: 1.4; + margin-left: -0.725em; + margin-top: -0.25em; +} +.ui.tiny.buttons .or:after, +.ui.mini.buttons .or:after { + height: 1.45em; +} +/* loading */ +.ui.huge.loading.button:after { + background-image: url(../images/loader-small.gif); +} +.ui.massive.buttons .loading.button:after, +.ui.gigantic.buttons .loading.button:after, +.ui.massive.loading.button:after, +.ui.gigantic.loading.button:after { + background-image: url(../images/loader-medium.gif); +} +.ui.huge.loading.button:after, +.ui.huge.loading.button.active:after { + background-image: url(../images/loader-small.gif); +} +.ui.massive.buttons .loading.button:after, +.ui.gigantic.buttons .loading.button:after, +.ui.massive.loading.button:after, +.ui.gigantic.loading.button:after, +.ui.massive.buttons .loading.button.active:after, +.ui.gigantic.buttons .loading.button.active:after, +.ui.massive.loading.button.active:after, +.ui.gigantic.loading.button.active:after { + background-image: url(../images/loader-medium.gif); +} +/*-------------- + Icon Only +---------------*/ +.ui.icon.buttons .button, +.ui.icon.button { + padding: 0.8em; +} +.ui.icon.buttons .button > .icon, +.ui.icon.button > .icon { + opacity: 0.9; + margin: 0em; + vertical-align: top; +} +/*------------------- + Basic +--------------------*/ +.ui.basic.buttons .button, +.ui.basic.button { + background-color: transparent !important; + background-image: none; + color: #808080 !important; + font-weight: normal; + text-transform: none; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; +} +.ui.basic.buttons { + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; + border-radius: 0.25em; +} +.ui.basic.buttons .button:hover, +.ui.basic.button:hover { + background-image: none; + color: #7F7F7F !important; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.18) inset; + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.18) inset; +} +.ui.basic.buttons .button:active, +.ui.basic.button:active { + background-color: rgba(0, 0, 0, 0.02) !important; + color: #7F7F7F !important; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; +} +.ui.basic.buttons .button.active, +.ui.basic.button.active { + background-color: rgba(0, 0, 0, 0.05); + color: #7F7F7F; + -webkit-box-shadow: 0px 0px 0px 1px #BDBDBD inset; + box-shadow: 0px 0px 0px 1px #BDBDBD inset; +} +.ui.basic.buttons .button.active:hover, +.ui.basic.button.active:hover { + background-color: rgba(0, 0, 0, 0.1); +} +/* Inverted */ +.ui.basic.inverted.buttons .button, +.ui.basic.inverted.button { + color: #FAFAFA !important; + -webkit-box-shadow: 0px 0px 0px 1px rgba(255, 255, 255, 0.3) inset; + box-shadow: 0px 0px 0px 1px rgba(255, 255, 255, 0.3) inset; +} +.ui.basic.inverted.buttons .button:hover, +.ui.basic.inverted.button:hover { + background-image: none; + color: #FFFFFF !important; + -webkit-box-shadow: 0px 0px 0px 1px rgba(255, 255, 255, 0.5) inset; + box-shadow: 0px 0px 0px 1px rgba(255, 255, 255, 0.5) inset; +} +.ui.basic.inverted.buttons .button:active, +.ui.basic.inverted.button:active { + background-color: rgba(255, 255, 255, 0.05) !important; + color: #FFFFFF !important; + -webkit-box-shadow: 0px 0px 0px 1px rgba(255, 255, 255, 0.8) inset !important; + box-shadow: 0px 0px 0px 1px rgba(255, 255, 255, 0.8) inset !important; +} +.ui.basic.inverted.buttons .button.active, +.ui.basic.inverted.button.active { + background-color: rgba(255, 255, 255, 0.5); + color: #FFFFFF; + -webkit-box-shadow: none; + box-shadow: none; +} +.ui.basic.inverted.buttons .button.active:hover, +.ui.basic.inverted.button.active:hover { + background-color: rgba(0, 0, 0, 0.1); +} +/* Basic Group */ +.ui.basic.buttons .button { + border-left: 1px solid rgba(0, 0, 0, 0.1); + -webkit-box-shadow: none; + box-shadow: none; +} +.ui.basic.buttons .button:hover, +.ui.basic.buttons .button:active { + -webkit-box-shadow: none; + box-shadow: none; +} +.ui.basic.buttons .button.active, +.ui.basic.buttons .button.active:hover { + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.2) inset; + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.2) inset; +} +/*-------------- + Labeled Icon +---------------*/ +.ui.labeled.icon.buttons .button, +.ui.labeled.icon.button { + position: relative; + padding-left: 4em !important; + padding-right: 1.4em !important; +} +.ui.labeled.icon.buttons > .button > .icon, +.ui.labeled.icon.button > .icon { + position: absolute; + top: 0em; + left: 0em; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + width: 2.75em; + height: 100%; + padding-top: 0.8em; + background-color: rgba(0, 0, 0, 0.05); + text-align: center; + border-radius: 0.25em 0px 0px 0.25em; + line-height: 1; + -webkit-box-shadow: -1px 0px 0px 0px rgba(0, 0, 0, 0.05) inset; + box-shadow: -1px 0px 0px 0px rgba(0, 0, 0, 0.05) inset; +} +.ui.labeled.icon.buttons .button > .icon { + border-radius: 0em; +} +.ui.labeled.icon.buttons .button:first-child > .icon { + border-top-left-radius: 0.25em; + border-bottom-left-radius: 0.25em; +} +.ui.labeled.icon.buttons .button:last-child > .icon { + border-top-right-radius: 0.25em; + border-bottom-right-radius: 0.25em; +} +.ui.vertical.labeled.icon.buttons .button:first-child > .icon { + border-radius: 0em; + border-top-left-radius: 0.25em; +} +.ui.vertical.labeled.icon.buttons .button:last-child > .icon { + border-radius: 0em; + border-bottom-left-radius: 0.25em; +} +.ui.right.labeled.icon.button { + padding-left: 1.4em !important; + padding-right: 4em !important; +} +.ui.left.fluid.labeled.icon.button, +.ui.right.fluid.labeled.icon.button { + padding-left: 1.4em !important; + padding-right: 1.4em !important; +} +.ui.right.labeled.icon.button .icon { + left: auto; + right: 0em; + border-radius: 0em 0.25em 0.25em 0em; + -webkit-box-shadow: 1px 0px 0px 0px rgba(0, 0, 0, 0.05) inset; + box-shadow: 1px 0px 0px 0px rgba(0, 0, 0, 0.05) inset; +} +/*-------------- + Toggle +---------------*/ +/* Toggle (Modifies active state to give affordances) */ +.ui.toggle.buttons .active.button, +.ui.buttons .button.toggle.active, +.ui.button.toggle.active { + background-color: #5BBD72 !important; + color: #FFFFFF !important; + -webkit-box-shadow: none !important; + box-shadow: none !important; +} +.ui.button.toggle.active:hover { + background-color: #58CB73 !important; + color: #FFFFFF !important; + -webkit-box-shadow: none !important; + box-shadow: none !important; +} +/*-------------- + Circular +---------------*/ +.ui.circular.button { + border-radius: 10em; +} +/*-------------- + Attached +---------------*/ +.ui.attached.button { + display: block; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) !important; + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) !important; +} +.ui.attached.top.button { + border-radius: 0.25em 0.25em 0em 0em; +} +.ui.attached.bottom.button { + border-radius: 0em 0em 0.25em 0.25em; +} +.ui.attached.left.button { + display: inline-block; + border-left: none; + padding-right: 0.75em; + text-align: right; + border-radius: 0.25em 0em 0em 0.25em; +} +.ui.attached.right.button { + display: inline-block; + padding-left: 0.75em; + text-align: left; + border-radius: 0em 0.25em 0.25em 0em; +} +/*------------------- + Or Buttons +--------------------*/ +.ui.buttons .or { + position: relative; + float: left; + width: 0.3em; + height: 1.1em; + z-index: 3; +} +.ui.buttons .or:before { + position: absolute; + top: 50%; + left: 50%; + content: 'or'; + background-color: #FFFFFF; + margin-top: -0.1em; + margin-left: -0.9em; + width: 1.8em; + height: 1.8em; + line-height: 1.55; + color: #AAAAAA; + font-style: normal; + font-weight: normal; + text-align: center; + border-radius: 500px; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +.ui.buttons .or[data-text]:before { + content: attr(data-text); +} +.ui.buttons .or:after { + position: absolute; + top: 0em; + left: 0em; + content: ' '; + width: 0.3em; + height: 1.7em; + background-color: transparent; + border-top: 0.5em solid #FFFFFF; + border-bottom: 0.5em solid #FFFFFF; +} +/* Fluid Or */ +.ui.fluid.buttons .or { + width: 0em !important; +} +.ui.fluid.buttons .or:after { + display: none; +} +/*------------------- + Attached +--------------------*/ +/* Plural Attached */ +.attached.ui.buttons { + margin: 0px; + border-radius: 4px 4px 0px 0px; +} +.attached.ui.buttons .button:first-child { + border-radius: 4px 0px 0px 0px; +} +.attached.ui.buttons .button:last-child { + border-radius: 0px 4px 0px 0px; +} +/* Bottom Side */ +.bottom.attached.ui.buttons { + margin-top: -1px; + border-radius: 0px 0px 4px 4px; +} +.bottom.attached.ui.buttons .button:first-child { + border-radius: 0px 0px 0px 4px; +} +.bottom.attached.ui.buttons .button:last-child { + border-radius: 0px 0px 4px 0px; +} +/* Left Side */ +.left.attached.ui.buttons { + margin-left: -1px; + border-radius: 0px 4px 4px 0px; +} +.left.attached.ui.buttons .button:first-child { + margin-left: -1px; + border-radius: 0px 4px 0px 0px; +} +.left.attached.ui.buttons .button:last-child { + margin-left: -1px; + border-radius: 0px 0px 4px 0px; +} +/* Right Side */ +.right.attached.ui.buttons, +.right.attached.ui.buttons .button { + margin-right: -1px; + border-radius: 4px 0px 0px 4px; +} +.right.attached.ui.buttons .button:first-child { + margin-left: -1px; + border-radius: 4px 0px 0px 0px; +} +.right.attached.ui.buttons .button:last-child { + margin-left: -1px; + border-radius: 0px 0px 0px 4px; +} +/* Fluid */ +.ui.fluid.buttons, +.ui.button.fluid, +.ui.fluid.buttons > .button { + display: block; + width: 100%; +} +.ui.\32.buttons > .button, +.ui.two.buttons > .button { + width: 50%; +} +.ui.\33.buttons > .button, +.ui.three.buttons > .button { + width: 33.333%; +} +.ui.\34.buttons > .button, +.ui.four.buttons > .button { + width: 25%; +} +.ui.\35.buttons > .button, +.ui.five.buttons > .button { + width: 20%; +} +.ui.\36.buttons > .button, +.ui.six.buttons > .button { + width: 16.666%; +} +.ui.\37.buttons > .button, +.ui.seven.buttons > .button { + width: 14.285%; +} +.ui.\38.buttons > .button, +.ui.eight.buttons > .button { + width: 12.500%; +} +.ui.\39.buttons > .button, +.ui.nine.buttons > .button { + width: 11.11%; +} +.ui.\31\30.buttons > .button, +.ui.ten.buttons > .button { + width: 10%; +} +.ui.\31\31.buttons > .button, +.ui.eleven.buttons > .button { + width: 9.09%; +} +.ui.\31\32.buttons > .button, +.ui.twelve.buttons > .button { + width: 8.3333%; +} +/* Fluid Vertical Buttons */ +.ui.fluid.vertical.buttons, +.ui.fluid.vertical.buttons > .button { + display: block; + width: auto; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +.ui.\32.vertical.buttons > .button, +.ui.two.vertical.buttons > .button { + height: 50%; +} +.ui.\33.vertical.buttons > .button, +.ui.three.vertical.buttons > .button { + height: 33.333%; +} +.ui.\34.vertical.buttons > .button, +.ui.four.vertical.buttons > .button { + height: 25%; +} +.ui.\35.vertical.buttons > .button, +.ui.five.vertical.buttons > .button { + height: 20%; +} +.ui.\36.vertical.buttons > .button, +.ui.six.vertical.buttons > .button { + height: 16.666%; +} +.ui.\37.vertical.buttons > .button, +.ui.seven.vertical.buttons > .button { + height: 14.285%; +} +.ui.\38.vertical.buttons > .button, +.ui.eight.vertical.buttons > .button { + height: 12.500%; +} +.ui.\39.vertical.buttons > .button, +.ui.nine.vertical.buttons > .button { + height: 11.11%; +} +.ui.\31\30.vertical.buttons > .button, +.ui.ten.vertical.buttons > .button { + height: 10%; +} +.ui.\31\31.vertical.buttons > .button, +.ui.eleven.vertical.buttons > .button { + height: 9.09%; +} +.ui.\31\32.vertical.buttons > .button, +.ui.twelve.vertical.buttons > .button { + height: 8.3333%; +} +/*------------------- + Colors +--------------------*/ +/*--- Black ---*/ +.ui.black.buttons .button, +.ui.black.button { + background-color: #5C6166; + color: #FFFFFF; +} +.ui.black.buttons .button:hover, +.ui.black.button:hover { + background-color: #4C4C4C; + color: #FFFFFF; +} +.ui.black.buttons .button:active, +.ui.black.button:active { + background-color: #333333; + color: #FFFFFF; +} +/*--- Green ---*/ +.ui.green.buttons .button, +.ui.green.button { + background-color: #5BBD72; + color: #FFFFFF; +} +.ui.green.buttons .button:hover, +.ui.green.button:hover, +.ui.green.buttons .active.button, +.ui.green.button.active { + background-color: #58cb73; + color: #FFFFFF; +} +.ui.green.buttons .button:active, +.ui.green.button:active { + background-color: #4CB164; + color: #FFFFFF; +} +/*--- Red ---*/ +.ui.red.buttons .button, +.ui.red.button { + background-color: #D95C5C; + color: #FFFFFF; +} +.ui.red.buttons .button:hover, +.ui.red.button:hover, +.ui.red.buttons .active.button, +.ui.red.button.active { + background-color: #E75859; + color: #FFFFFF; +} +.ui.red.buttons .button:active, +.ui.red.button:active { + background-color: #D24B4C; + color: #FFFFFF; +} +/*--- Orange ---*/ +.ui.orange.buttons .button, +.ui.orange.button { + background-color: #E96633; + color: #FFFFFF; +} +.ui.orange.buttons .button:hover, +.ui.orange.button:hover, +.ui.orange.buttons .active.button, +.ui.orange.button.active { + background-color: #FF7038; + color: #FFFFFF; +} +.ui.orange.buttons .button:active, +.ui.orange.button:active { + background-color: #DA683B; + color: #FFFFFF; +} +/*--- Blue ---*/ +.ui.blue.buttons .button, +.ui.blue.button { + background-color: #6ECFF5; + color: #FFFFFF; +} +.ui.blue.buttons .button:hover, +.ui.blue.button:hover, +.ui.blue.buttons .active.button, +.ui.blue.button.active { + background-color: #1AB8F3; + color: #FFFFFF; +} +.ui.blue.buttons .button:active, +.ui.blue.button:active { + background-color: #0AA5DF; + color: #FFFFFF; +} +/*--- Purple ---*/ +.ui.purple.buttons .button, +.ui.purple.button { + background-color: #564F8A; + color: #FFFFFF; +} +.ui.purple.buttons .button:hover, +.ui.purple.button:hover, +.ui.purple.buttons .active.button, +.ui.purple.button.active { + background-color: #3E3773; + color: #FFFFFF; +} +.ui.purple.buttons .button:active, +.ui.purple.button:active { + background-color: #2E2860; + color: #FFFFFF; +} +/*--- Teal ---*/ +.ui.teal.buttons .button, +.ui.teal.button { + background-color: #00B5AD; + color: #FFFFFF; +} +.ui.teal.buttons .button:hover, +.ui.teal.button:hover, +.ui.teal.buttons .active.button, +.ui.teal.button.active { + background-color: #009A93; + color: #FFFFFF; +} +.ui.teal.buttons .button:active, +.ui.teal.button:active { + background-color: #00847E; + color: #FFFFFF; +} +/*--------------- + Positive +----------------*/ +.ui.positive.buttons .button, +.ui.positive.button { + background-color: #5BBD72 !important; + color: #FFFFFF; +} +.ui.positive.buttons .button:hover, +.ui.positive.button:hover, +.ui.positive.buttons .active.button, +.ui.positive.button.active { + background-color: #58CB73 !important; + color: #FFFFFF; +} +.ui.positive.buttons .button:active, +.ui.positive.button:active { + background-color: #4CB164 !important; + color: #FFFFFF; +} +/*--------------- + Negative +----------------*/ +.ui.negative.buttons .button, +.ui.negative.button { + background-color: #D95C5C !important; + color: #FFFFFF; +} +.ui.negative.buttons .button:hover, +.ui.negative.button:hover, +.ui.negative.buttons .active.button, +.ui.negative.button.active { + background-color: #E75859 !important; + color: #FFFFFF; +} +.ui.negative.buttons .button:active, +.ui.negative.button:active { + background-color: #D24B4C !important; + color: #FFFFFF; +} +/******************************* + Groups +*******************************/ +.ui.buttons { + display: inline-block; + vertical-align: middle; +} +.ui.buttons:after { + content: "."; + display: block; + height: 0; + clear: both; + visibility: hidden; +} +.ui.buttons .button:first-child { + border-left: none; +} +.ui.buttons .button { + float: left; + border-radius: 0em; +} +.ui.buttons .button:first-child { + margin-left: 0em; + border-top-left-radius: 0.25em; + border-bottom-left-radius: 0.25em; +} +.ui.buttons .button:last-child { + border-top-right-radius: 0.25em; + border-bottom-right-radius: 0.25em; +} +/* Vertical Style */ +.ui.vertical.buttons { + display: inline-block; +} +.ui.vertical.buttons .button { + display: block; + float: none; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; +} +.ui.vertical.buttons .button:first-child, +.ui.vertical.buttons .mini.button:first-child, +.ui.vertical.buttons .tiny.button:first-child, +.ui.vertical.buttons .small.button:first-child, +.ui.vertical.buttons .massive.button:first-child, +.ui.vertical.buttons .huge.button:first-child { + margin-top: 0px; + border-radius: 0.25em 0.25em 0px 0px; +} +.ui.vertical.buttons .button:last-child, +.ui.vertical.buttons .mini.button:last-child, +.ui.vertical.buttons .tiny.button:last-child, +.ui.vertical.buttons .small.button:last-child, +.ui.vertical.buttons .massive.button:last-child, +.ui.vertical.buttons .huge.button:last-child, +.ui.vertical.buttons .gigantic.button:last-child { + border-radius: 0px 0px 0.25em 0.25em; +} + +/* + * # Semantic - Divider + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Divider +*******************************/ +.ui.divider { + margin: 1rem 0rem; + border-top: 1px solid rgba(0, 0, 0, 0.1); + border-bottom: 1px solid rgba(255, 255, 255, 0.8); + line-height: 1; + height: 0em; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} +.ui.vertical.divider, +.ui.horizontal.divider { + position: absolute; + border: none; + height: 0em; + margin: 0em; + background-color: transparent; + font-size: 0.875rem; + font-weight: bold; + text-align: center; + text-transform: uppercase; + color: rgba(0, 0, 0, 0.8); +} +/*-------------- + Vertical +---------------*/ +.ui.vertical.divider { + position: absolute; + z-index: 2; + top: 50%; + left: 50%; + margin: 0% 0% 0% -3%; + width: 6%; + height: 50%; + line-height: 0; + padding: 0em; +} +.ui.vertical.divider:before, +.ui.vertical.divider:after { + position: absolute; + left: 50%; + content: " "; + z-index: 3; + border-left: 1px solid rgba(0, 0, 0, 0.1); + border-right: 1px solid rgba(255, 255, 255, 0.8); + width: 0%; + height: 80%; +} +.ui.vertical.divider:before { + top: -100%; +} +.ui.vertical.divider:after { + top: auto; + bottom: 0px; +} +/*-------------- + Horizontal +---------------*/ +.ui.horizontal.divider { + position: relative; + top: 0%; + left: 0%; + margin: 1rem 1.5rem; + height: auto; + padding: 0em; + line-height: 1; +} +.ui.horizontal.divider:before, +.ui.horizontal.divider:after { + position: absolute; + content: " "; + z-index: 3; + width: 50%; + top: 50%; + height: 0%; + border-top: 1px solid rgba(0, 0, 0, 0.1); + border-bottom: 1px solid rgba(255, 255, 255, 0.8); +} +.ui.horizontal.divider:before { + left: 0%; + margin-left: -1.5rem; +} +.ui.horizontal.divider:after { + left: auto; + right: 0%; + margin-right: -1.5rem; +} +/*-------------- + Icon +---------------*/ +.ui.divider > .icon { + margin: 0em; + font-size: 1rem; + vertical-align: middle; +} +/******************************* + Variations +*******************************/ +/*-------------- + Inverted +---------------*/ +.ui.divider.inverted { + color: #ffffff; +} +.ui.vertical.inverted.divider, +.ui.horizontal.inverted.divider { + color: rgba(255, 255, 255, 0.9); +} +.ui.divider.inverted, +.ui.divider.inverted:after, +.ui.divider.inverted:before { + border-top-color: rgba(0, 0, 0, 0.15); + border-bottom-color: rgba(255, 255, 255, 0.15); + border-left-color: rgba(0, 0, 0, 0.15); + border-right-color: rgba(255, 255, 255, 0.15); +} +/*-------------- + Fitted +---------------*/ +.ui.fitted.divider { + margin: 0em; +} +/*-------------- + Clearing +---------------*/ +.ui.clearing.divider { + clear: both; +} +/*-------------- + Section +---------------*/ +.ui.section.divider { + margin-top: 2rem; + margin-bottom: 2rem; +} + +/* + * # Semantic - Header + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Header +*******************************/ +/* Standard */ +.ui.header { + border: none; + margin: 1em 0em 1rem; + padding: 0em; + font-size: 1.33em; + font-weight: bold; + line-height: 1.33; +} +.ui.header .sub.header { + font-size: 1rem; + font-weight: normal; + margin: 0em; + padding: 0em; + line-height: 1.2; + color: rgba(0, 0, 0, 0.5); +} +.ui.header .icon { + display: table-cell; + vertical-align: middle; + padding-right: 0.5em; +} +.ui.header .icon:only-child { + display: inline-block; + vertical-align: baseline; +} +.ui.header .content { + display: inline-block; + vertical-align: top; +} +.ui.header .icon + .content { + padding-left: 0.5em; + display: table-cell; +} +/* Positioning */ +.ui.header:first-child { + margin-top: 0em; +} +.ui.header:last-child { + margin-bottom: 0em; +} +.ui.header + p { + margin-top: 0em; +} +/*-------------- + Page Heading +---------------*/ +h1.ui.header { + min-height: 1rem; + line-height: 1.33; + font-size: 2rem; +} +h2.ui.header { + line-height: 1.33; + font-size: 1.75rem; +} +h3.ui.header { + line-height: 1.33; + font-size: 1.33rem; +} +h4.ui.header { + line-height: 1.33; + font-size: 1.1rem; +} +h5.ui.header { + line-height: 1.2; + font-size: 1rem; +} +/*-------------- + Content Heading +---------------*/ +.ui.huge.header { + min-height: 1em; + font-size: 2em; +} +.ui.large.header { + font-size: 1.75em; +} +.ui.medium.header { + font-size: 1.33em; +} +.ui.small.header { + font-size: 1.1em; +} +.ui.tiny.header { + font-size: 1em; +} +/******************************* + Types +*******************************/ +/*------------------- + Icon +--------------------*/ +.ui.icon.header { + display: inline-block; + text-align: center; +} +.ui.icon.header .icon { + float: none; + display: block; + font-size: 3em; + margin: 0em auto 0.2em; + padding: 0em; +} +.ui.icon.header .content { + display: block; +} +.ui.icon.header .circular.icon, +.ui.icon.header .square.icon { + font-size: 2em; +} +.ui.block.icon.header .icon { + margin-bottom: 0em; +} +.ui.icon.header.aligned { + margin-left: auto; + margin-right: auto; + display: block; +} +/******************************* + States +*******************************/ +.ui.disabled.header { + opacity: 0.5; +} +/******************************* + Variations +*******************************/ +/*------------------- + Colors +--------------------*/ +.ui.blue.header { + color: #6ECFF5 !important; +} +.ui.black.header { + color: #5C6166 !important; +} +.ui.green.header { + color: #A1CF64 !important; +} +.ui.red.header { + color: #D95C5C !important; +} +.ui.purple.header { + color: #564F8A !important; +} +.ui.teal.header { + color: #00B5AD !important; +} +.ui.blue.dividing.header { + border-bottom: 3px solid #6ECFF5; +} +.ui.black.dividing.header { + border-bottom: 3px solid #5C6166; +} +.ui.green.dividing.header { + border-bottom: 3px solid #A1CF64; +} +.ui.red.dividing.header { + border-bottom: 3px solid #D95C5C; +} +.ui.purple.dividing.header { + border-bottom: 3px solid #564F8A; +} +.ui.teal.dividing.header { + border-bottom: 3px solid #00B5AD; +} +/*------------------- + Inverted +--------------------*/ +.ui.inverted.header { + color: #FFFFFF; +} +.ui.inverted.header .sub.header { + color: rgba(255, 255, 255, 0.85); +} +/*------------------- + Inverted Colors +--------------------*/ +.ui.inverted.black.header { + background-color: #5C6166 !important; + color: #FFFFFF !important; +} +.ui.inverted.blue.header { + background-color: #6ECFF5 !important; + color: #FFFFFF !important; +} +.ui.inverted.green.header { + background-color: #A1CF64 !important; + color: #FFFFFF !important; +} +.ui.inverted.red.header { + background-color: #D95C5C !important; + color: #FFFFFF !important; +} +.ui.inverted.purple.header { + background-color: #564F8A !important; + color: #FFFFFF !important; +} +.ui.inverted.teal.header { + background-color: #00B5AD !important; + color: #FFFFFF !important; +} +.ui.inverted.block.header { + border-bottom: none; +} +/*------------------- + Aligned +--------------------*/ +.ui.left.aligned.header { + text-align: left; +} +.ui.right.aligned.header { + text-align: right; +} +.ui.center.aligned.header { + text-align: center; +} +.ui.justified.header { + text-align: justify; +} +.ui.justified.header:after { + display: inline-block; + content: ''; + width: 100%; +} +/*------------------- + Floated +--------------------*/ +.ui.floated.header, +.ui.left.floated.header { + float: left; + margin-top: 0em; + margin-right: 0.5em; +} +.ui.right.floated.header { + float: right; + margin-top: 0em; + margin-left: 0.5em; +} +/*------------------- + Fittted +--------------------*/ +.ui.fitted.header { + padding: 0em; +} +/*------------------- + Dividing +--------------------*/ +.ui.dividing.header { + padding-bottom: 0.2rem; + border-bottom: 1px solid rgba(0, 0, 0, 0.1); +} +.ui.dividing.header .sub.header { + padding-bottom: 0.5em; +} +.ui.dividing.header .icon { + margin-bottom: 0.2em; +} +/*------------------- + Block +--------------------*/ +.ui.block.header { + background-color: rgba(0, 0, 0, 0.05); + padding: 0.5em 1em; +} +/*------------------- + Attached +--------------------*/ +.ui.attached.header { + background-color: #E0E0E0; + padding: 0.5em 1rem; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); +} +.ui.top.attached.header { + margin-bottom: 0em; + border-radius: 0.3125em 0.3125em 0em 0em; +} +.ui.bottom.attached.header { + margin-top: 0em; + border-radius: 0em 0em 0.3125em 0.3125em; +} + +/* + * # Semantic - Icon + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/*! + * Font Awesome 3.2.1 + * the iconic font designed for Bootstrap + * ------------------------------------------------------------------------------ + * The full suite of pictographic icons, examples, and documentation can be + * found at http://fon.io. Stay up to date on Twitter at + * http://twitter.com/fon. + * + * License + * ------------------------------------------------------------------------------ + * - The Font Awesome font is licensed under SIL OFL 1.1 - + * http://scripts.sil.org/OFL + +/******************************* + Icon +*******************************/ +@font-face { + font-family: 'Icons'; + src: url(../fonts/icons.eot); + src: url(../fonts/icons.eot?#iefix) format('embedded-opentype'), url(../fonts/icons.svg#icons) format('svg'), url(../fonts/icons.woff) format('woff'), url(../fonts/icons.ttf) format('truetype'); + font-style: normal; + font-weight: normal; + font-variant: normal; + text-decoration: inherit; + text-transform: none; +} +i.icon { + display: inline-block; + opacity: 0.75; + margin: 0em 0.25em 0em 0em; + width: 1.23em; + height: 1em; + font-family: 'Icons'; + font-style: normal; + line-height: 1; + font-weight: normal; + text-decoration: inherit; + text-align: center; + speak: none; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +i.icon.left:before { + content: "\f060"; +} +i.icon.right:before { + content: "\f061"; +} +i.icon.add.sign.box:before { + content: "\f0fe"; +} +i.icon.add.sign:before { + content: "\f055"; +} +i.icon.add:before { + content: "\f067"; +} +i.icon.adjust:before { + content: "\f042"; +} +i.icon.adn:before { + content: "\f170"; +} +i.icon.align.center:before { + content: "\f037"; +} +i.icon.align.justify:before { + content: "\f039"; +} +i.icon.align.left:before { + content: "\f036"; +} +i.icon.align.right:before { + content: "\f038"; +} +i.icon.ambulance:before { + content: "\f0f9"; +} +i.icon.anchor:before { + content: "\f13d"; +} +i.icon.android:before { + content: "\f17b"; +} +i.icon.angle.down:before { + content: "\f107"; +} +i.icon.angle.left:before { + content: "\f104"; +} +i.icon.angle.right:before { + content: "\f105"; +} +i.icon.angle.up:before { + content: "\f106"; +} +i.icon.apple:before { + content: "\f179"; +} +i.icon.archive:before { + content: "\f187"; +} +i.icon.arrow.down:before { + content: "\f078"; +} +i.icon.arrow.left:before { + content: "\f053"; +} +i.icon.arrow.right:before { + content: "\f054"; +} +i.icon.arrow.sign.down:before { + content: "\f13a"; +} +i.icon.arrow.sign.left:before { + content: "\f137"; +} +i.icon.arrow.sign.right:before { + content: "\f138"; +} +i.icon.arrow.sign.up:before { + content: "\f139"; +} +i.icon.arrow.up:before { + content: "\f077"; +} +i.icon.asterisk:before { + content: "\f069"; +} +i.icon.attachment:before { + content: "\f0c6"; +} +i.icon.attention:before { + content: "\f06a"; +} +i.icon.backward:before { + content: "\f04a"; +} +i.icon.ban.circle:before { + content: "\f05e"; +} +i.icon.bar.chart:before { + content: "\f080"; +} +i.icon.barcode:before { + content: "\f02a"; +} +i.icon.beer:before { + content: "\f0fc"; +} +i.icon.bell.outline:before { + content: "\f0a2"; +} +i.icon.bell:before { + content: "\f0f3"; +} +i.icon.bitbucket.sign:before { + content: "\f172"; +} +i.icon.bitbucket:before { + content: "\f171"; +} +i.icon.bitcoin:before { + content: "\f15a"; +} +i.icon.bold:before { + content: "\f032"; +} +i.icon.bolt:before { + content: "\f0e7"; +} +i.icon.book:before { + content: "\f02d"; +} +i.icon.bookmark.empty:before { + content: "\f097"; +} +i.icon.bookmark:before { + content: "\f02e"; +} +i.icon.box.arrow.down:before { + content: "\f150"; +} +/*rtl:ignore*/ +i.icon.box.arrow.right:before { + content: "\f152"; +} +i.icon.box.arrow.up:before { + content: "\f151"; +} +i.icon.briefcase:before { + content: "\f0b1"; +} +i.icon.browser:before { + content: "\f022"; +} +i.icon.bug:before { + content: "\f188"; +} +i.icon.building:before { + content: "\f0f7"; +} +i.icon.bullhorn:before { + content: "\f0a1"; +} +i.icon.bullseye:before { + content: "\f140"; +} +i.icon.calendar.empty:before { + content: "\f133"; +} +i.icon.calendar:before { + content: "\f073"; +} +i.icon.camera.retro:before { + content: "\f083"; +} +i.icon.camera:before { + content: "\f030"; +} +i.icon.triangle.down:before { + content: "\f0d7"; +} +i.icon.triangle.left:before { + content: "\f0d9"; +} +i.icon.triangle.right:before { + content: "\f0da"; +} +i.icon.triangle.up:before { + content: "\f0d8"; +} +i.icon.cart:before { + content: "\f07a"; +} +i.icon.certificate:before { + content: "\f0a3"; +} +i.icon.chat.outline:before { + content: "\f0e6"; +} +i.icon.chat:before { + content: "\f086"; +} +i.icon.checkbox.empty:before { + content: "\f096"; +} +i.icon.checkbox.minus:before { + content: "\f147"; +} +i.icon.checked.checkbox:before { + content: "\f046"; +} +i.icon.checkmark.sign:before { + content: "\f14a"; +} +i.icon.checkmark:before { + content: "\f00c"; +} +i.icon.circle.blank:before { + content: "\f10c"; +} +i.icon.circle.down:before { + content: "\f0ab"; +} +i.icon.circle.left:before { + content: "\f0a8"; +} +i.icon.circle.right:before { + content: "\f0a9"; +} +i.icon.circle.up:before { + content: "\f0aa"; +} +i.icon.circle:before { + content: "\f111"; +} +i.icon.cloud.download:before { + content: "\f0ed"; +} +i.icon.cloud.upload:before { + content: "\f0ee"; +} +i.icon.cloud:before { + content: "\f0c2"; +} +i.icon.code.fork:before { + content: "\f126"; +} +i.icon.code:before { + content: "\f121"; +} +i.icon.coffee:before { + content: "\f0f4"; +} +i.icon.collapse:before { + content: "\f117"; +} +i.icon.comment.outline:before { + content: "\f0e5"; +} +i.icon.comment:before { + content: "\f075"; +} +i.icon.copy:before { + content: "\f0c5"; +} +i.icon.crop:before { + content: "\f125"; +} +i.icon.css3:before { + content: "\f13c"; +} +i.icon.cut:before { + content: "\f0c4"; +} +i.icon.dashboard:before { + content: "\f0e4"; +} +i.icon.desktop:before { + content: "\f108"; +} +i.icon.doctor:before { + content: "\f0f0"; +} +i.icon.dollar:before { + content: "\f155"; +} +i.icon.double.angle.down:before { + content: "\f103"; +} +i.icon.double.angle.left:before { + content: "\f100"; +} +i.icon.double.angle.right:before { + content: "\f101"; +} +i.icon.double.angle.up:before { + content: "\f102"; +} +i.icon.down:before { + content: "\f063"; +} +i.icon.download.disk:before { + content: "\f019"; +} +i.icon.download:before { + content: "\f01a"; +} +i.icon.dribbble:before { + content: "\f17d"; +} +i.icon.dropbox:before { + content: "\f16b"; +} +i.icon.edit.sign:before { + content: "\f14b"; +} +i.icon.edit:before { + content: "\f044"; +} +i.icon.eject:before { + content: "\f052"; +} +i.icon.ellipsis.horizontal:before { + content: "\f141"; +} +i.icon.ellipsis.vertical:before { + content: "\f142"; +} +i.icon.eraser:before { + content: "\f12d"; +} +i.icon.euro:before { + content: "\f153"; +} +i.icon.exchange:before { + content: "\f0ec"; +} +i.icon.exclamation:before { + content: "\f12a"; +} +i.icon.expand:before { + content: "\f116"; +} +i.icon.external.url.sign:before { + content: "\f14c"; +} +i.icon.external.url:before { + content: "\f08e"; +} +i.icon.facebook.sign:before { + content: "\f082"; +} +i.icon.facebook:before { + content: "\f09a"; +} +i.icon.facetime.video:before { + content: "\f03d"; +} +i.icon.fast.backward:before { + content: "\f049"; +} +i.icon.fast.forward:before { + content: "\f050"; +} +i.icon.female:before { + content: "\f182"; +} +i.icon.fighter.jet:before { + content: "\f0fb"; +} +i.icon.file.outline:before { + content: "\f016"; +} +i.icon.file.text.outline:before { + content: "\f0f6"; +} +i.icon.file.text:before { + content: "\f15c"; +} +i.icon.file:before { + content: "\f15b"; +} +i.icon.filter:before { + content: "\f0b0"; +} +i.icon.fire.extinguisher:before { + content: "\f134"; +} +i.icon.fire:before { + content: "\f06d"; +} +i.icon.flag.checkered:before { + content: "\f11e"; +} +i.icon.flag.empty:before { + content: "\f11d"; +} +i.icon.flag:before { + content: "\f024"; +} +i.icon.flickr:before { + content: "\f16e"; +} +i.icon.folder.open.outline:before { + content: "\f115"; +} +i.icon.folder.open:before { + content: "\f07c"; +} +i.icon.folder.outline:before { + content: "\f114"; +} +i.icon.folder:before { + content: "\f07b"; +} +i.icon.font:before { + content: "\f031"; +} +i.icon.food:before { + content: "\f0f5"; +} +i.icon.forward.mail:before { + content: "\f064"; +} +i.icon.forward:before { + content: "\f04e"; +} +i.icon.foursquare:before { + content: "\f180"; +} +i.icon.frown:before { + content: "\f119"; +} +i.icon.fullscreen:before { + content: "\f0b2"; +} +i.icon.gamepad:before { + content: "\f11b"; +} +i.icon.gift:before { + content: "\f06b"; +} +i.icon.github.alternate:before { + content: "\f09b"; +} +i.icon.github.sign:before { + content: "\f092"; +} +i.icon.github:before { + content: "\f113"; +} +i.icon.gittip:before { + content: "\f184"; +} +i.icon.glass:before { + content: "\f000"; +} +i.icon.globe:before { + content: "\f0ac"; +} +i.icon.google.plus.sign:before { + content: "\f0d4"; +} +i.icon.google.plus:before { + content: "\f0d5"; +} +i.icon.h.sign:before { + content: "\f0fd"; +} +i.icon.hand.down:before { + content: "\f0a7"; +} +i.icon.hand.left:before { + content: "\f0a5"; +} +i.icon.hand.right:before { + content: "\f0a4"; +} +i.icon.hand.up:before { + content: "\f0a6"; +} +i.icon.hdd:before { + content: "\f0a0"; +} +i.icon.headphones:before { + content: "\f025"; +} +i.icon.heart.empty:before { + content: "\f08a"; +} +i.icon.heart:before { + content: "\f004"; +} +i.icon.help:before { + content: "\f059"; +} +i.icon.hide:before { + content: "\f070"; +} +i.icon.home:before { + content: "\f015"; +} +i.icon.hospital:before { + content: "\f0f8"; +} +i.icon.html5:before { + content: "\f13b"; +} +i.icon.inbox:before { + content: "\f01c"; +} +i.icon.indent.left:before { + content: "\f03b"; +} +i.icon.indent.right:before { + content: "\f03c"; +} +i.icon.info.letter:before { + content: "\f129"; +} +i.icon.info:before { + content: "\f05a"; +} +i.icon.instagram:before { + content: "\f16d"; +} +i.icon.italic:before { + content: "\f033"; +} +i.icon.key:before { + content: "\f084"; +} +i.icon.keyboard:before { + content: "\f11c"; +} +i.icon.lab:before { + content: "\f0c3"; +} +i.icon.laptop:before { + content: "\f109"; +} +i.icon.layout.block:before { + content: "\f009"; +} +i.icon.layout.column:before { + content: "\f0db"; +} +i.icon.layout.grid:before { + content: "\f00a"; +} +i.icon.layout.list:before { + content: "\f00b"; +} +i.icon.leaf:before { + content: "\f06c"; +} +i.icon.legal:before { + content: "\f0e3"; +} +i.icon.lemon:before { + content: "\f094"; +} +i.icon.level.down:before { + content: "\f149"; +} +i.icon.level.up:before { + content: "\f148"; +} +i.icon.lightbulb:before { + content: "\f0eb"; +} +i.icon.linkedin.sign:before { + content: "\f08c"; +} +i.icon.linkedin:before { + content: "\f0e1"; +} +i.icon.linux:before { + content: "\f17c"; +} +i.icon.list.ordered:before { + content: "\f0cb"; +} +i.icon.list.unordered:before { + content: "\f0ca"; +} +i.icon.list:before { + content: "\f03a"; +} +i.icon.loading:before { + content: "\f110"; +} +i.icon.location:before { + content: "\f124"; +} +i.icon.lock:before { + content: "\f023"; +} +i.icon.long.arrow.down:before { + content: "\f175"; +} +i.icon.long.arrow.left:before { + content: "\f177"; +} +i.icon.long.arrow.right:before { + content: "\f178"; +} +i.icon.long.arrow.up:before { + content: "\f176"; +} +i.icon.magic:before { + content: "\f0d0"; +} +i.icon.magnet:before { + content: "\f076"; +} +i.icon.mail.outline:before { + content: "\f003"; +} +i.icon.mail.reply:before { + content: "\f112"; +} +i.icon.mail:before { + content: "\f0e0"; +} +i.icon.male:before { + content: "\f183"; +} +i.icon.map.marker:before { + content: "\f041"; +} +i.icon.map:before { + content: "\f14e"; +} +i.icon.maxcdn:before { + content: "\f136"; +} +i.icon.medkit:before { + content: "\f0fa"; +} +i.icon.meh:before { + content: "\f11a"; +} +i.icon.minus.sign.alternate:before { + content: "\f146"; +} +i.icon.minus.sign:before { + content: "\f056"; +} +i.icon.minus:before { + content: "\f068"; +} +i.icon.mobile:before { + content: "\f10b"; +} +i.icon.money:before { + content: "\f0d6"; +} +i.icon.moon:before { + content: "\f186"; +} +i.icon.move:before { + content: "\f047"; +} +i.icon.music:before { + content: "\f001"; +} +i.icon.mute:before { + content: "\f131"; +} +i.icon.off:before { + content: "\f011"; +} +i.icon.ok.circle:before { + content: "\f05d"; +} +i.icon.ok.sign:before { + content: "\f058"; +} +i.icon.paste:before { + content: "\f0ea"; +} +i.icon.pause:before { + content: "\f04c"; +} +i.icon.payment:before { + content: "\f09d"; +} +i.icon.pencil:before { + content: "\f040"; +} +i.icon.phone.sign:before { + content: "\f098"; +} +i.icon.phone:before { + content: "\f095"; +} +i.icon.photo:before { + content: "\f03e"; +} +i.icon.pin:before { + content: "\f08d"; +} +i.icon.pinterest.sign:before { + content: "\f0d3"; +} +i.icon.pinterest:before { + content: "\f0d2"; +} +i.icon.plane:before { + content: "\f072"; +} +i.icon.play.circle:before { + content: "\f01d"; +} +i.icon.play.sign:before { + content: "\f144"; +} +i.icon.play:before { + content: "\f04b"; +} +i.icon.pound:before { + content: "\f154"; +} +i.icon.print:before { + content: "\f02f"; +} +i.icon.puzzle.piece:before { + content: "\f12e"; +} +i.icon.qr.code:before { + content: "\f029"; +} +i.icon.question:before { + content: "\f128"; +} +i.icon.quote.left:before { + content: "\f10d"; +} +i.icon.quote.right:before { + content: "\f10e"; +} +i.icon.refresh:before { + content: "\f021"; +} +i.icon.remove.circle:before { + content: "\f05c"; +} +i.icon.remove.sign:before { + content: "\f057"; +} +i.icon.remove:before { + content: "\f00d"; +} +i.icon.renren:before { + content: "\f18b"; +} +i.icon.reorder:before { + content: "\f0c9"; +} +i.icon.repeat:before { + content: "\f01e"; +} +i.icon.reply.all.mail:before { + content: "\f122"; +} +i.icon.resize.full:before { + content: "\f065"; +} +i.icon.resize.horizontal:before { + content: "\f07e"; +} +i.icon.resize.small:before { + content: "\f066"; +} +i.icon.resize.vertical:before { + content: "\f07d"; +} +i.icon.retweet:before { + content: "\f079"; +} +i.icon.road:before { + content: "\f018"; +} +i.icon.rocket:before { + content: "\f135"; +} +i.icon.rss.sign:before { + content: "\f143"; +} +i.icon.rss:before { + content: "\f09e"; +} +i.icon.rupee:before { + content: "\f156"; +} +i.icon.save:before { + content: "\f0c7"; +} +i.icon.screenshot:before { + content: "\f05b"; +} +i.icon.search:before { + content: "\f002"; +} +i.icon.setting:before { + content: "\f013"; +} +i.icon.settings:before { + content: "\f085"; +} +i.icon.share.sign:before { + content: "\f14d"; +} +i.icon.share:before { + content: "\f045"; +} +i.icon.shield:before { + content: "\f132"; +} +i.icon.shuffle:before { + content: "\f074"; +} +i.icon.sign.in:before { + content: "\f090"; +} +i.icon.sign.out:before { + content: "\f08b"; +} +i.icon.sign:before { + content: "\f0c8"; +} +i.icon.signal:before { + content: "\f012"; +} +i.icon.sitemap:before { + content: "\f0e8"; +} +i.icon.skype:before { + content: "\f17e"; +} +i.icon.smile:before { + content: "\f118"; +} +i.icon.sort.ascending:before { + content: "\f0de"; +} +i.icon.sort.descending:before { + content: "\f0dd"; +} +i.icon.sort.alphabet.descending:before { + content: "\f15e"; +} +i.icon.sort.alphabet:before { + content: "\f15d"; +} +i.icon.sort.attributes.descending:before { + content: "\f161"; +} +i.icon.sort.attributes:before { + content: "\f160"; +} +i.icon.sort.order.descending:before { + content: "\f163"; +} +i.icon.sort.order:before { + content: "\f162"; +} +i.icon.sort:before { + content: "\f0dc"; +} +i.icon.stackexchange:before { + content: "\f16c"; +} +i.icon.star.empty:before { + content: "\f006"; +} +i.icon.star.half.empty:before { + content: "\f123"; +} +i.icon.star.half.full:before, +i.icon.star.half:before { + content: "\f089"; +} +i.icon.star:before { + content: "\f005"; +} +i.icon.step.backward:before { + content: "\f048"; +} +i.icon.step.forward:before { + content: "\f051"; +} +i.icon.stethoscope:before { + content: "\f0f1"; +} +i.icon.stop:before { + content: "\f04d"; +} +i.icon.strikethrough:before { + content: "\f0cc"; +} +i.icon.subscript:before { + content: "\f12c"; +} +i.icon.suitcase:before { + content: "\f0f2"; +} +i.icon.sun:before { + content: "\f185"; +} +i.icon.superscript:before { + content: "\f12b"; +} +i.icon.table:before { + content: "\f0ce"; +} +i.icon.tablet:before { + content: "\f10a"; +} +i.icon.tag:before { + content: "\f02b"; +} +i.icon.tags:before { + content: "\f02c"; +} +i.icon.tasks:before { + content: "\f0ae"; +} +i.icon.terminal:before { + content: "\f120"; +} +i.icon.text.height:before { + content: "\f034"; +} +i.icon.text.width:before { + content: "\f035"; +} +i.icon.thumbs.down.outline:before { + content: "\f088"; +} +i.icon.thumbs.down:before { + content: "\f165"; +} +i.icon.thumbs.up.outline:before { + content: "\f087"; +} +i.icon.thumbs.up:before { + content: "\f164"; +} +i.icon.ticket:before { + content: "\f145"; +} +i.icon.time:before { + content: "\f017"; +} +i.icon.tint:before { + content: "\f043"; +} +i.icon.trash:before { + content: "\f014"; +} +i.icon.trello:before { + content: "\f181"; +} +i.icon.trophy:before { + content: "\f091"; +} +i.icon.truck:before { + content: "\f0d1"; +} +i.icon.tumblr.sign:before { + content: "\f174"; +} +i.icon.tumblr:before { + content: "\f173"; +} +i.icon.twitter.sign:before { + content: "\f081"; +} +i.icon.twitter:before { + content: "\f099"; +} +i.icon.umbrella:before { + content: "\f0e9"; +} +i.icon.underline:before { + content: "\f0cd"; +} +i.icon.undo:before { + content: "\f0e2"; +} +i.icon.unhide:before { + content: "\f06e"; +} +i.icon.unlink:before { + content: "\f127"; +} +i.icon.unlock.alternate:before { + content: "\f13e"; +} +i.icon.unlock:before { + content: "\f09c"; +} +i.icon.unmute:before { + content: "\f130"; +} +i.icon.up:before { + content: "\f062"; +} +i.icon.upload.disk:before { + content: "\f093"; +} +i.icon.upload:before { + content: "\f01b"; +} +i.icon.url:before { + content: "\f0c1"; +} +i.icon.user:before { + content: "\f007"; +} +i.icon.users:before { + content: "\f0c0"; +} +i.icon.video:before { + content: "\f008"; +} +i.icon.vk:before { + content: "\f189"; +} +i.icon.volume.down:before { + content: "\f027"; +} +i.icon.volume.off:before { + content: "\f026"; +} +i.icon.volume.up:before { + content: "\f028"; +} +i.icon.warning:before { + content: "\f071"; +} +i.icon.weibo:before { + content: "\f18a"; +} +i.icon.windows:before { + content: "\f17a"; +} +i.icon.won:before { + content: "\f159"; +} +i.icon.wrench:before { + content: "\f0ad"; +} +i.icon.xing.sign:before { + content: "\f169"; +} +i.icon.xing:before { + content: "\f168"; +} +i.icon.yen:before { + content: "\f157"; +} +i.icon.youtube.play:before { + content: "\f16a"; +} +i.icon.youtube.sign:before { + content: "\f166"; +} +i.icon.youtube:before { + content: "\f167"; +} +i.icon.yuan:before { + content: "\f158"; +} +i.icon.zoom.in:before { + content: "\f00e"; +} +i.icon.zoom.out:before { + content: "\f010"; +} +/*-------------- + Aliases +---------------*/ +i.icon.check:before { + content: "\f00c"; +} +i.icon.close:before { + content: "\f00d"; +} +i.icon.delete:before { + content: "\f00d"; +} +i.icon.like:before { + content: "\f004"; +} +i.icon.plus:before { + content: "\f067"; +} +i.icon.signup:before { + content: "\f044"; +} +/*-------------- + Spacing Fix +---------------*/ +/* stars are usually consecutive */ +i.icon.star { + width: auto; + margin: 0em; +} +/* left side icons */ +i.icon.left { + width: auto; + margin: 0em 0.5em 0em 0em; +} +/* right side icons */ +i.icon.search, +i.icon.right { + width: auto; + margin: 0em 0em 0em 0.5em; +} +/******************************* + Types +*******************************/ +/*-------------- + Loading +---------------*/ +i.icon.loading { + -webkit-animation: icon-loading 2s linear infinite; + -moz-animation: icon-loading 2s linear infinite; + -ms-animation: icon-loading 2s linear infinite; + animation: icon-loading 2s linear infinite; +} +@keyframes icon-loading { + from { + -webkit-transform: rotate(0deg); + -moz-transform: rotate(0deg); + -ms-transform: rotate(0deg); + transform: rotate(0deg); + } + to { + -webkit-transform: rotate(360deg); + -moz-transform: rotate(360deg); + -ms-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-moz-keyframes icon-loading { + from { + -moz-transform: rotate(0deg); + transform: rotate(0deg); + } + to { + -moz-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-webkit-keyframes icon-loading { + from { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + to { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-ms-keyframes icon-loading { + from { + -ms-transform: rotate(0deg); + transform: rotate(0deg); + } + to { + -ms-transform: rotate(360deg); + transform: rotate(360deg); + } +} +/******************************* + States +*******************************/ +i.icon.hover { + opacity: 1; +} +i.icon.active { + opacity: 1; +} +i.emphasized.icon { + opacity: 1; +} +i.icon.disabled { + opacity: 0.3; +} +/******************************* + Variations +*******************************/ +/*------------------- + Link +--------------------*/ +i.link.icon { + cursor: pointer; + opacity: 0.7; + -webkit-transition: opacity 0.3s ease-out; + -moz-transition: opacity 0.3s ease-out; + transition: opacity 0.3s ease-out; +} +i.link.icon:hover { + opacity: 1 !important; +} +/*------------------- + Circular +--------------------*/ +i.circular.icon { + border-radius: 500em !important; + padding: 0.5em 0.35em !important; + -webkit-box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset; + box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset; + line-height: 1 !important; + width: 2em !important; + height: 2em !important; +} +i.circular.inverted.icon { + border: none; + -webkit-box-shadow: none; + box-shadow: none; +} +/*------------------- + Flipped +--------------------*/ +i.flipped.icon, +i.horizontally.flipped.icon { + -webkit-transform: scale(-1, 1); + -moz-transform: scale(-1, 1); + -ms-transform: scale(-1, 1); + transform: scale(-1, 1); +} +i.vertically.flipped.icon { + -webkit-transform: scale(1, -1); + -moz-transform: scale(1, -1); + -ms-transform: scale(1, -1); + transform: scale(1, -1); +} +/*------------------- + Rotated +--------------------*/ +i.rotated.icon, +i.right.rotated.icon, +i.clockwise.rotated.icon { + -webkit-transform: rotate(90deg); + -moz-transform: rotate(90deg); + -ms-transform: rotate(90deg); + transform: rotate(90deg); +} +i.left.rotated.icon, +i.counterclockwise.rotated.icon { + -webkit-transform: rotate(-90deg); + -moz-transform: rotate(-90deg); + -ms-transform: rotate(-90deg); + transform: rotate(-90deg); +} +/*------------------- + Square +--------------------*/ +i.square.icon { + width: 2em; + height: 2em; + padding: 0.5em 0.35em !important; + -webkit-box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset; + box-shadow: 0em 0em 0em 0.1em rgba(0, 0, 0, 0.1) inset; + vertical-align: baseline; +} +i.square.inverted.icon { + border: none; + -webkit-box-shadow: none; + box-shadow: none; +} +/*------------------- + Inverted +--------------------*/ +i.inverted.icon { + background-color: #222222; + color: #FFFFFF; + -moz-osx-font-smoothing: grayscale; +} +/*------------------- + Colors +--------------------*/ +i.blue.icon { + color: #6ECFF5 !important; +} +i.black.icon { + color: #5C6166 !important; +} +i.green.icon { + color: #A1CF64 !important; +} +i.red.icon { + color: #D95C5C !important; +} +i.purple.icon { + color: #564F8A !important; +} +i.orange.icon { + color: #F05940 !important; +} +i.teal.icon { + color: #00B5AD !important; +} +/*------------------- + Inverted Colors +--------------------*/ +i.inverted.black.icon { + background-color: #5C6166 !important; + color: #FFFFFF !important; +} +i.inverted.blue.icon { + background-color: #6ECFF5 !important; + color: #FFFFFF !important; +} +i.inverted.green.icon { + background-color: #A1CF64 !important; + color: #FFFFFF !important; +} +i.inverted.red.icon { + background-color: #D95C5C !important; + color: #FFFFFF !important; +} +i.inverted.purple.icon { + background-color: #564F8A !important; + color: #FFFFFF !important; +} +i.inverted.orange.icon { + background-color: #F05940 !important; + color: #FFFFFF !important; +} +i.inverted.teal.icon { + background-color: #00B5AD !important; + color: #FFFFFF !important; +} +/*------------------- + Sizes +--------------------*/ +i.small.icon { + font-size: 0.875em; +} +i.icon { + font-size: 1em; +} +i.large.icon { + font-size: 1.5em; + vertical-align: middle; +} +i.big.icon { + font-size: 2em; + vertical-align: middle; +} +i.huge.icon { + font-size: 4em; + vertical-align: middle; +} +i.massive.icon { + font-size: 8em; + vertical-align: middle; +} + +/* + * # Semantic - Image + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Image +*******************************/ +.ui.image { + position: relative; + display: inline-block; + vertical-align: middle; + max-width: 100%; + background-color: rgba(0, 0, 0, 0.05); +} +img.ui.image { + display: block; + background: none; +} +.ui.image img { + display: block; + max-width: 100%; + height: auto; +} +/******************************* + States +*******************************/ +.ui.disabled.image { + cursor: default; + opacity: 0.3; +} +/******************************* + Variations +*******************************/ +/*-------------- + Rounded +---------------*/ +.ui.rounded.images .image, +.ui.rounded.images img, +.ui.rounded.image img, +.ui.rounded.image { + border-radius: 0.3125em; +} +/*-------------- + Circular +---------------*/ +.ui.circular.images .image, +.ui.circular.images img, +.ui.circular.image img, +.ui.circular.image { + border-radius: 500rem; +} +/*-------------- + Fluid +---------------*/ +.ui.fluid.images, +.ui.fluid.image, +.ui.fluid.images img, +.ui.fluid.image img { + display: block; + width: 100%; +} +/*-------------- + Avatar +---------------*/ +.ui.avatar.images .image, +.ui.avatar.images img, +.ui.avatar.image img, +.ui.avatar.image { + margin-right: 0.5em; + display: inline-block; + width: 2em; + height: 2em; + border-radius: 500rem; +} +/*------------------- + Floated +--------------------*/ +.ui.floated.image, +.ui.floated.images { + float: left; + margin-right: 1em; + margin-bottom: 1em; +} +.ui.right.floated.images, +.ui.right.floated.image { + float: right; + margin-bottom: 1em; + margin-left: 1em; +} +/*-------------- + Sizes +---------------*/ +.ui.tiny.images .image, +.ui.tiny.images img, +.ui.tiny.image { + width: 20px; + font-size: 0.7rem; +} +.ui.mini.images .image, +.ui.mini.images img, +.ui.mini.image { + width: 35px; + font-size: 0.8rem; +} +.ui.small.images .image, +.ui.small.images img, +.ui.small.image { + width: 80px; + font-size: 0.9rem; +} +.ui.medium.images .image, +.ui.medium.images img, +.ui.medium.image { + width: 300px; + font-size: 1rem; +} +.ui.large.images .image, +.ui.large.images img, +.ui.large.image { + width: 450px; + font-size: 1.1rem; +} +.ui.huge.images .image, +.ui.huge.images img, +.ui.huge.image { + width: 600px; + font-size: 1.2rem; +} +/******************************* + Groups +*******************************/ +.ui.images { + font-size: 0em; + margin: 0em -0.25rem 0rem; +} +.ui.images .image, +.ui.images img { + display: inline-block; + margin: 0em 0.25em 0.5em; +} + +/* + * # Semantic - Input + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Standard +*******************************/ +/*-------------------- + Inputs +---------------------*/ +.ui.input { + display: inline-block; + position: relative; + color: rgba(0, 0, 0, 0.7); +} +.ui.input input { + width: 100%; + font-family: "Helvetica Neue", "Helvetica", Arial; + margin: 0em; + padding: 0.65em 1em; + font-size: 1em; + background-color: #FFFFFF; + border: 1px solid rgba(0, 0, 0, 0.15); + outline: none; + color: rgba(0, 0, 0, 0.7); + border-radius: 0.3125em; + -webkit-transition: background-color 0.3s ease-out, -webkit-box-shadow 0.2s ease, border-color 0.2s ease; + -moz-transition: background-color 0.3s ease-out, box-shadow 0.2s ease, border-color 0.2s ease; + transition: background-color 0.3s ease-out, box-shadow 0.2s ease, border-color 0.2s ease; + -webkit-tap-highlight-color: rgba(255, 255, 255, 0); + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +/*-------------------- + Placeholder +---------------------*/ +/* browsers require these rules separate */ +.ui.input::-webkit-input-placeholder { + color: #BBBBBB; +} +.ui.input::-moz-placeholder { + color: #BBBBBB; +} +/******************************* + States +*******************************/ +/*-------------------- + Active +---------------------*/ +.ui.input input:active, +.ui.input.down input { + border-color: rgba(0, 0, 0, 0.3); + background-color: #FAFAFA; +} +/*-------------------- + Loading +---------------------*/ +.ui.loading.input > .icon { + background: url(../images/loader-mini.gif) no-repeat 50% 50%; +} +.ui.loading.input > .icon:before, +.ui.loading.input > .icon:after { + display: none; +} +/*-------------------- + Focus +---------------------*/ +.ui.input.focus input, +.ui.input input:focus { + border-color: rgba(0, 0, 0, 0.2); + color: rgba(0, 0, 0, 0.85); +} +.ui.input.focus input input::-webkit-input-placeholder, +.ui.input input:focus input::-webkit-input-placeholder { + color: #AAAAAA; +} +.ui.input.focus input input::-moz-placeholder, +.ui.input input:focus input::-moz-placeholder { + color: #AAAAAA; +} +/*-------------------- + Error +---------------------*/ +.ui.input.error input { + background-color: #FFFAFA; + border-color: #E7BEBE; + color: #D95C5C; +} +/* Error Placeholder */ +.ui.input.error input ::-webkit-input-placeholder { + color: rgba(255, 80, 80, 0.4); +} +.ui.input.error input ::-moz-placeholder { + color: rgba(255, 80, 80, 0.4); +} +.ui.input.error input :focus::-webkit-input-placeholder { + color: rgba(255, 80, 80, 0.7); +} +.ui.input.error input :focus::-moz-placeholder { + color: rgba(255, 80, 80, 0.7); +} +/******************************* + Variations +*******************************/ +/*-------------------- + Transparent +---------------------*/ +.ui.transparent.input input { + border: none; + background-color: transparent; +} +/*-------------------- + Icon +---------------------*/ +.ui.icon.input > .icon { + cursor: default; + position: absolute; + opacity: 0.5; + top: 0px; + right: 0px; + margin: 0em; + width: 2.6em; + height: 100%; + padding-top: 0.82em; + text-align: center; + border-radius: 0em 0.3125em 0.3125em 0em; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + -webkit-transition: opacity 0.3s ease-out; + -moz-transition: opacity 0.3s ease-out; + transition: opacity 0.3s ease-out; +} +.ui.icon.input > .link.icon { + cursor: pointer; +} +.ui.icon.input input { + padding-right: 3em !important; +} +.ui.icon.input > .circular.icon { + top: 0.35em; + right: 0.5em; +} +/* Left Side */ +.ui.left.icon.input > .icon { + right: auto; + left: 1px; + border-radius: 0.3125em 0em 0em 0.3125em; +} +.ui.left.icon.input > .circular.icon { + right: auto; + left: 0.5em; +} +.ui.left.icon.input > input { + padding-left: 3em !important; + padding-right: 1.2em !important; +} +/* Focus */ +.ui.icon.input > input:focus ~ .icon { + opacity: 1; +} +/*-------------------- + Labeled +---------------------*/ +.ui.labeled.input .corner.label { + font-size: 0.7em; + border-radius: 0 0.3125em; +} +.ui.labeled.input .left.corner.label { + border-radius: 0.3125em 0; +} +.ui.labeled.input input { + padding-right: 2.5em !important; +} +/* Spacing with corner label */ +.ui.labeled.icon.input:not(.left) > input { + padding-right: 3.25em !important; +} +.ui.labeled.icon.input:not(.left) > .icon { + margin-right: 1.25em; +} +/*-------------------- + Action +---------------------*/ +.ui.action.input { + display: table; +} +.ui.action.input > input { + display: table-cell; + border-top-right-radius: 0px !important; + border-bottom-right-radius: 0px !important; + border-right: none; +} +.ui.action.input > .button, +.ui.action.input > .buttons { + display: table-cell; + border-top-left-radius: 0px; + border-bottom-left-radius: 0px; + white-space: nowrap; +} +.ui.action.input > .button > .icon, +.ui.action.input > .buttons > .button > .icon { + display: inline; + vertical-align: top; +} +.ui.fluid.action.input { + display: table; + width: 100%; +} +.ui.fluid.action.input > .button { + width: 0.01%; +} +/*-------------------- + Fluid +---------------------*/ +.ui.fluid.input { + display: block; +} +/*-------------------- + Size +---------------------*/ +.ui.mini.input { + font-size: 0.8125em; +} +.ui.small.input { + font-size: 0.875em; +} +.ui.input { + font-size: 1em; +} +.ui.large.input { + font-size: 1.125em; +} +.ui.big.input { + font-size: 1.25em; +} +.ui.huge.input { + font-size: 1.375em; +} +.ui.massive.input { + font-size: 1.5em; +} + +/* + * # Semantic - Label + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Label +*******************************/ +.ui.label { + display: inline-block; + vertical-align: middle; + margin: -0.25em 0.25em 0em; + background-color: #E8E8E8; + border-color: #E8E8E8; + padding: 0.5em 0.8em; + color: rgba(0, 0, 0, 0.65); + text-transform: uppercase; + font-weight: normal; + border-radius: 0.325em; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + -webkit-transition: background 0.1s linear + ; + -moz-transition: background 0.1s linear + ; + transition: background 0.1s linear + ; +} +.ui.label:first-child { + margin-left: 0em; +} +.ui.label:last-child { + margin-right: 0em; +} +/* Link */ +a.ui.label { + cursor: pointer; +} +/* Inside Link */ +.ui.label a { + cursor: pointer; + color: inherit; + opacity: 0.8; + -webkit-transition: 0.2s opacity ease; + -moz-transition: 0.2s opacity ease; + transition: 0.2s opacity ease; +} +.ui.label a:hover { + opacity: 1; +} +/* Detail */ +.ui.label .detail { + display: inline-block; + margin-left: 0.5em; + font-weight: bold; + opacity: 0.8; +} +/* Icon */ +.ui.label .icon { + width: auto; +} +/* Removable label */ +.ui.label .delete.icon { + cursor: pointer; + margin: 0em 0em 0em 0.5em; + opacity: 0.7; + -webkit-transition: background 0.1s linear + ; + -moz-transition: background 0.1s linear + ; + transition: background 0.1s linear + ; +} +.ui.label .delete.icon:hover { + opacity: 0.99; +} +/*------------------- + Coupling +--------------------*/ +/* Padding on next content after a label */ +.ui.segment > .attached.label:first-child + * { + margin-top: 2.5em; +} +.ui.segment > .bottom.attached.label:first-child ~ :last-child { + margin-top: 0em; + margin-bottom: 2.5em; +} +/******************************* + Types +*******************************/ +.ui.image.label { + width: auto !important; + margin-top: 0em; + margin-bottom: 0em; + padding-top: 0.4em; + padding-bottom: 0.4em; + line-height: 1.5em; + vertical-align: baseline; + text-transform: none; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; +} +.ui.image.label img { + display: inline-block; + height: 2.25em; + margin: -0.4em 0.8em -0.4em -0.8em; + vertical-align: top; + border-radius: 0.325em 0em 0em 0.325em; +} +/******************************* + States +*******************************/ +/*------------------- + Disabled +--------------------*/ +.ui.label.disabled { + opacity: 0.5; +} +/*------------------- + Hover +--------------------*/ +a.ui.labels .label:hover, +a.ui.label:hover { + background-color: #E0E0E0; + border-color: #E0E0E0; + color: rgba(0, 0, 0, 0.7); +} +.ui.labels a.label:hover:before, +a.ui.label:hover:before { + background-color: #E0E0E0; + color: rgba(0, 0, 0, 0.7); +} +/*------------------- + Visible +--------------------*/ +.ui.labels.visible .label, +.ui.label.visible { + display: inline-block !important; +} +/*------------------- + Hidden +--------------------*/ +.ui.labels.hidden .label, +.ui.label.hidden { + display: none !important; +} +/******************************* + Variations +*******************************/ +/*------------------- + Tag +--------------------*/ +.ui.tag.labels .label, +.ui.tag.label { + margin-left: 1em; + position: relative; + padding: 0.33em 1.3em 0.33em 1.4em; + border-radius: 0px 3px 3px 0px; +} +.ui.tag.labels .label:before, +.ui.tag.label:before { + position: absolute; + top: 0.3em; + left: 0.3em; + content: ''; + margin-left: -1em; + background-image: none; + width: 1.5em; + height: 1.5em; + -webkit-transform: rotate(45deg); + -moz-transform: rotate(45deg); + -ms-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transition: background 0.1s linear + ; + -moz-transition: background 0.1s linear + ; + transition: background 0.1s linear + ; +} +.ui.tag.labels .label:after, +.ui.tag.label:after { + position: absolute; + content: ''; + top: 50%; + left: -0.25em; + margin-top: -0.3em; + background-color: #FFFFFF; + width: 0.55em; + height: 0.55em; + -webkit-box-shadow: 0 -1px 1px 0 rgba(0, 0, 0, 0.3); + box-shadow: 0 -1px 1px 0 rgba(0, 0, 0, 0.3); + border-radius: 100px 100px 100px 100px; +} +/*------------------- + Ribbon +--------------------*/ +.ui.ribbon.label { + position: relative; + margin: 0em 0.2em; + left: -2rem; + padding-left: 2rem; + border-radius: 0px 4px 4px 0px; + border-color: rgba(0, 0, 0, 0.15); +} +.ui.ribbon.label:after { + position: absolute; + content: ""; + top: 100%; + left: 0%; + border-top: 0em solid transparent; + border-right-width: 1em; + border-right-color: inherit; + border-right-style: solid; + border-bottom: 1em solid transparent; + border-left: 0em solid transparent; + width: 0em; + height: 0em; +} +/*------------------- + Attached +--------------------*/ +.ui.top.attached.label, +.ui.attached.label { + width: 100%; + position: absolute; + margin: 0em; + top: 0em; + left: 0em; + padding: 0.75em 1em; + border-radius: 4px 4px 0em 0em; +} +.ui.bottom.attached.label { + top: auto; + bottom: 0em; + border-radius: 0em 0em 4px 4px; +} +.ui.top.left.attached.label { + width: auto; + margin-top: 0em !important; + border-radius: 4px 0em 4px 0em; +} +.ui.top.right.attached.label { + width: auto; + left: auto; + right: 0em; + border-radius: 0em 4px 0em 4px; +} +.ui.bottom.left.attached.label { + width: auto; + top: auto; + bottom: 0em; + border-radius: 4px 0em 0em 4px; +} +.ui.bottom.right.attached.label { + top: auto; + bottom: 0em; + left: auto; + right: 0em; + width: auto; + border-radius: 4px 0em 4px 0em; +} +/*------------------- + Corner Label +--------------------*/ +.ui.corner.label { + background-color: transparent; + position: absolute; + top: 0em; + right: 0em; + z-index: 10; + margin: 0em; + width: 3em; + height: 3em; + padding: 0em; + text-align: center; + -webkit-transition: color 0.2s ease; + -moz-transition: color 0.2s ease; + transition: color 0.2s ease; +} +.ui.corner.label:after { + position: absolute; + content: ""; + right: 0em; + top: 0em; + z-index: -1; + width: 0em; + height: 0em; + border-top: 0em solid transparent; + border-right: 3em solid transparent; + border-bottom: 3em solid transparent; + border-left: 0em solid transparent; + border-right-color: inherit; + -webkit-transition: border-color 0.2s ease; + -moz-transition: border-color 0.2s ease; + transition: border-color 0.2s ease; +} +.ui.corner.label .icon { + font-size: 0.875em; + margin: 0.5em 0em 0em 1.25em; +} +.ui.corner.label .text { + display: inline-block; + font-weight: bold; + margin: 0.5em 0em 0em 1em; + width: 2.5em; + font-size: 0.875em; + text-align: center; + -webkit-transform: rotate(45deg); + -moz-transform: rotate(45deg); + -ms-transform: rotate(45deg); + transform: rotate(45deg); +} +/* Coupling */ +.ui.rounded.image > .ui.corner.label, +.ui.input > .ui.corner.label, +.ui.segment > .ui.corner.label { + overflow: hidden; +} +.ui.segment > .ui.corner.label { + top: -1px; + right: -1px; +} +.ui.segment > .ui.left.corner.label { + right: auto; + left: -1px; +} +.ui.input > .ui.corner.label { + top: 1px; + right: 1px; +} +.ui.input > .ui.right.corner.label { + right: auto; + left: 1px; +} +/* Left Corner */ +.ui.left.corner.label, +.ui.left.corner.label:after { + right: auto; + left: 0em; +} +.ui.left.corner.label:after { + border-top: 3em solid transparent; + border-right: 3em solid transparent; + border-bottom: 0em solid transparent; + border-left: 0em solid transparent; + border-top-color: inherit; +} +.ui.left.corner.label .icon { + margin: 0.5em 0em 0em -1em; +} +.ui.left.corner.label .text { + margin: 0.5em 0em 0em -1em; + -webkit-transform: rotate(-45deg); + -moz-transform: rotate(-45deg); + -ms-transform: rotate(-45deg); + transform: rotate(-45deg); +} +/* Hover */ +.ui.corner.label:hover { + background-color: transparent; +} +/*------------------- + Fluid +--------------------*/ +.ui.label.fluid, +.ui.fluid.labels > .label { + width: 100%; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +/*------------------- + Inverted +--------------------*/ +.ui.inverted.labels .label, +.ui.inverted.label { + color: #FFFFFF !important; +} +/*------------------- + Colors +--------------------*/ +/*--- Black ---*/ +.ui.black.labels .label, +.ui.black.label { + background-color: #5C6166 !important; + border-color: #5C6166 !important; + color: #FFFFFF !important; +} +.ui.labels .black.label:before, +.ui.black.labels .label:before, +.ui.black.label:before { + background-color: #5C6166 !important; +} +/* Hover */ +a.ui.black.labels .label:hover, +a.ui.black.label:hover { + background-color: #333333 !important; + border-color: #333333 !important; +} +.ui.labels a.black.label:hover:before, +.ui.black.labels a.label:hover:before, +a.ui.black.label:hover:before { + background-color: #333333 !important; +} +/* Corner */ +.ui.black.corner.label, +.ui.black.corner.label:hover { + background-color: transparent !important; +} +/* Ribbon */ +.ui.black.ribbon.label { + border-color: #333333 !important; +} +/*--- Green ---*/ +.ui.green.labels .label, +.ui.green.label { + background-color: #A1CF64 !important; + border-color: #A1CF64 !important; + color: #FFFFFF !important; +} +.ui.labels .green.label:before, +.ui.green.labels .label:before, +.ui.green.label:before { + background-color: #A1CF64 !important; +} +/* Hover */ +a.ui.green.labels .label:hover, +a.ui.green.label:hover { + background-color: #89B84C !important; + border-color: #89B84C !important; +} +.ui.labels a.green.label:hover:before, +.ui.green.labels a.label:hover:before, +a.ui.green.label:hover:before { + background-color: #89B84C !important; +} +/* Corner */ +.ui.green.corner.label, +.ui.green.corner.label:hover { + background-color: transparent !important; +} +/* Ribbon */ +.ui.green.ribbon.label { + border-color: #89B84C !important; +} +/*--- Red ---*/ +.ui.red.labels .label, +.ui.red.label { + background-color: #D95C5C !important; + border-color: #D95C5C !important; + color: #FFFFFF !important; +} +.ui.labels .red.label:before, +.ui.red.labels .label:before, +.ui.red.label:before { + background-color: #D95C5C !important; +} +/* Corner */ +.ui.red.corner.label, +.ui.red.corner.label:hover { + background-color: transparent !important; +} +/* Hover */ +a.ui.red.labels .label:hover, +a.ui.red.label:hover { + background-color: #DE3859 !important; + border-color: #DE3859 !important; + color: #FFFFFF !important; +} +.ui.labels a.red.label:hover:before, +.ui.red.labels a.label:hover:before, +a.ui.red.label:hover:before { + background-color: #DE3859 !important; +} +/* Ribbon */ +.ui.red.ribbon.label { + border-color: #DE3859 !important; +} +/*--- Blue ---*/ +.ui.blue.labels .label, +.ui.blue.label { + background-color: #6ECFF5 !important; + border-color: #6ECFF5 !important; + color: #FFFFFF !important; +} +.ui.labels .blue.label:before, +.ui.blue.labels .label:before, +.ui.blue.label:before { + background-color: #6ECFF5 !important; +} +/* Hover */ +a.ui.blue.labels .label:hover, +.ui.blue.labels a.label:hover, +a.ui.blue.label:hover { + background-color: #1AB8F3 !important; + border-color: #1AB8F3 !important; + color: #FFFFFF !important; +} +.ui.labels a.blue.label:hover:before, +.ui.blue.labels a.label:hover:before, +a.ui.blue.label:hover:before { + background-color: #1AB8F3 !important; +} +/* Corner */ +.ui.blue.corner.label, +.ui.blue.corner.label:hover { + background-color: transparent !important; +} +/* Ribbon */ +.ui.blue.ribbon.label { + border-color: #1AB8F3 !important; +} +/*--- Purple ---*/ +.ui.purple.labels .label, +.ui.purple.label { + background-color: #564F8A !important; + border-color: #564F8A !important; + color: #FFFFFF !important; +} +.ui.labels .purple.label:before, +.ui.purple.labels .label:before, +.ui.purple.label:before { + background-color: #564F8A !important; +} +/* Hover */ +a.ui.purple.labels .label:hover, +.ui.purple.labels a.label:hover, +a.ui.purple.label:hover { + background-color: #3E3773 !important; + border-color: #3E3773 !important; + color: #FFFFFF !important; +} +.ui.labels a.purple.label:hover:before, +.ui.purple.labels a.label:hover:before, +a.ui.purple.label:hover:before { + background-color: #3E3773 !important; +} +/* Corner */ +.ui.purple.corner.label, +.ui.purple.corner.label:hover { + background-color: transparent !important; +} +/* Ribbon */ +.ui.purple.ribbon.label { + border-color: #3E3773 !important; +} +/*--- Orange ---*/ +.ui.orange.labels .label, +.ui.orange.label { + background-color: #F05940 !important; + border-color: #F05940 !important; + color: #FFFFFF !important; +} +.ui.labels .orange.label:before, +.ui.orange.labels .label:before, +.ui.orange.label:before { + background-color: #F05940 !important; +} +/* Hover */ +a.ui.orange.labels .label:hover, +.ui.orange.labels a.label:hover, +a.ui.orange.label:hover { + background-color: #FF4121 !important; + border-color: #FF4121 !important; + color: #FFFFFF !important; +} +.ui.labels a.orange.label:hover:before, +.ui.orange.labels a.label:hover:before, +a.ui.orange.label:hover:before { + background-color: #FF4121 !important; +} +/* Corner */ +.ui.orange.corner.label, +.ui.orange.corner.label:hover { + background-color: transparent !important; +} +/* Ribbon */ +.ui.orange.ribbon.label { + border-color: #FF4121 !important; +} +/*--- Teal ---*/ +.ui.teal.labels .label, +.ui.teal.label { + background-color: #00B5AD !important; + border-color: #00B5AD !important; + color: #FFFFFF !important; +} +.ui.labels .teal.label:before, +.ui.teal.labels .label:before, +.ui.teal.label:before { + background-color: #00B5AD !important; +} +/* Hover */ +a.ui.teal.labels .label:hover, +.ui.teal.labels a.label:hover, +a.ui.teal.label:hover { + background-color: #009A93 !important; + border-color: #009A93 !important; + color: #FFFFFF !important; +} +.ui.labels a.teal.label:hover:before, +.ui.teal.labels a.label:hover:before, +a.ui.teal.label:hover:before { + background-color: #009A93 !important; +} +/* Corner */ +.ui.teal.corner.label, +.ui.teal.corner.label:hover { + background-color: transparent !important; +} +/* Ribbon */ +.ui.teal.ribbon.label { + border-color: #009A93 !important; +} +/*------------------- + Horizontal +--------------------*/ +.ui.horizontal.labels .label, +.ui.horizontal.label { + margin: -0.125em 0.5em -0.125em 0em; + padding: 0.35em 1em; + min-width: 6em; + text-align: center; +} +/*------------------- + Circular +--------------------*/ +.ui.circular.labels .label, +.ui.circular.label { + min-height: 1em; + max-height: 2em; + padding: 0.5em !important; + line-height: 1em; + text-align: center; + border-radius: 500rem; +} +/*------------------- + Pointing +--------------------*/ +.ui.pointing.label { + position: relative; +} +.ui.attached.pointing.label { + position: absolute; +} +.ui.pointing.label:before { + position: absolute; + content: ""; + width: 0.6em; + height: 0.6em; + background-image: none; + -webkit-transform: rotate(45deg); + -moz-transform: rotate(45deg); + -ms-transform: rotate(45deg); + transform: rotate(45deg); + z-index: 2; + -webkit-transition: background 0.1s linear + ; + -moz-transition: background 0.1s linear + ; + transition: background 0.1s linear + ; +} +/*--- Above ---*/ +.ui.pointing.label:before { + background-color: #E8E8E8; +} +.ui.pointing.label, +.ui.pointing.above.label { + margin-top: 1em; +} +.ui.pointing.label:before, +.ui.pointing.above.label:before { + margin-left: -0.3em; + top: -0.3em; + left: 50%; +} +/*--- Below ---*/ +.ui.pointing.below.label { + margin-top: 0em; + margin-bottom: 1em; +} +.ui.pointing.below.label:before { + margin-left: -0.3em; + top: auto; + right: auto; + bottom: -0.3em; + left: 50%; +} +/*--- Left ---*/ +.ui.pointing.left.label { + margin-top: 0em; + margin-left: 1em; +} +.ui.pointing.left.label:before { + margin-top: -0.3em; + bottom: auto; + right: auto; + top: 50%; + left: 0em; +} +/*--- Right ---*/ +.ui.pointing.right.label { + margin-top: 0em; + margin-right: 1em; +} +.ui.pointing.right.label:before { + margin-top: -0.3em; + right: -0.3em; + top: 50%; + bottom: auto; + left: auto; +} +/*------------------ + Floating Label +-------------------*/ +.ui.floating.label { + position: absolute; + z-index: 100; + top: -1em; + left: 100%; + margin: 0em 0em 0em -1.5em !important; +} +/*------------------- + Sizes +--------------------*/ +.ui.small.labels .label, +.ui.small.label { + font-size: 0.75rem; +} +.ui.label { + font-size: 0.8125rem; +} +.ui.large.labels .label, +.ui.large.label { + font-size: 0.875rem; +} +.ui.huge.labels .label, +.ui.huge.label { + font-size: 1rem; +} + +/* + * # Semantic - Loader + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Loader +*******************************/ +/* Standard Size */ +.ui.loader { + display: none; + position: absolute; + top: 50%; + left: 50%; + margin: 0px; + z-index: 1000; + -webkit-transform: translateX(-50%) translateY(-50%); + -moz-transform: translateX(-50%) translateY(-50%); + -ms-transform: translateX(-50%) translateY(-50%); + transform: translateX(-50%) translateY(-50%); +} +.ui.dimmer .loader { + display: block; +} +/******************************* + Types +*******************************/ +/*------------------- + Text +--------------------*/ +.ui.text.loader { + width: auto !important; + height: auto !important; + text-align: center; + font-style: normal; +} +.ui.mini.text.loader { + min-width: 16px; + padding-top: 2em; + font-size: 0.875em; +} +.ui.small.text.loader { + min-width: 24px; + padding-top: 2.5em; + font-size: 0.875em; +} +.ui.text.loader { + min-width: 32px; + font-size: 1em; + padding-top: 3em; +} +.ui.large.text.loader { + min-width: 64px; + padding-top: 5em; + font-size: 1.2em; +} +/******************************* + States +*******************************/ +.ui.loader.active, +.ui.loader.visible { + display: block; +} +.ui.loader.disabled, +.ui.loader.hidden { + display: none; +} +/******************************* + Variations +*******************************/ +/*------------------- + Inverted +--------------------*/ +.ui.dimmer .ui.text.loader, +.ui.inverted.text.loader { + color: rgba(255, 255, 255, 0.8); +} +.ui.inverted.dimmer .ui.text.loader { + color: rgba(0, 0, 0, 0.8); +} +/* Tiny Size */ +.ui.dimmer .mini.ui.loader, +.ui.inverted .mini.ui.loader { + background-image: url(../images/loader-mini-inverted.gif); +} +/* Small Size */ +.ui.dimmer .small.ui.loader, +.ui.inverted .small.ui.loader { + background-image: url(../images/loader-small-inverted.gif); +} +/* Standard Size */ +.ui.dimmer .ui.loader, +.ui.inverted.loader { + background-image: url(../images/loader-medium-inverted.gif); +} +/* Large Size */ +.ui.dimmer .large.ui.loader, +.ui.inverted .large.ui.loader { + background-image: url(../images/loader-large-inverted.gif); +} +/*------------------- + Sizes +--------------------*/ +/* Tiny Size */ +.ui.inverted.dimmer .ui.mini.loader, +.ui.mini.loader { + width: 16px; + height: 16px; + background-image: url(../images/loader-mini.gif); +} +/* Small Size */ +.ui.inverted.dimmer .ui.small.loader, +.ui.small.loader { + width: 24px; + height: 24px; + background-image: url(../images/loader-small.gif); +} +.ui.inverted.dimmer .ui.loader, +.ui.loader { + width: 32px; + height: 32px; + background: url(../images/loader-medium.gif) no-repeat; + background-position: 48% 0px; +} +/* Large Size */ +.ui.inverted.dimmer .ui.loader.large, +.ui.loader.large { + width: 64px; + height: 64px; + background-image: url(../images/loader-large.gif); +} +/*------------------- + Inline +--------------------*/ +.ui.inline.loader { + position: static; + vertical-align: middle; + margin: 0em; + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} +.ui.inline.loader.active, +.ui.inline.loader.visible { + display: inline-block; +} + +/* + * # Semantic - Progress Bar + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Progress Bar +*******************************/ +.ui.progress { + border: 1px solid rgba(0, 0, 0, 0.1); + width: 100%; + height: 35px; + background-color: #FAFAFA; + padding: 5px; + border-radius: 0.3125em; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +.ui.progress .bar { + display: inline-block; + height: 100%; + background-color: #CCCCCC; + border-radius: 3px; + -webkit-transition: width 1s ease-in-out, background-color 1s ease-out; + -moz-transition: width 1s ease-in-out, background-color 1s ease-out; + transition: width 1s ease-in-out, background-color 1s ease-out; +} +/******************************* + States +*******************************/ +/*-------------- + Successful +---------------*/ +.ui.successful.progress .bar { + background-color: #73E064 !important; +} +.ui.successful.progress .bar, +.ui.successful.progress .bar::after { + -webkit-animation: none !important; + -moz-animation: none !important; + animation: none !important; +} +.ui.warning.progress .bar { + background-color: #E96633 !important; +} +.ui.warning.progress .bar, +.ui.warning.progress .bar::after { + -webkit-animation: none !important; + -moz-animation: none !important; + animation: none !important; +} +/*-------------- + Failed +---------------*/ +.ui.failed.progress .bar { + background-color: #DF9BA4 !important; +} +.ui.failed.progress .bar, +.ui.failed.progress .bar::after { + -webkit-animation: none !important; + -moz-animation: none !important; + animation: none !important; +} +/*-------------- + Active +---------------*/ +.ui.active.progress .bar { + position: relative; +} +.ui.active.progress .bar::after { + content: ''; + opacity: 0; + position: absolute; + top: 0px; + left: 0px; + right: 0px; + bottom: 0px; + background: #FFFFFF; + border-radius: 3px; + -webkit-animation: progress-active 2s ease-out infinite; + -moz-animation: progress-active 2s ease-out infinite; + animation: progress-active 2s ease-out infinite; +} +@-webkit-keyframes progress-active { + 0% { + opacity: 0; + width: 0; + } + 50% { + opacity: 0.3; + } + 100% { + opacity: 0; + width: 95%; + } +} +@-moz-keyframes progress-active { + 0% { + opacity: 0; + width: 0; + } + 50% { + opacity: 0.3; + } + 100% { + opacity: 0; + width: 100%; + } +} +@keyframes progress-active { + 0% { + opacity: 0; + width: 0; + } + 50% { + opacity: 0.3; + } + 100% { + opacity: 0; + width: 100%; + } +} +/*-------------- + Disabled +---------------*/ +.ui.disabled.progress { + opacity: 0.35; +} +.ui.disabled.progress .bar, +.ui.disabled.progress .bar::after { + -webkit-animation: none !important; + -moz-animation: none !important; + animation: none !important; +} +/******************************* + Variations +*******************************/ +/*-------------- + Attached +---------------*/ +/* bottom attached */ +.ui.progress.attached { + position: relative; + border: none; +} +.ui.progress.attached, +.ui.progress.attached .bar { + display: block; + height: 3px; + padding: 0px; + overflow: hidden; + border-radius: 0em 0em 0.3125em 0.3125em; +} +.ui.progress.attached .bar { + border-radius: 0em; +} +/* top attached */ +.ui.progress.top.attached, +.ui.progress.top.attached .bar { + top: -2px; + border-radius: 0.3125em 0.3125em 0em 0em; +} +.ui.progress.top.attached .bar { + border-radius: 0em; +} +/*-------------- + Colors +---------------*/ +.ui.blue.progress .bar { + background-color: #6ECFF5; +} +.ui.black.progress .bar { + background-color: #5C6166; +} +.ui.green.progress .bar { + background-color: #A1CF64; +} +.ui.red.progress .bar { + background-color: #EF4D6D; +} +.ui.purple.progress .bar { + background-color: #564F8A; +} +.ui.teal.progress .bar { + background-color: #00B5AD; +} +/*-------------- + Striped +---------------*/ +.ui.progress.striped .bar { + -webkit-background-size: 30px 30px; + background-size: 30px 30px; + background-image: -webkit-gradient(linear, left top, right bottom, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(135deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(135deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -webkit-linear-gradient(315deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(315deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.ui.progress.active.striped .bar:after { + -webkit-animation: none; + -moz-animation: none; + -ms-animation: none; + animation: none; +} +.ui.progress.active.striped .bar { + -webkit-animation: progress-striped 3s linear infinite; + -moz-animation: progress-striped 3s linear infinite; + animation: progress-striped 3s linear infinite; +} +@-webkit-keyframes progress-striped { + 0% { + background-position: 0px 0; + } + 100% { + background-position: 60px 0; + } +} +@-moz-keyframes progress-striped { + 0% { + background-position: 0px 0; + } + 100% { + background-position: 60px 0; + } +} +@keyframes progress-striped { + 0% { + background-position: 0px 0; + } + 100% { + background-position: 60px 0; + } +} +/*-------------- + Sizes +---------------*/ +.ui.small.progress .bar { + height: 14px; +} + +/* + * # Semantic - Reveal + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Reveal +*******************************/ +.ui.reveal { + display: inline-block; + position: relative !important; + z-index: 2 !important; + font-size: 0em !important; +} +.ui.reveal > .content { + font-size: 1rem !important; +} +.ui.reveal > .visible.content { + -webkit-transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s; + -moz-transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s; + transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s; +} +.ui.reveal > .visible.content { + position: absolute !important; + top: 0em !important; + left: 0em !important; + z-index: 4 !important; + -webkit-transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s; + -moz-transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s; + transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s; +} +.ui.reveal > .hidden.content { + position: relative !important; + z-index: 3 !important; +} +/*------------------ + Loose Coupling +-------------------*/ +.ui.reveal.button { + overflow: hidden; +} +/******************************* + Types +*******************************/ +/*-------------- + Slide +---------------*/ +.ui.slide.reveal { + position: relative !important; + display: block; + overflow: hidden !important; + white-space: nowrap; +} +.ui.slide.reveal > .content { + display: block; + float: left; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + margin: 0em; + -webkit-transition: top 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s, left 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s, right 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s, bottom 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s; + -moz-transition: top 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s, left 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s, right 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s, bottom 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s; + transition: top 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s, left 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s, right 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s, bottom 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s; +} +.ui.slide.reveal > .visible.content { + position: relative !important; +} +.ui.slide.reveal > .hidden.content { + position: absolute !important; + left: 100% !important; + width: 100% !important; +} +.ui.slide.reveal:hover > .visible.content, +.ui.slide.reveal:focus > .visible.content { + left: -100% !important; +} +.ui.slide.reveal:hover > .hidden.content, +.ui.slide.reveal:focus > .hidden.content { + left: 0% !important; +} +.ui.right.slide.reveal > .visible.content { + left: 0%; +} +.ui.right.slide.reveal > .hidden.content { + left: auto !important; + right: 100% !important; +} +.ui.right.slide.reveal:hover > .visible.content, +.ui.right.slide.reveal:focus > .visible.content { + left: 100% !important; + right: auto !important; +} +.ui.right.slide.reveal:hover > .hidden.content, +.ui.right.slide.reveal:focus > .hidden.content { + left: auto !important; + right: 0% !important; +} +.ui.up.slide.reveal > .visible.content { + top: 0% !important; + left: 0% !important; + right: auto !important; + bottom: auto !important; +} +.ui.up.slide.reveal > .hidden.content { + top: 100% !important; + left: 0% !important; + right: auto !important; + bottom: auto !important; +} +.ui.slide.up.reveal:hover > .visible.content, +.ui.slide.up.reveal:focus > .visible.content { + top: -100% !important; + left: 0% !important; +} +.ui.slide.up.reveal:hover > .hidden.content, +.ui.slide.up.reveal:focus > .hidden.content { + top: 0% !important; + left: 0% !important; +} +.ui.down.slide.reveal > .visible.content { + top: auto !important; + right: auto !important; + bottom: auto !important; + bottom: 0% !important; +} +.ui.down.slide.reveal > .hidden.content { + top: auto !important; + right: auto !important; + bottom: 100% !important; + left: 0% !important; +} +.ui.slide.down.reveal:hover > .visible.content, +.ui.slide.down.reveal:focus > .visible.content { + left: 0% !important; + bottom: -100% !important; +} +.ui.slide.down.reveal:hover > .hidden.content, +.ui.slide.down.reveal:focus > .hidden.content { + left: 0% !important; + bottom: 0% !important; +} +/*-------------- + Fade +---------------*/ +.ui.fade.reveal > .hidden.content { + -webkit-transition: opacity 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s; + -moz-transition: opacity 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s; + transition: opacity 0.8s cubic-bezier(0.175, 0.885, 0.32, 1) 0.15s; +} +.ui.fade.reveal > .hidden.content { + z-index: 5 !important; + opacity: 0; +} +.ui.fade.reveal:hover > .hidden.content { + opacity: 1; +} +/*-------------- + Move +---------------*/ +.ui.move.reveal > .visible.content, +.ui.move.left.reveal > .visible.content { + left: auto !important; + top: auto !important; + bottom: auto !important; + right: 0% !important; +} +.ui.move.reveal:hover > .visible.content, +.ui.move.left.reveal:hover > .visible.content, +.ui.move.reveal:focus > .visible.content, +.ui.move.left.reveal:focus > .visible.content { + right: 100% !important; +} +.ui.move.right.reveal > .visible.content { + right: auto !important; + top: auto !important; + bottom: auto !important; + left: 0% !important; +} +.ui.move.right.reveal:hover > .visible.content, +.ui.move.right.reveal:focus > .visible.content { + left: 100% !important; +} +.ui.move.up.reveal > .visible.content { + right: auto !important; + left: auto !important; + top: auto !important; + bottom: 0% !important; +} +.ui.move.up.reveal:hover > .visible.content, +.ui.move.up.reveal:focus > .visible.content { + bottom: 100% !important; +} +.ui.move.down.reveal > .visible.content { + right: auto !important; + left: auto !important; + top: 0% !important; + bottom: auto !important; +} +.ui.move.down.reveal:hover > .visible.content, +.ui.move.down.reveal:focus > .visible.content { + top: 100% !important; +} +/*-------------- + Rotate +---------------*/ +.ui.rotate.reveal > .visible.content { + -webkit-transition-duration: 0.8s; + -moz-transition-duration: 0.8s; + transition-duration: 0.8s; + -webkit-transform: rotate(0deg); + -moz-transform: rotate(0deg); + -ms-transform: rotate(0deg); + transform: rotate(0deg); +} +.ui.rotate.reveal > .visible.content, +.ui.rotate.right.reveal > .visible.content { + -webkit-transform-origin: bottom right; + -moz-transform-origin: bottom right; + -ms-transform-origin: bottom right; + transform-origin: bottom right; +} +.ui.rotate.reveal:hover > .visible.content, +.ui.rotate.right.reveal:hover > .visible.content, +.ui.rotate.reveal:focus > .visible.content, +.ui.rotate.right.reveal:focus > .visible.content { + -webkit-transform: rotate(110deg); + -moz-transform: rotate(110deg); + -ms-transform: rotate(110deg); + transform: rotate(110deg); +} +.ui.rotate.left.reveal > .visible.content { + -webkit-transform-origin: bottom left; + -moz-transform-origin: bottom left; + -ms-transform-origin: bottom left; + transform-origin: bottom left; +} +.ui.rotate.left.reveal:hover > .visible.content, +.ui.rotate.left.reveal:focus > .visible.content { + -webkit-transform: rotate(-110deg); + -moz-transform: rotate(-110deg); + -ms-transform: rotate(-110deg); + transform: rotate(-110deg); +} +/******************************* + States +*******************************/ +.ui.disabled.reveal { + opacity: 1 !important; +} +.ui.disabled.reveal > .content { + -webkit-transition: none !important; + -moz-transition: none !important; + transition: none !important; +} +.ui.disabled.reveal:hover > .visible.content, +.ui.disabled.reveal:focus > .visible.content { + position: static !important; + display: block !important; + opacity: 1 !important; + top: 0 !important; + left: 0 !important; + right: auto !important; + bottom: auto !important; + -webkit-transform: none !important; + -moz-transform: none !important; + -ms-transform: none !important; + transform: none !important; +} +.ui.disabled.reveal:hover > .hidden.content, +.ui.disabled.reveal:focus > .hidden.content { + display: none !important; +} +/******************************* + Variations +*******************************/ +/*-------------- + Masked +---------------*/ +.ui.masked.reveal { + overflow: hidden; +} +/*-------------- + Instant +---------------*/ +.ui.instant.reveal > .content { + -webkit-transition-delay: 0s !important; + -moz-transition-delay: 0s !important; + transition-delay: 0s !important; +} + +/* + * # Semantic - Segment + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Segment +*******************************/ +.ui.segment { + position: relative; + background-color: #FFFFFF; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); + margin: 1em 0em; + padding: 1em; + border-radius: 5px 5px 5px 5px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +.ui.segment:first-child { + margin-top: 0em; +} +.ui.segment:last-child { + margin-bottom: 0em; +} +.ui.segment:after { + content: ''; + display: block; + height: 0; + clear: both; + visibility: hidden; +} +.ui.vertical.segment { + margin: 0em; + padding-left: 0em; + padding-right: 0em; + background-color: transparent; + border-radius: 0px; + -webkit-box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.1); + box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.1); +} +.ui.vertical.segment:first-child { + padding-top: 0em; +} +.ui.horizontal.segment { + margin: 0em; + padding-top: 0em; + padding-bottom: 0em; + background-color: transparent; + border-radius: 0px; + -webkit-box-shadow: 1px 0px 0px rgba(0, 0, 0, 0.1); + box-shadow: 1px 0px 0px rgba(0, 0, 0, 0.1); +} +.ui.horizontal.segment:first-child { + padding-left: 0em; +} +/*------------------- + Loose Coupling +--------------------*/ +.ui.pointing.menu ~ .ui.attached.segment { + top: 1px; +} +.ui.page.grid.segment .ui.grid .ui.segment.column { + padding-top: 2rem; + padding-bottom: 2rem; +} +.ui.grid.segment, +.ui.grid .ui.segment.row, +.ui.grid .ui.segment.column { + border-radius: 0em; + -webkit-box-shadow: none; + box-shadow: none; + border: none; +} +/* No padding on edge content */ +.ui.segment > :first-child { + margin-top: 0em; +} +.ui.segment > :last-child { + margin-bottom: 0em; +} +/******************************* + Types +*******************************/ +/*------------------- + Piled +--------------------*/ +.ui.piled.segment { + margin: 2em 0em; + -webkit-box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.15); + -ms-box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.15); + -o-box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.15); + box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.15); +} +.ui.piled.segment:first-child { + margin-top: 0em; +} +.ui.piled.segment:last-child { + margin-bottom: 0em; +} +.ui.piled.segment:after, +.ui.piled.segment:before { + background-color: #FFFFFF; + visibility: visible; + content: ""; + display: block; + height: 100%; + left: -1px; + position: absolute; + width: 100%; + -webkit-box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.1); +} +.ui.piled.segment:after { + -webkit-transform: rotate(1.2deg); + -moz-transform: rotate(1.2deg); + -ms-transform: rotate(1.2deg); + transform: rotate(1.2deg); + top: 0; + z-index: -1; +} +.ui.piled.segment:before { + -webkit-transform: rotate(-1.2deg); + -moz-transform: rotate(-1.2deg); + -ms-transform: rotate(-1.2deg); + transform: rotate(-1.2deg); + top: 0; + z-index: -2; +} +/*------------------- + Stacked +--------------------*/ +.ui.stacked.segment { + padding-bottom: 1.7em; +} +.ui.stacked.segment:after, +.ui.stacked.segment:before { + content: ''; + position: absolute; + bottom: -3px; + left: 0%; + border-top: 1px solid rgba(0, 0, 0, 0.1); + background-color: rgba(0, 0, 0, 0.02); + width: 100%; + height: 5px; + visibility: visible; +} +.ui.stacked.segment:before { + bottom: 0px; +} +/* Inverted */ +.ui.stacked.inverted.segment:after, +.ui.stacked.inverted.segment:before { + background-color: rgba(255, 255, 255, 0.1); + border-top: 1px solid rgba(255, 255, 255, 0.35); +} +/*------------------- + Circular +--------------------*/ +.ui.circular.segment { + display: table-cell; + padding: 2em; + text-align: center; + vertical-align: middle; + border-radius: 500em; +} +/*------------------- + Raised +--------------------*/ +.ui.raised.segment { + -webkit-box-shadow: 0px 1px 2px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0px 1px 2px 1px rgba(0, 0, 0, 0.1); +} +/******************************* + States +*******************************/ +.ui.disabled.segment { + opacity: 0.8; + color: #DDDDDD; +} +/******************************* + Variations +*******************************/ +/*------------------- + Basic +--------------------*/ +.ui.basic.segment { + position: relative; + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; + border-radius: 0px; +} +.ui.basic.segment:first-child { + padding-top: 0em; +} +.ui.basic.segment:last-child { + padding-bottom: 0em; +} +/*------------------- + Fittted +--------------------*/ +.ui.fitted.segment { + padding: 0em; +} +/*------------------- + Colors +--------------------*/ +.ui.blue.segment { + border-top: 0.2em solid #6ECFF5; +} +.ui.green.segment { + border-top: 0.2em solid #A1CF64; +} +.ui.red.segment { + border-top: 0.2em solid #D95C5C; +} +.ui.orange.segment { + border-top: 0.2em solid #F05940; +} +.ui.purple.segment { + border-top: 0.2em solid #564F8A; +} +.ui.teal.segment { + border-top: 0.2em solid #00B5AD; +} +/*------------------- + Inverted Colors +--------------------*/ +.ui.inverted.black.segment { + background-color: #5C6166 !important; + color: #FFFFFF !important; +} +.ui.inverted.blue.segment { + background-color: #6ECFF5 !important; + color: #FFFFFF !important; +} +.ui.inverted.green.segment { + background-color: #A1CF64 !important; + color: #FFFFFF !important; +} +.ui.inverted.red.segment { + background-color: #D95C5C !important; + color: #FFFFFF !important; +} +.ui.inverted.orange.segment { + background-color: #F05940 !important; + color: #FFFFFF !important; +} +.ui.inverted.purple.segment { + background-color: #564F8A !important; + color: #FFFFFF !important; +} +.ui.inverted.teal.segment { + background-color: #00B5AD !important; + color: #FFFFFF !important; +} +/*------------------- + Aligned +--------------------*/ +.ui.left.aligned.segment { + text-align: left; +} +.ui.right.aligned.segment { + text-align: right; +} +.ui.center.aligned.segment { + text-align: center; +} +.ui.justified.segment { + text-align: justify; + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; +} +/*------------------- + Floated +--------------------*/ +.ui.floated.segment, +.ui.left.floated.segment { + float: left; +} +.ui.right.floated.segment { + float: right; +} +/*------------------- + Inverted +--------------------*/ +.ui.inverted.segment { + border: none; + -webkit-box-shadow: none; + box-shadow: none; +} +.ui.inverted.segment .segment { + color: rgba(0, 0, 0, 0.7); +} +.ui.inverted.segment .inverted.segment { + color: #FFFFFF; +} +.ui.inverted.segment, +.ui.primary.inverted.segment { + background-color: #222222; + color: #FFFFFF; +} +/*------------------- + Ordinality +--------------------*/ +.ui.primary.segment { + background-color: #FFFFFF; + color: #555555; +} +.ui.secondary.segment { + background-color: #FAF9FA; + color: #777777; +} +.ui.tertiary.segment { + background-color: #EBEBEB; + color: #B0B0B0; +} +.ui.secondary.inverted.segment { + background-color: #555555; + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(rgba(255, 255, 255, 0.3)), to(rgba(255, 255, 255, 0.3))); + background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0.3) 100%); + background-image: -moz-linear-gradient(rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0.3) 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.3)), to(rgba(255, 255, 255, 0.3))); + background-image: linear-gradient(rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0.3) 100%); + color: #FAFAFA; +} +.ui.tertiary.inverted.segment { + background-color: #555555; + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(rgba(255, 255, 255, 0.6)), to(rgba(255, 255, 255, 0.6))); + background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0.6) 100%); + background-image: -moz-linear-gradient(rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0.6) 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.6)), to(rgba(255, 255, 255, 0.6))); + background-image: linear-gradient(rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0.6) 100%); + color: #EEEEEE; +} +/*------------------- + Attached +--------------------*/ +.ui.segment.attached { + top: -1px; + bottom: -1px; + border-radius: 0px; + margin: 0em; + -webkit-box-shadow: 0px 0px 0px 1px #DDDDDD; + box-shadow: 0px 0px 0px 1px #DDDDDD; +} +.ui.top.attached.segment { + top: 0px; + bottom: -1px; + margin-top: 1em; + margin-bottom: 0em; + border-radius: 5px 5px 0px 0px; +} +.ui.segment.top.attached:first-child { + margin-top: 0em; +} +.ui.segment.bottom.attached { + top: -1px; + bottom: 0px; + margin-top: 0em; + margin-bottom: 1em; + border-radius: 0px 0px 5px 5px; +} +.ui.segment.bottom.attached:last-child { + margin-bottom: 0em; +} + +/* + * # Semantic - Steps + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Step +*******************************/ +.ui.step, +.ui.steps .step { + display: inline-block; + position: relative; + padding: 1em 2em 1em 3em; + vertical-align: top; + background-color: #FFFFFF; + color: #888888; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +.ui.step:after, +.ui.steps .step:after { + position: absolute; + z-index: 2; + content: ''; + top: 0.42em; + right: -1em; + border: medium none; + background-color: #FFFFFF; + width: 2.2em; + height: 2.2em; + -webkit-transform: rotate(-45deg); + -moz-transform: rotate(-45deg); + -ms-transform: rotate(-45deg); + transform: rotate(-45deg); + -webkit-box-shadow: -1px -1px 0 0 rgba(0, 0, 0, 0.15) inset; + box-shadow: -1px -1px 0 0 rgba(0, 0, 0, 0.15) inset; +} +.ui.step, +.ui.steps .step, +.ui.steps .step:after { + -webkit-transition: background-color 0.1s ease, opacity 0.1s ease, color 0.1s ease, -webkit-box-shadow 0.1s ease; + -moz-transition: background-color 0.1s ease, opacity 0.1s ease, color 0.1s ease, box-shadow 0.1s ease; + transition: background-color 0.1s ease, opacity 0.1s ease, color 0.1s ease, box-shadow 0.1s ease; +} +/******************************* + Types +*******************************/ +/* Vertical */ +.ui.vertical.steps { + overflow: visible; +} +.ui.vertical.steps .step { + display: block; + border-radius: 0em; + padding: 1em 2em; +} +.ui.vertical.steps .step:first-child { + padding: 1em 2em; + border-radius: 0em; + border-top-left-radius: 0.3125rem; + border-top-right-radius: 0.3125rem; +} +.ui.vertical.steps .active.step:first-child { + border-top-right-radius: 0rem; +} +.ui.vertical.steps .step:last-child { + border-radius: 0em; + border-bottom-left-radius: 0.3125rem; + border-bottom-right-radius: 0.3125rem; +} +.ui.vertical.steps .active.step:last-child { + border-bottom-right-radius: 0rem; +} +/* Arrow */ +.ui.vertical.steps .step:after { + display: none; +} +/* Active Arrow */ +.ui.vertical.steps .active.step:after { + display: block; +} +/* Two Line */ +.ui.vertical.steps .two.line.step { + line-height: 1.3; +} +.ui.vertical.steps .two.line.active.step:after { + position: absolute; + z-index: 2; + content: ''; + top: 0em; + right: -1.45em; + background-color: transparent; + border-bottom: 2.35em solid transparent; + border-left: 1.55em solid #555555; + border-top: 2.35em solid transparent; + width: 0em; + height: 0em; + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} +/******************************* + Group +*******************************/ +.ui.steps { + cursor: pointer; + display: inline-block; + font-size: 0em; + overflow: hidden; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); + line-height: 1; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + border-radius: 0.3125rem; +} +.ui.steps .step:first-child { + padding-left: 1.35em; + border-radius: 0.3125em 0em 0em 0.3125em; +} +.ui.steps .step:last-child { + border-radius: 0em 0.3125em 0.3125em 0em; +} +.ui.steps .step:only-child { + border-radius: 0.3125em; +} +.ui.steps .step:last-child { + margin-right: 0em; +} +.ui.steps .step:last-child:after { + display: none; +} +/******************************* + States +*******************************/ +/* Hover */ +.ui.step:hover, +.ui.step.hover { + background-color: #F7F7F7; + color: rgba(0, 0, 0, 0.8); +} +.ui.steps .step.hover:after, +.ui.steps .step:hover:after, +.ui.step:hover, +.ui.step.hover::after { + background-color: #F7F7F7; +} +/* Hover */ +.ui.steps .step.down, +.ui.steps .step:active, +.ui.step.down, +.ui.step:active { + background-color: #F0F0F0; +} +.ui.steps .step.down:after, +.ui.steps .step:active:after, +.ui.steps.down::after, +.ui.steps:active::after { + background-color: #F0F0F0; +} +/* Active */ +.ui.steps .step.active, +.ui.active.step { + cursor: auto; + background-color: #555555; + color: #FFFFFF; + font-weight: bold; +} +.ui.steps .step.active:after, +.ui.active.steps:after { + background-color: #555555; + -webkit-box-shadow: none; + box-shadow: none; +} +/* Disabled */ +.ui.steps .disabled.step, +.ui.disabled.step { + cursor: auto; + background-color: #FFFFFF; + color: #CBCBCB; +} +.ui.steps .disabled.step:after, +.ui.disabled.step:after { + background-color: #FFFFFF; +} +/******************************* + Variations +*******************************/ +/* Attached */ +.attached.ui.steps { + margin: 0em; + border-radius: 0.3125em 0.3125em 0em 0em; +} +.attached.ui.steps .step:first-child { + border-radius: 0.3125em 0em 0em 0em; +} +.attached.ui.steps .step:last-child { + border-radius: 0em 0.3125em 0em 0em; +} +/* Bottom Side */ +.bottom.attached.ui.steps { + margin-top: -1px; + border-radius: 0em 0em 0.3125em 0.3125em; +} +.bottom.attached.ui.steps .step:first-child { + border-radius: 0em 0em 0em 0.3125em; +} +.bottom.attached.ui.steps .step:last-child { + border-radius: 0em 0em 0.3125em 0em; +} +/* Evenly divided */ +.ui.one.steps, +.ui.two.steps, +.ui.three.steps, +.ui.four.steps, +.ui.five.steps, +.ui.six.steps, +.ui.seven.steps, +.ui.eight.steps { + display: block; +} +.ui.one.steps > .step { + width: 100%; +} +.ui.two.steps > .step { + width: 50%; +} +.ui.three.steps > .step { + width: 33.333%; +} +.ui.four.steps > .step { + width: 25%; +} +.ui.five.steps > .step { + width: 20%; +} +.ui.six.steps > .step { + width: 16.666%; +} +.ui.seven.steps > .step { + width: 14.285%; +} +.ui.eight.steps > .step { + width: 12.500%; +} +/******************************* + Sizes +*******************************/ +.ui.small.step, +.ui.small.steps .step { + font-size: 0.8rem; +} +.ui.step, +.ui.steps .step { + font-size: 1rem; +} +.ui.large.step, +.ui.large.steps .step { + font-size: 1.25rem; +} + +/* + * # Semantic - Accordion + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Accordion +*******************************/ +.ui.accordion, +.ui.accordion .accordion { + width: 600px; + max-width: 100%; + font-size: 1rem; + border-radius: 0.3125em; + background-color: #FFFFFF; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); +} +.ui.accordion .title, +.ui.accordion .accordion .title { + cursor: pointer; + margin: 0em; + padding: 0.75em 1em; + color: rgba(0, 0, 0, 0.6); + border-top: 1px solid rgba(0, 0, 0, 0.05); + -webkit-transition: background-color 0.2s ease-out; + -moz-transition: background-color 0.2s ease-out; + transition: background-color 0.2s ease-out; +} +.ui.accordion .title:first-child, +.ui.accordion .accordion .title:first-child { + border-top: none; +} +/* Content */ +.ui.accordion .content, +.ui.accordion .accordion .content { + display: none; + margin: 0em; + padding: 1.3em 1em; +} +/* Arrow */ +.ui.accordion .title .dropdown.icon, +.ui.accordion .accordion .title .dropdown.icon { + display: inline-block; + float: none; + margin: 0em 0.5em 0em 0em; + -webkit-transition: -webkit-transform 0.2s ease, opacity 0.2s ease; + -moz-transition: -moz-transform 0.2s ease, opacity 0.2s ease; + transition: transform 0.2s ease, + opacity 0.2s ease + ; + -webkit-transform: rotate(0deg); + -moz-transform: rotate(0deg); + -ms-transform: rotate(0deg); + transform: rotate(0deg); +} +.ui.accordion .title .dropdown.icon:before, +.ui.accordion .accordion .title .dropdown.icon:before { + content: '\f0da' /*rtl:'\f0d9'*/; +} +/*-------------- + Loose Coupling +---------------*/ +.ui.basic.accordion.menu { + background-color: #FFFFFF; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); +} +.ui.basic.accordion.menu .title, +.ui.basic.accordion.menu .content { + padding: 0em; +} +/******************************* + Types +*******************************/ +/*-------------- + Basic +---------------*/ +.ui.basic.accordion { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} +.ui.basic.accordion .title, +.ui.basic.accordion .accordion .title { + background-color: transparent; + border-top: none; + padding-left: 0em; + padding-right: 0em; +} +.ui.basic.accordion .content, +.ui.basic.accordion .accordion .content { + padding: 0.5em 0em; +} +.ui.basic.accordion .active.title, +.ui.basic.accordion .accordion .active.title { + background-color: transparent; +} +/******************************* + States +*******************************/ +/*-------------- + Hover +---------------*/ +.ui.accordion .title:hover, +.ui.accordion .active.title, +.ui.accordion .accordion .title:hover, +.ui.accordion .accordion .active.title { + color: rgba(0, 0, 0, 0.8); +} +/*-------------- + Active +---------------*/ +.ui.accordion .active.title, +.ui.accordion .accordion .active.title { + background-color: rgba(0, 0, 0, 0.1); + color: rgba(0, 0, 0, 0.8); +} +.ui.accordion .active.title .dropdown.icon, +.ui.accordion .accordion .active.title .dropdown.icon { + -webkit-transform: rotate(90deg); + -moz-transform: rotate(90deg); + -ms-transform: rotate(90deg); + transform: rotate(90deg); +} +.ui.accordion .active.content, +.ui.accordion .accordion .active.content { + display: block; +} +/******************************* + Variations +*******************************/ +/*-------------- + Fluid +---------------*/ +.ui.fluid.accordion, +.ui.fluid.accordion .accordion { + width: 100%; +} + +/* + * # Semantic - Chat Room + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Chat Room +*******************************/ +.ui.chatroom { + background-color: #F8F8F8; + width: 330px; + height: 370px; + padding: 0px; +} +.ui.chatroom .room { + position: relative; + background-color: #FFFFFF; + overflow: hidden; + height: 286px; + border: 1px solid rgba(0, 0, 0, 0.1); + border-top: none; + border-bottom: none; +} +.ui.chatroom .room .loader { + display: none; + margin: -25px 0px 0px -25px; +} +/* Chat Room Actions */ +.ui.chatroom .actions { + overflow: hidden; + background-color: #EEEEEE; + padding: 4px; + border: 1px solid rgba(0, 0, 0, 0.1); + border-radius: 5px 5px 0px 0px; +} +.ui.chatroom .actions .button { + float: right; + margin-left: 3px; +} +/* Online User Count */ +.ui.chatroom .actions .message { + float: left; + margin-left: 6px; + font-size: 11px; + color: #AAAAAA; + text-shadow: 0px -1px 0px rgba(255, 255, 255, 0.8); + line-height: 28px; +} +.ui.chatroom .actions .message .loader { + display: inline-block; + margin-right: 8px; +} +/* Chat Room Text Log */ +.ui.chatroom .log { + float: left; + overflow: auto; + overflow-x: hidden; + overflow-y: auto; +} +.ui.chatroom .log .message { + padding: 3px 0px; + border-top: 1px dotted #DADADA; +} +.ui.chatroom .log .message:first-child { + border-top: none; +} +/* status event */ +.ui.chatroom .status { + padding: 5px 0px; + color: #AAAAAA; + font-size: 12px; + font-style: italic; + line-height: 1.33; + border-top: 1px dotted #DADADA; +} +.ui.chatroom .log .status:first-child { + border-top: none; +} +.ui.chatroom .log .flag { + float: left; +} +.ui.chatroom .log p { + margin-left: 0px; +} +.ui.chatroom .log .author { + font-weight: bold; + -webkit-transition: color 0.3s ease-out; + -moz-transition: color 0.3s ease-out; + transition: color 0.3s ease-out; +} +.ui.chatroom .log a.author:hover { + opacity: 0.8; +} +.ui.chatroom .log .message.admin p { + font-weight: bold; + margin: 1px 0px 0px 23px; +} +.ui.chatroom .log .divider { + margin: -1px 0px; + font-size: 11px; + padding: 10px 0px; + border-top: 1px solid #F8F8F8; + border-bottom: 1px solid #F8F8F8; +} +.ui.chatroom .log .divider .rule { + top: 50%; + width: 15%; +} +.ui.chatroom .log .divider .label { + color: #777777; + margin: 0px; +} +/* Chat Room User List */ +.ui.chatroom .room .list { + position: relative; + overflow: auto; + overflow-x: hidden; + overflow-y: auto; + float: left; + background-color: #EEEEEE; + border-left: 1px solid #DDDDDD; +} +.ui.chatroom .room .list .user { + display: table; + padding: 3px 7px; + border-bottom: 1px solid #DDDDDD; +} +.ui.chatroom .room .list .user:hover { + background-color: #F8F8F8; +} +.ui.chatroom .room .list .image { + display: table-cell; + vertical-align: middle; + width: 20px; +} +.ui.chatroom .room .list .image img { + width: 20px; + height: 20px; + vertical-align: middle; +} +.ui.chatroom .room .list p { + display: table-cell; + vertical-align: middle; + padding-left: 7px; + padding-right: 14px; + font-size: 11px; + line-height: 1.2; + font-weight: bold; +} +.ui.chatroom .room .list a:hover { + opacity: 0.8; +} +/* User List Loading */ +.ui.chatroom.loading .loader { + display: block; +} +/* Chat Room Talk Input */ +.ui.chatroom .talk { + border: 1px solid rgba(0, 0, 0, 0.1); + padding: 5px 0px 0px; + background-color: #EEEEEE; + border-radius: 0px 0px 5px 5px; +} +.ui.chatroom .talk .avatar, +.ui.chatroom .talk input, +.ui.chatroom .talk .button { + float: left; +} +.ui.chatroom .talk .avatar img { + display: block; + width: 30px; + height: 30px; + margin-right: 4px; + border-radius: 500rem; +} +.ui.chatroom .talk input { + border: 1px solid #CCCCCC; + margin: 0px; + width: 196px; + height: 14px; + padding: 8px 5px; + font-size: 12px; + color: #555555; +} +.ui.chatroom .talk input.focus { + border: 1px solid #AAAAAA; +} +.ui.chatroom .send { + width: 80px; + height: 32px; + margin-left: -1px; + padding: 4px 12px; + font-size: 12px; + line-height: 23px; + -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset; + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset; + border-radius: 0 5px 5px 0; +} +.ui.chatroom .talk .log-in.button { + display: block; + float: none; + margin-top: -6px; + height: 22px; + border-radius: 0px 0px 4px 4px; +} +.ui.chatroom .talk .log-in.button i { + vertical-align: text-top; +} +/* Quirky Flags */ +.ui.chatroom .log .team.flag { + width: 18px; +} +/* Chat room Loaded */ +.ui.chatroom.loading .loader { + display: block; +} +/* Standard Size */ +.ui.chatroom { + width: 330px; + height: 370px; +} +.ui.chatroom .room .container { + width: 3000px; +} +.ui.chatroom .log { + width: 314px; + height: 278px; + padding: 4px 7px; +} +.ui.chatroom .room .list { + width: 124px; + height: 278px; + padding: 4px 0px; +} +.ui.chatroom .room .list .user { + width: 110px; +} +.ui.chatroom .talk { + height: 40px; +} + +/* + * # Semantic - Checkbox + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Checkbox +*******************************/ +/*-------------- + Standard +---------------*/ +/*--- Content ---*/ +.ui.checkbox { + position: relative; + display: inline-block; + min-width: 1em; + min-height: 1.25em; + line-height: 1em; + outline: none; + vertical-align: middle; +} +.ui.checkbox input { + position: absolute; + top: 0px; + left: 0px; + opacity: 0; + outline: none; +} +/*--- Box ---*/ +.ui.checkbox .box, +.ui.checkbox label { + cursor: pointer; + padding-left: 2em; + outline: none; +} +.ui.checkbox .box:before, +.ui.checkbox label:before { + position: absolute; + top: 0em; + line-height: 1; + width: 1em; + height: 1em; + left: 0em; + content: ''; + border-radius: 4px; + background: #FFFFFF; + -webkit-transition: background-color 0.3s ease, -webkit-box-shadow 0.3s ease; + -moz-transition: background-color 0.3s ease, box-shadow 0.3s ease; + transition: background-color 0.3s ease, box-shadow 0.3s ease; + -webkit-box-shadow: 0em 0em 0em 1px rgba(0, 0, 0, 0.2); + box-shadow: 0em 0em 0em 1px rgba(0, 0, 0, 0.2); +} +/*--- Checkbox ---*/ +.ui.checkbox .box:after, +.ui.checkbox label:after { + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; + filter: alpha(opacity=0); + opacity: 0; + content: ''; + position: absolute; + background: transparent; + border: 0.2em solid #333333; + border-top: none; + border-right: none; + -webkit-transform: rotate(-45deg); + -moz-transform: rotate(-45deg); + -ms-transform: rotate(-45deg); + transform: rotate(-45deg); +} +.ui.checkbox .box:after, +.ui.checkbox label:after { + top: 0.275em; + left: 0.2em; + width: 0.45em; + height: 0.15em; +} +/*--- Inside Label ---*/ +.ui.checkbox label { + display: block; + color: rgba(0, 0, 0, 0.6); + -webkit-transition: color 0.2s ease; + -moz-transition: color 0.2s ease; + transition: color 0.2s ease; +} +.ui.checkbox label:hover { + color: rgba(0, 0, 0, 0.8); +} +.ui.checkbox input:focus ~ label { + color: rgba(0, 0, 0, 0.8); +} +/*--- Outside Label ---*/ +.ui.checkbox ~ label { + cursor: pointer; + opacity: 0.85; + vertical-align: middle; +} +.ui.checkbox ~ label:hover { + opacity: 1; +} +/******************************* + States +*******************************/ +/*--- Hover ---*/ +.ui.checkbox .box:hover::before, +.ui.checkbox label:hover::before { + -webkit-box-shadow: 0em 0em 0em 1px rgba(0, 0, 0, 0.3); + box-shadow: 0em 0em 0em 1px rgba(0, 0, 0, 0.3); +} +/*--- Down ---*/ +.ui.checkbox .box:active::before, +.ui.checkbox label:active::before { + background-color: #F5F5F5; +} +/*--- Focus ---*/ +.ui.checkbox input:focus ~ .box:before, +.ui.checkbox input:focus ~ label:before { + -webkit-box-shadow: 0em 0em 0em 1px rgba(0, 0, 0, 0.3); + box-shadow: 0em 0em 0em 1px rgba(0, 0, 0, 0.3); +} +/*--- Active ---*/ +.ui.checkbox input:checked ~ .box:after, +.ui.checkbox input:checked ~ label:after { + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; + filter: alpha(opacity=100); + opacity: 1; +} +/*--- Disabled ---*/ +.ui.disabled.checkbox ~ .box:after, +.ui.checkbox input[disabled] ~ .box:after, +.ui.disabled.checkbox label, +.ui.checkbox input[disabled] ~ label { + opacity: 0.4; + color: rgba(0, 0, 0, 0.3); +} +/******************************* + Variations +*******************************/ +/*-------------- + Radio +---------------*/ +.ui.radio.checkbox .box:before, +.ui.radio.checkbox label:before { + min-width: 1em; + height: 1em; + border-radius: 500px; + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; +} +.ui.radio.checkbox .box:after, +.ui.radio.checkbox label:after { + border: none; + top: 0.2em; + left: 0.2em; + width: 0.6em; + height: 0.6em; + background-color: #555555; + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; + border-radius: 500px; +} +/*-------------- + Slider +---------------*/ +.ui.slider.checkbox { + cursor: pointer; + min-width: 3em; +} +/* Line */ +.ui.slider.checkbox:after { + position: absolute; + top: 0.5em; + left: 0em; + content: ''; + width: 3em; + height: 2px; + background-color: rgba(0, 0, 0, 0.1); +} +/* Button */ +.ui.slider.checkbox .box, +.ui.slider.checkbox label { + padding-left: 4em; +} +.ui.slider.checkbox .box:before, +.ui.slider.checkbox label:before { + cursor: pointer; + display: block; + position: absolute; + top: -0.25em; + left: 0em; + z-index: 1; + width: 1.5em; + height: 1.5em; + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; + border-radius: 50rem; + -webkit-transition: left 0.3s ease 0s; + -moz-transition: left 0.3s ease 0s; + transition: left 0.3s ease 0s; +} +/* Button Activation Light */ +.ui.slider.checkbox .box:after, +.ui.slider.checkbox label:after { + opacity: 1; + position: absolute; + content: ''; + top: 0.15em; + left: 0em; + z-index: 2; + margin-left: 0.375em; + border: none; + width: 0.75em; + height: 0.75em; + border-radius: 50rem; + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; + -webkit-transition: background 0.3s ease 0s, + left 0.3s ease 0s + ; + -moz-transition: background 0.3s ease 0s, + left 0.3s ease 0s + ; + transition: background 0.3s ease 0s, + left 0.3s ease 0s + ; +} +/* Selected Slider Toggle */ +.ui.slider.checkbox input:checked ~ .box:before, +.ui.slider.checkbox input:checked ~ label:before, +.ui.slider.checkbox input:checked ~ .box:after, +.ui.slider.checkbox input:checked ~ label:after { + left: 1.75em; +} +/* Off Color */ +.ui.slider.checkbox .box:after, +.ui.slider.checkbox label:after { + background-color: #D95C5C; +} +/* On Color */ +.ui.slider.checkbox input:checked ~ .box:after, +.ui.slider.checkbox input:checked ~ label:after { + background-color: #89B84C; +} +/*-------------- + Toggle +---------------*/ +.ui.toggle.checkbox { + cursor: pointer; +} +.ui.toggle.checkbox .box, +.ui.toggle.checkbox label { + padding-left: 4em; +} +/* Switch */ +.ui.toggle.checkbox .box:before, +.ui.toggle.checkbox label:before { + cursor: pointer; + display: block; + position: absolute; + content: ''; + top: -0.25em; + left: 0em; + z-index: 1; + background-color: #FFFFFF; + width: 3em; + height: 1.5em; + -webkit-transform: none; + -moz-transform: none; + -ms-transform: none; + transform: none; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset; + border-radius: 50rem; +} +/* Activation Light */ +.ui.toggle.checkbox .box:after, +.ui.toggle.checkbox label:after { + opacity: 1; + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; + content: ''; + position: absolute; + top: 0.15em; + left: 0.5em; + z-index: 2; + border: none; + width: 0.75em; + height: 0.75em; + background-color: #D95C5C; + border-radius: 50rem; + -webkit-transition: background 0.3s ease 0s, + left 0.3s ease 0s + ; + -moz-transition: background 0.3s ease 0s, + left 0.3s ease 0s + ; + transition: background 0.3s ease 0s, + left 0.3s ease 0s + ; +} +/* Active */ +.ui.toggle.checkbox:active .box:before, +.ui.toggle.checkbox:active label:before { + background-color: #F5F5F5; +} +/* Active */ +.ui.toggle.checkbox input:checked ~ .box:after, +.ui.toggle.checkbox input:checked ~ label:after { + left: 1.75em; + background-color: #89B84C; +} +/*-------------- + Sizes +---------------*/ +.ui.checkbox { + font-size: 1em; +} +.ui.large.checkbox { + font-size: 1.25em; +} +.ui.huge.checkbox { + font-size: 1.5em; +} + +/* + * # Semantic - Dimmer + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Dimmer +*******************************/ +.ui.dimmable { + position: relative; +} +.ui.dimmer { + display: none; + position: absolute; + top: 0em !important; + left: 0em !important; + width: 0%; + height: 0%; + text-align: center; + vertical-align: middle; + background-color: rgba(0, 0, 0, 0.85); + opacity: 0; + line-height: 1; + -webkit-animation-fill-mode: both; + -moz-animation-fill-mode: both; + animation-fill-mode: both; + -webkit-animation-duration: 0.5s; + -moz-animation-duration: 0.5s; + animation-duration: 0.5s; + -webkit-transition: background-color 0.5s linear; + -moz-transition: background-color 0.5s linear; + transition: background-color 0.5s linear; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + z-index: 1000; +} +/* Dimmer Content */ +.ui.dimmer > .content { + width: 100%; + height: 100%; + display: table; + -webkit-user-select: text; + -moz-user-select: text; + -ms-user-select: text; + user-select: text; +} +.ui.dimmer > .content > div { + display: table-cell; + vertical-align: middle; + color: #FFFFFF; +} +/* Loose Coupling */ +.ui.segment > .ui.dimmer { + border-radius: 5px; +} +.ui.horizontal.segment > .ui.dimmer, +.ui.vertical.segment > .ui.dimmer { + border-radius: 5px; +} +/******************************* + States +*******************************/ +.ui.dimmed.dimmable:not(body) { + overflow: hidden; +} +.ui.dimmed.dimmable > .ui.animating.dimmer, +.ui.dimmed.dimmable > .ui.visible.dimmer, +.ui.active.dimmer { + display: block; + width: 100%; + height: 100%; + opacity: 1; +} +.ui.disabled.dimmer { + width: 0em !important; + height: 0em !important; +} +/******************************* + Variations +*******************************/ +/*-------------- + Page +---------------*/ +.ui.page.dimmer { + position: fixed; + -webkit-transform-style: preserve-3d; + -moz-transform-style: preserve-3d; + -ms-transform-style: preserve-3d; + transform-style: preserve-3d; + -webkit-perspective: 2000px; + -moz-perspective: 2000px; + -ms-perspective: 2000px; + perspective: 2000px; + -webkit-transform-origin: center center; + -moz-transform-origin: center center; + -ms-transform-origin: center center; + transform-origin: center center; +} +.ui.scrolling.dimmable > .dimmer, +.ui.scrolling.page.dimmer { + position: absolute; +} +/* Blurred Background +body.ui.dimmed.dimmable > :not(.dimmer){ + filter: ~"blur(15px) grayscale(0.7)"; +} +*/ +/*-------------- + Aligned +---------------*/ +.ui.dimmer > .top.aligned.content > * { + vertical-align: top; +} +.ui.dimmer > .bottom.aligned.content > * { + vertical-align: bottom; +} +/*-------------- + Inverted +---------------*/ +.ui.inverted.dimmer { + background-color: rgba(255, 255, 255, 0.85); +} +.ui.inverted.dimmer > .content > * { + color: rgba(0, 0, 0, 0.8); +} +/*-------------- + Simple +---------------*/ +/* Displays without javascript */ +.ui.simple.dimmer { + display: block; + overflow: hidden; + opacity: 1; + z-index: -100; + background-color: rgba(0, 0, 0, 0); +} +.ui.dimmed.dimmable > .ui.simple.dimmer { + overflow: visible; + opacity: 1; + width: 100%; + height: 100%; + background-color: rgba(0, 0, 0, 0.85); + z-index: 1; +} +.ui.simple.inverted.dimmer { + background-color: rgba(255, 255, 255, 0); +} +.ui.dimmed.dimmable > .ui.simple.inverted.dimmer { + background-color: rgba(255, 255, 255, 0.85); +} + +/* + * # Semantic - Dropdown + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Dropdown +*******************************/ +.ui.dropdown { + cursor: pointer; + position: relative; + display: inline-block; + line-height: 1; + -webkit-transition: border-radius 0.1s ease, width 0.2s ease; + -moz-transition: border-radius 0.1s ease, width 0.2s ease; + transition: border-radius 0.1s ease, width 0.2s ease; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + -moz-tap-highlight-color: rgba(0, 0, 0, 0); + tap-highlight-color: rgba(0, 0, 0, 0); +} +/******************************* + Content +*******************************/ +/*-------------- + Menu +---------------*/ +.ui.dropdown .menu { + cursor: auto; + position: absolute; + display: none; + top: 100%; + margin: 0em; + background-color: #FFFFFF; + min-width: 100%; + white-space: nowrap; + font-size: 0.875em; + text-shadow: none; + -webkit-box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.1); + border-radius: 0px 0px 0.325em 0.325em; + -webkit-transition: opacity 0.2s ease; + -moz-transition: opacity 0.2s ease; + transition: opacity 0.2s ease; + z-index: 11; +} +/*-------------- + Icon +---------------*/ +.ui.dropdown > .dropdown.icon { + width: auto; + margin: 0em 0em 0em 1em; +} +.ui.dropdown > .dropdown.icon:before { + content: "\f0d7"; +} +.ui.dropdown .menu .item .dropdown.icon { + width: auto; + float: right; + margin: 0em 0em 0em 0.5em; +} +.ui.dropdown .menu .item .dropdown.icon:before { + content: "\f0da" /*rtl:"\f0d9"*/; +} +/*-------------- + Text +---------------*/ +.ui.dropdown > .text { + display: inline-block; + -webkit-transition: color 0.2s ease; + -moz-transition: color 0.2s ease; + transition: color 0.2s ease; +} +/* Flyout Direction */ +.ui.dropdown .menu { + left: 0px; +} +/*-------------- + Sub Menu +---------------*/ +.ui.dropdown .menu .menu { + top: 0% !important; + left: 100% !important; + margin: 0em !important; + border-radius: 0 0.325em 0.325em 0em !important; +} +.ui.dropdown .menu .menu:after { + display: none; +} +.ui.dropdown .menu .item { + cursor: pointer; + border: none; + border-top: 1px solid rgba(0, 0, 0, 0.05); + height: auto; + font-size: 0.875em; + display: block; + color: rgba(0, 0, 0, 0.75); + padding: 0.85em 1em !important; + font-size: 0.875rem; + text-transform: none; + font-weight: normal; + text-align: left; + -webkit-touch-callout: none; +} +.ui.dropdown .menu .item:before { + display: none; +} +.ui.dropdown .menu .item .icon { + margin-right: 0.75em; +} +.ui.dropdown .menu .item:first-child { + border-top: none; +} +/******************************* + Coupling +*******************************/ +/* Opposite on last menu on right */ +.ui.menu .right.menu .dropdown:last-child .menu, +.ui.buttons > .ui.dropdown:last-child .menu { + left: auto; + right: 0px; +} +.ui.vertical.menu .dropdown.item > .dropdown.icon:before { + content: "\f0da" /*rtl:"\f0d9"*/; +} +.ui.dropdown.icon.button > .dropdown.icon { + margin: 0em; +} +/******************************* + States +*******************************/ +/* Dropdown Visible */ +.ui.visible.dropdown > .menu { + display: block; +} +/*-------------------- + Hover +----------------------*/ +/* Menu Item Hover */ +.ui.dropdown .menu .item:hover { + background-color: rgba(0, 0, 0, 0.02); + z-index: 12; +} +/*-------------------- + Active +----------------------*/ +/* Menu Item Active */ +.ui.dropdown .menu .active.item { + background-color: rgba(0, 0, 0, 0.06) !important; + border-left: none; + border-color: transparent !important; + -webkit-box-shadow: none; + -moz-shadow: none; + -webkit-box-shadow: none; + box-shadow: none; + z-index: 12; +} +/*-------------------- + Default Text +----------------------*/ +.ui.dropdown > .default.text, +.ui.default.dropdown > .text { + color: rgba(0, 0, 0, 0.5); +} +.ui.dropdown:hover > .default.text, +.ui.default.dropdown:hover > .text { + color: rgba(0, 0, 0, 0.8); +} +/*-------------------- + Error +----------------------*/ +.ui.dropdown.error, +.ui.dropdown.error > .text, +.ui.dropdown.error > .default.text { + color: #D95C5C !important; +} +.ui.selection.dropdown.error { + background-color: #FFFAFA; + -webkit-box-shadow: 0px 0px 0px 1px #e7bebe !important; + box-shadow: 0px 0px 0px 1px #e7bebe !important; +} +.ui.selection.dropdown.error:hover { + -webkit-box-shadow: 0px 0px 0px 1px #e7bebe !important; + box-shadow: 0px 0px 0px 1px #e7bebe !important; +} +.ui.dropdown.error > .menu, +.ui.dropdown.error > .menu .menu { + -webkit-box-shadow: 0px 0px 1px 1px #E7BEBE !important; + box-shadow: 0px 0px 1px 1px #E7BEBE !important; +} +.ui.dropdown.error > .menu .item { + color: #D95C5C !important; +} +/* Item Hover */ +.ui.dropdown.error > .menu .item:hover { + background-color: #FFF2F2 !important; +} +/* Item Active */ +.ui.dropdown.error > .menu .active.item { + background-color: #FDCFCF !important; +} +/******************************* + Variations +*******************************/ +/*-------------- + Simple +---------------*/ +/* Displays without javascript */ +.ui.simple.dropdown .menu:before, +.ui.simple.dropdown .menu:after { + display: none; +} +.ui.simple.dropdown .menu { + display: block; + overflow: hidden; + top: -9999px !important; + position: absolute; + opacity: 0; + width: 0; + height: 0; + -webkit-transition: opacity 0.2s ease-out; + -moz-transition: opacity 0.2s ease-out; + transition: opacity 0.2s ease-out; +} +.ui.simple.active.dropdown, +.ui.simple.dropdown:hover { + border-bottom-left-radius: 0em !important; + border-bottom-right-radius: 0em !important; +} +.ui.simple.active.dropdown > .menu, +.ui.simple.dropdown:hover > .menu { + overflow: visible; + width: auto; + height: auto; + top: 100% !important; + opacity: 1; +} +.ui.simple.dropdown > .menu .item:active > .menu, +.ui.simple.dropdown:hover > .menu .item:hover > .menu { + overflow: visible; + width: auto; + height: auto; + top: 0% !important; + left: 100% !important; + opacity: 1; +} +.ui.simple.disabled.dropdown:hover .menu { + display: none; + height: 0px; + width: 0px; + overflow: hidden; +} +/*-------------- + Selection +---------------*/ +/* Displays like a select box */ +.ui.selection.dropdown { + cursor: pointer; + display: inline-block; + word-wrap: break-word; + white-space: normal; + background-color: #FFFFFF; + padding: 0.65em 1em; + line-height: 1.33; + color: rgba(0, 0, 0, 0.8); + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) !important; + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1) !important; + border-radius: 0.3125em !important; +} +.ui.selection.dropdown select { + display: none; +} +.ui.selection.dropdown > .dropdown.icon { + opacity: 0.7; + margin: 0.2em 0em 0.2em 1.25em; + -webkit-transition: opacity 0.2s ease-out; + -moz-transition: opacity 0.2s ease-out; + transition: opacity 0.2s ease-out; +} +.ui.selection.dropdown, +.ui.selection.dropdown .menu { + -webkit-transition: -webkit-box-shadow 0.2s ease-out; + -moz-transition: box-shadow 0.2s ease-out; + transition: box-shadow 0.2s ease-out; +} +.ui.selection.dropdown .menu { + top: 100%; + max-height: 312px; + overflow-x: hidden; + overflow-y: auto; + -webkit-box-shadow: 0px 1px 0px 1px #E0E0E0; + box-shadow: 0px 1px 0px 1px #E0E0E0; + border-radius: 0px 0px 0.325em 0.325em; +} +.ui.selection.dropdown .menu:after, +.ui.selection.dropdown .menu:before { + display: none; +} +.ui.selection.dropdown .menu img { + height: 2.5em; + display: inline-block; + vertical-align: middle; + margin-right: 0.5em; +} +/* Visible */ +.ui.visible.selection.dropdown { + border-bottom-left-radius: 0em !important; + border-bottom-right-radius: 0em !important; +} +/* Active */ +.ui.active.selection.dropdown { + border-radius: 0.3125em 0.3125em 0em 0em !important; +} +.ui.active.selection.dropdown > .dropdown.icon { + opacity: 1; +} +/*-------------- + Fluid +---------------*/ +.ui.fluid.dropdown { + display: block; +} +.ui.fluid.dropdown > .dropdown.icon { + float: right; +} +/*-------------- + Inline +---------------*/ +.ui.inline.dropdown { + cursor: pointer; + display: inline-block; + color: inherit; +} +.ui.inline.dropdown .dropdown.icon { + margin: 0em 0.5em 0em 0.25em; +} +.ui.inline.dropdown .text { + font-weight: bold; +} +.ui.inline.dropdown .menu { + cursor: auto; + margin-top: 0.25em; + border-radius: 0.325em; +} +/*-------------- + Floating +---------------*/ +.ui.floating.dropdown .menu { + left: 0; + right: auto; + margin-top: 0.5em !important; + border-radius: 0.325em; +} +/*-------------- + Pointing +---------------*/ +.ui.pointing.dropdown .menu { + top: 100%; + margin-top: 0.75em; + border-radius: 0.325em; +} +.ui.pointing.dropdown .menu:after { + display: block; + position: absolute; + pointer-events: none; + content: " "; + visibility: visible; + width: 0.5em; + height: 0.5em; + -webkit-box-shadow: -1px -1px 0px 1px rgba(0, 0, 0, 0.05); + box-shadow: -1px -1px 0px 1px rgba(0, 0, 0, 0.05); + background-image: none; + background-color: #FFFFFF; + -webkit-transform: rotate(45deg); + -moz-transform: rotate(45deg); + -ms-transform: rotate(45deg); + transform: rotate(45deg); + z-index: 2; +} +.ui.pointing.dropdown .menu .active.item:first-child { + background: transparent -webkit-linear-gradient(transparent, rgba(0, 0, 0, 0.03)); + background: transparent -moz-linear-gradient(transparent, rgba(0, 0, 0, 0.03)); + background: transparent linear-gradient(transparent, rgba(0, 0, 0, 0.03)); +} +/* Directions */ +.ui.pointing.dropdown .menu:after { + top: -0.25em; + left: 50%; + margin: 0em 0em 0em -0.25em; +} +.ui.top.left.pointing.dropdown .menu { + top: 100%; + bottom: auto; + left: 0%; + right: auto; + margin: 0.75em 0em 0em; +} +.ui.top.left.pointing.dropdown .menu:after { + top: -0.25em; + left: 1.25em; + right: auto; + margin: 0em; + -webkit-transform: rotate(45deg); + -moz-transform: rotate(45deg); + -ms-transform: rotate(45deg); + transform: rotate(45deg); +} +.ui.top.right.pointing.dropdown .menu { + top: 100%; + bottom: auto; + right: 0%; + left: auto; + margin: 0.75em 0em 0em; +} +.ui.top.right.pointing.dropdown .menu:after { + top: -0.25em; + left: auto; + right: 1.25em; + margin: 0em; + -webkit-transform: rotate(45deg); + -moz-transform: rotate(45deg); + -ms-transform: rotate(45deg); + transform: rotate(45deg); +} +.ui.left.pointing.dropdown .menu { + top: 0%; + left: 100%; + right: auto; + margin: 0em 0em 0em 0.75em; +} +.ui.left.pointing.dropdown .menu:after { + top: 1em; + left: -0.25em; + margin: 0em 0em 0em 0em; + -webkit-transform: rotate(-45deg); + -moz-transform: rotate(-45deg); + -ms-transform: rotate(-45deg); + transform: rotate(-45deg); +} +.ui.right.pointing.dropdown .menu { + top: 0%; + left: auto; + right: 100%; + margin: 0em 0.75em 0em 0em; +} +.ui.right.pointing.dropdown .menu:after { + top: 1em; + left: auto; + right: -0.25em; + margin: 0em 0em 0em 0em; + -webkit-transform: rotate(135deg); + -moz-transform: rotate(135deg); + -ms-transform: rotate(135deg); + transform: rotate(135deg); +} + +/* + * # Semantic - Modal + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Modal +*******************************/ +.ui.modal { + display: none; + position: fixed; + z-index: 1001; + top: 50%; + left: 50%; + text-align: left; + width: 90%; + margin-left: -45%; + background-color: #FFFFFF; + border: 1px solid #DDDDDD; + border-radius: 5px; + -webkit-user-select: text; + -moz-user-select: text; + -ms-user-select: text; + user-select: text; +} +/******************************* + Content +*******************************/ +/*-------------- + Close +---------------*/ +.ui.modal > .close { + cursor: pointer; + position: absolute; + z-index: 1; + opacity: 0.8; + font-size: 1.25em; + top: -1.75em; + right: -1.75em; + color: #FFFFFF; +} +.ui.modal > .close:hover { + opacity: 1; +} +/*-------------- + Header +---------------*/ +.ui.modal > .header { + margin: 0em; + padding: 1.5rem 2rem; + font-size: 1.6em; + font-weight: bold; + border-radius: 0.325em 0.325em 0px 0px; +} +/*-------------- + Content +---------------*/ +.ui.modal > .content { + display: table; + width: 100%; + position: relative; + padding: 2em; + background-color: #F4F4F4; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +.ui.modal > .content > .left:not(.ui) { + display: table-cell; + padding-right: 1.5%; + min-width: 25%; +} +.ui.modal > .content > .right:not(.ui) { + display: table-cell; + padding-left: 1.5%; + vertical-align: top; +} +/*rtl:ignore*/ +.ui.modal > .content > .left:not(.ui) > i.icon { + font-size: 8em; + margin: 0em; +} +.ui.modal > .content p { + line-height: 1.6; +} +/*-------------- + Actions +---------------*/ +.ui.modal .actions { + padding: 1rem 2rem; + text-align: right; +} +.ui.modal .actions > .button { + margin-left: 0.75em; +} +/*------------------- + Sizing +--------------------*/ +/* Mobile Only */ +@media only screen and (max-width: 768px) { + /*rtl:ignore*/ + .ui.modal .content > .left:not(.ui) { + display: block; + padding: 0em 0em 1em; + } + /*rtl:ignore*/ + .ui.modal .content > .right:not(.ui) { + display: block; + padding: 1em 0em 0em; + -webkit-box-shadow: none; + box-shadow: none; + } + .ui.modal .content .image { + width: auto !important; + max-width: 100%; + } + .ui.modal .actions { + padding-bottom: 0em; + } + .ui.modal .actions > .buttons, + .ui.modal .actions > .button { + margin-bottom: 1em; + } +} +/* Tablet and Mobile */ +@media only screen and (max-width: 998px) { + .ui.modal { + width: 92%; + margin-left: -46%; + } + .ui.modal > .close { + color: rgba(0, 0, 0, 0.8); + top: 1.5rem; + right: 1rem; + } +} +/* Computer / Responsive */ +@media only screen and (min-width: 998px) { + .ui.modal { + width: 74%; + margin-left: -37%; + } +} +@media only screen and (min-width: 1500px) { + .ui.modal { + width: 56%; + margin-left: -28%; + } +} +@media only screen and (min-width: 1750px) { + .ui.modal { + width: 42%; + margin-left: -21%; + } +} +@media only screen and (min-width: 2000px) { + .ui.modal { + width: 36%; + margin-left: -18%; + } +} +/******************************* + Types +*******************************/ +.ui.basic.modal { + background-color: transparent; + border: none; + color: #FFFFFF; +} +.ui.basic.modal > .close { + top: 1.5rem; + right: 1rem; +} +.ui.basic.modal .content { + background-color: transparent; +} +/******************************* + Variations +*******************************/ +/* A modal that cannot fit on the page */ +.ui.modal.scrolling { + position: absolute; + margin-top: 10px; +} +/******************************* + States +*******************************/ +.ui.active.modal { + display: block; +} +/*-------------- + Size +---------------*/ +/* Small */ +.ui.small.modal > .header { + font-size: 1.3em; +} +@media only screen and (min-width: 998px) { + .ui.small.modal { + width: 58%; + margin-left: -29%; + } +} +@media only screen and (min-width: 1500px) { + .ui.small.modal { + width: 40%; + margin-left: -20%; + } +} +@media only screen and (min-width: 1750px) { + .ui.small.modal { + width: 26%; + margin-left: -13%; + } +} +@media only screen and (min-width: 2000px) { + .ui.small.modal { + width: 20%; + margin-left: -10%; + } +} +/* Large */ +@media only screen and (min-width: 998px) { + .ui.large.modal { + width: 74%; + margin-left: -37%; + } +} +@media only screen and (min-width: 1500px) { + .ui.large.modal { + width: 64%; + margin-left: -32%; + } +} +@media only screen and (min-width: 1750px) { + .ui.large.modal { + width: 54%; + margin-left: -27%; + } +} +@media only screen and (min-width: 2000px) { + .ui.large.modal { + width: 44%; + margin-left: -22%; + } +} + +/* + * # Semantic - Nag + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Nag +*******************************/ +.ui.nag { + display: none; + opacity: 0.95; + position: relative; + top: 0px; + left: 0%; + z-index: 101; + min-height: 0; + width: 100%; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + margin: 0em; + line-height: 3em; + padding: 0em 1em; + background-color: #555555; + -webkit-box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.2); + box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.2); + font-size: 1em; + text-align: center; + color: rgba(255, 255, 255, 0.8); + border-radius: 0px 0px 5px 5px; + -webkit-transition: 0.2s background; + -moz-transition: 0.2s background; + transition: 0.2s background; +} +a.ui.nag { + cursor: pointer; +} +.ui.nag > .title { + display: inline-block; + margin: 0em 0.5em; + color: #FFFFFF; +} +.ui.nag > .close.icon { + cursor: pointer; + opacity: 0.4; + position: absolute; + top: 50%; + right: 1em; + margin-top: -0.5em; + color: #FFFFFF; + -webkit-transition: 0.1s opacity; + -moz-transition: 0.1s opacity; + transition: 0.1s opacity; +} +/******************************* + States +*******************************/ +/* Hover */ +.ui.nag:hover { + opacity: 1; +} +.ui.nag .close:hover { + opacity: 1; +} +/******************************* + Variations +*******************************/ +/*-------------- + Static +---------------*/ +.ui.overlay.nag { + position: absolute; + display: block; +} +/*-------------- + Fixed +---------------*/ +.ui.fixed.nag { + position: fixed; +} +/*-------------- + Bottom +---------------*/ +.ui.bottom.nag { + border-radius: 5px 5px 0px 0px; +} +.ui.fixed.bottom.nags, +.ui.fixed.bottom.nag { + top: auto; + bottom: 0px; +} +/*-------------- + White +---------------*/ +.ui.white.nags .nag, +.ui.white.nag { + background-color: #F1F1F1; + text-shadow: 0px 1px 0px rgba(255, 255, 255, 0.8); + color: #ACACAC; +} +.ui.white.nags .nag .close, +.ui.white.nags .nag .title, +.ui.white.nag .close, +.ui.white.nag .title { + color: #333333; +} +/******************************* + Groups +*******************************/ +.ui.nags .nag { + border-radius: 0px; +} + +/* + * # Semantic - Popup + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Popup +*******************************/ +.ui.popup { + display: none; + position: absolute; + top: 0px; + right: 0px; + z-index: 900; + border: 1px solid rgba(0, 0, 0, 0.1); + max-width: 250px; + background-color: #FFFFFF; + padding: 0.8em 1.2em; + font-size: 0.875rem; + font-weight: normal; + font-style: normal; + color: rgba(0, 0, 0, 0.7); + border-radius: 0.2em; + -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1); + box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1); +} +.ui.popup .header { + padding: 0em 0em 0.5em; + font-size: 1.125em; + line-height: 1.2; + font-weight: bold; +} +.ui.popup:before { + position: absolute; + content: ""; + width: 0.75em; + height: 0.75rem; + background-image: none; + background-color: #FFFFFF; + -webkit-transform: rotate(45deg); + -moz-transform: rotate(45deg); + -ms-transform: rotate(45deg); + transform: rotate(45deg); + z-index: 2; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + -webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1); + box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1); +} +.ui.popup .ui.button { + width: 100%; +} +/******************************* + Types +*******************************/ +/*-------------- + Spacing +---------------*/ +.ui.popup { + margin: 0em; +} +.ui.popup.bottom { + margin: 0.75em 0em 0em; +} +.ui.popup.top { + margin: 0em 0em 0.75em; +} +.ui.popup.left.center { + margin: 0em 0.75em 0em 0em; +} +.ui.popup.right.center { + margin: 0em 0em 0em 0.75em; +} +.ui.popup.center { + margin-left: -1.25em; +} +/*-------------- + Pointer +---------------*/ +/*--- Below ---*/ +.ui.bottom.center.popup:before { + margin-left: -0.4em; + top: -0.4em; + left: 50%; + right: auto; + bottom: auto; + -webkit-box-shadow: -1px -1px 1px rgba(0, 0, 0, 0.2); + box-shadow: -1px -1px 1px rgba(0, 0, 0, 0.2); +} +.ui.bottom.left.popup { + margin-right: -2em; +} +.ui.bottom.left.popup:before { + top: -0.4em; + right: 1em; + bottom: auto; + left: auto; + margin-left: 0em; + -webkit-box-shadow: -1px -1px 1px rgba(0, 0, 0, 0.2); + box-shadow: -1px -1px 1px rgba(0, 0, 0, 0.2); +} +.ui.bottom.right.popup { + margin-left: -2em; +} +.ui.bottom.right.popup:before { + top: -0.4em; + left: 1em; + right: auto; + bottom: auto; + margin-left: 0em; + -webkit-box-shadow: -1px -1px 1px rgba(0, 0, 0, 0.2); + box-shadow: -1px -1px 1px rgba(0, 0, 0, 0.2); +} +/*--- Above ---*/ +.ui.top.center.popup:before { + top: auto; + right: auto; + bottom: -0.4em; + left: 50%; + margin-left: -0.4em; +} +.ui.top.left.popup { + margin-right: -2em; +} +.ui.top.left.popup:before { + bottom: -0.4em; + right: 1em; + top: auto; + left: auto; + margin-left: 0em; +} +.ui.top.right.popup { + margin-left: -2em; +} +.ui.top.right.popup:before { + bottom: -0.4em; + left: 1em; + top: auto; + right: auto; + margin-left: 0em; +} +/*--- Left Center ---*/ +.ui.left.center.popup:before { + top: 50%; + right: -0.35em; + bottom: auto; + left: auto; + margin-top: -0.4em; + -webkit-box-shadow: 1px -1px 1px rgba(0, 0, 0, 0.2); + box-shadow: 1px -1px 1px rgba(0, 0, 0, 0.2); +} +/*--- Right Center ---*/ +.ui.right.center.popup:before { + top: 50%; + left: -0.35em; + bottom: auto; + right: auto; + margin-top: -0.4em; + -webkit-box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.2); + box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.2); +} +/******************************* + States +*******************************/ +.ui.loading.popup { + display: block; + visibility: hidden; +} +.ui.animating.popup, +.ui.visible.popup { + display: block; +} +/******************************* + Variations +*******************************/ +/*-------------- + Size +---------------*/ +.ui.small.popup { + font-size: 0.75rem; +} +.ui.large.popup { + font-size: 1rem; +} +/*-------------- + Colors +---------------*/ +/* Inverted colors */ +.ui.inverted.popup { + background-color: #333333; + border: none; + color: #FFFFFF; + -webkit-box-shadow: none; + box-shadow: none; +} +.ui.inverted.popup .header { + background-color: rgba(0, 0, 0, 0.2); + color: #FFFFFF; +} +.ui.inverted.popup:before { + background-color: #333333; + -webkit-box-shadow: none; + box-shadow: none; +} + +/* + * # Semantic - Rating + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Rating +*******************************/ +.ui.rating { + display: inline-block; + font-size: 0em; + vertical-align: middle; + margin: 0em 0.5rem 0em 0em; +} +.ui.rating:last-child { + margin-right: 0em; +} +.ui.rating:before { + display: block; + content: ''; + visibility: hidden; + clear: both; + height: 0; +} +/* Icon */ +.ui.rating .icon { + cursor: pointer; + margin: 0em; + width: 1em; + height: auto; + padding: 0em; + color: rgba(0, 0, 0, 0.15); + font-weight: normal; + font-style: normal; +} +.ui.rating .icon:before { + content: "\2605"; +} +/******************************* + Types +*******************************/ +/*------------------- + Star +--------------------*/ +.ui.star.rating .icon { + width: 1.2em; +} +/* Star */ +.ui.star.rating .icon:before { + content: '\f006'; + font-family: 'Icons'; +} +/* Active Star */ +.ui.star.rating .active.icon:before { + content: '\f005'; + font-family: 'Icons'; +} +/*------------------- + Heart +--------------------*/ +.ui.heart.rating .icon { + width: 1.2em; +} +.ui.heart.rating .icon:before { + content: '\f08a'; + font-family: 'Icons'; +} +/* Active */ +.ui.heart.rating .active.icon:before { + content: '\f004'; + font-family: 'Icons'; +} +.ui.heart.rating .active.icon { + color: #EF404A !important; +} +/* Hovered */ +.ui.heart.rating .hover.icon, +.ui.heart.rating .active.hover.icon { + color: #FF2733 !important; +} +/******************************* + States +*******************************/ +/*------------------- + Active +--------------------*/ +/* disabled rating */ +.ui.disabled.rating .icon { + cursor: default; +} +/* active icons */ +.ui.rating .active.icon { + color: #FFCB08 !important; +} +/*------------------- + Hover +--------------------*/ +/* rating */ +.ui.rating.hover .active.icon { + opacity: 0.5; +} +/* icon */ +.ui.rating .icon.hover, +.ui.rating .icon.hover.active { + opacity: 1; + color: #FFB70A !important; +} +/******************************* + Variations +*******************************/ +.ui.small.rating .icon { + font-size: 0.75rem; +} +.ui.rating .icon { + font-size: 1rem; +} +.ui.large.rating .icon { + font-size: 1.5rem; + vertical-align: middle; +} +.ui.huge.rating .icon { + font-size: 2rem; + vertical-align: middle; +} + +/* + * # Semantic - Search + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Search +*******************************/ +.ui.search { + position: relative; + text-shadow: none; + font-style: normal; + font-weight: normal; +} +.ui.search input { + border-radius: 500rem; +} +/*-------------- + Button +---------------*/ +.ui.search > .button { + position: relative; + z-index: 2; + float: right; + margin: 0px 0px 0px -15px; + padding: 6px 15px 7px; + border-radius: 0px 15px 15px 0px; + -webkit-box-shadow: none; + box-shadow: none; +} +/*-------------- + Results +---------------*/ +.ui.search .results { + display: none; + position: absolute; + z-index: 999; + top: 100%; + left: 0px; + overflow: hidden; + background-color: #FFFFFF; + margin-top: 0.5em; + width: 380px; + font-size: 0.875em; + line-height: 1.2; + color: #555555; + border-radius: 3px; + -webkit-box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.1), 0px -2px 0px 0px rgba(0, 0, 0, 0.1) inset; + box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.1), 0px -2px 0px 0px rgba(0, 0, 0, 0.1) inset; +} +.ui.search .result { + cursor: pointer; + overflow: hidden; + padding: 0.5em 1em; +} +.ui.search .result:first-child { + border-top: none; +} +.ui.search .result .image { + background: #F0F0F0; + margin-right: 10px; + float: left; + overflow: hidden; + border-radius: 3px; + width: 38px; + height: 38px; +} +.ui.search .result .image img { + display: block; + width: 38px; + height: 38px; +} +.ui.search .result .image ~ .info { + float: none; + margin-left: 50px; +} +.ui.search .result .info { + float: left; +} +.ui.search .result .title { + font-weight: bold; + color: rgba(0, 0, 0, 0.8); +} +.ui.search .result .description { + color: rgba(0, 0, 0, 0.6); +} +.ui.search .result .price { + float: right; + color: #5BBD72; + font-weight: bold; +} +/*-------------- + Message +---------------*/ +.ui.search .message { + padding: 1em; +} +.ui.search .message .text .title { + margin: 0em 0em 0.5rem; + font-size: 1.25rem; + font-weight: bold; + color: rgba(0, 0, 0, 0.8); +} +.ui.search .message .text .description { + margin: 0em; + font-size: 1rem; + color: rgba(0, 0, 0, 0.5); +} +/*-------------- + Categories +---------------*/ +.ui.search .results .category { + background-color: #FAFAFA; + border-top: 1px solid rgba(0, 0, 0, 0.1); + -webkit-transition: background 0.2s ease-in; + -moz-transition: background 0.2s ease-in; + transition: background 0.2s ease-in; +} +.ui.search .results .category:first-child { + border-top: none; +} +.ui.search .results .category > .name { + float: left; + padding: 12px 0px 0px 8px; + font-weight: bold; + color: #777777; + text-shadow: 0px 1px 0px rgba(255, 255, 255, 0.8); +} +.ui.search .results .category .result { + background-color: #FFFFFF; + margin-left: 80px; + border-left: 1px solid rgba(0, 0, 0, 0.1); +} +/* View All Results */ +.ui.search .all { + display: block; + border-top: 1px solid rgba(0, 0, 0, 0.1); + background-color: #FAFAFA; + height: 2em; + line-height: 2em; + color: rgba(0, 0, 0, 0.6); + font-weight: bold; + text-align: center; +} +/******************************* + States +*******************************/ +/*-------------- + Hover +---------------*/ +.ui.search .result:hover, +.ui.search .category .result:hover { + background-color: #F8F8F8; +} +.ui.search .all:hover { + background-color: #F0F0F0; +} +/*-------------- + Loading +---------------*/ +.ui.search.loading .input .icon { + background: url(../images/loader-mini.gif) no-repeat 50% 50%; +} +.ui.search.loading .input .icon:before, +.ui.search.loading .input .icon:after { + display: none; +} +/*-------------- + Active +---------------*/ +.ui.search .results .category.active { + background-color: #F1F1F1; +} +.ui.search .results .category.active > .name { + color: #333333; +} +.ui.search .result.active, +.ui.search .category .result.active { + background-color: #FBFBFB; +} +.ui.search .result.active .title { + color: #000000; +} +.ui.search .result.active .description { + color: #555555; +} +/******************************* + Variations +*******************************/ +/* Large */ +.ui.search .large.result .image, +.ui.search .large.result .image img { + width: 50px; + height: 50px; +} +.ui.search .large.results .indented.info { + margin-left: 65px; +} +.ui.search .large.results .info .title { + font-size: 16px; +} +.ui.search .large.results .info .description { + font-size: 11px; +} + +/* + * # Semantic - Shape + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Shape +*******************************/ +.ui.shape { + display: inline-block; + position: relative; + -webkit-perspective: 2000px; + -moz-perspective: 2000px; + -ms-perspective: 2000px; + perspective: 2000px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +.ui.shape .sides { + -webkit-transform-style: preserve-3d; + -moz-transform-style: preserve-3d; + -ms-transform-style: preserve-3d; + transform-style: preserve-3d; +} +.ui.shape .side { + opacity: 1; + width: 100%; + margin: 0em !important; + -webkit-backface-visibility: hidden; + -moz-backface-visibility: hidden; + -ms-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +.ui.shape .side { + display: none; +} +/******************************* + Types +*******************************/ +.ui.cube.shape .side { + min-width: 15em; + height: 15em; + padding: 2em; + background-color: #E6E6E6; + color: rgba(0, 0, 0, 0.6); + -webkit-box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.3); + box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.3); +} +.ui.cube.shape .side > .content { + width: 100%; + height: 100%; + display: table; + text-align: center; + -webkit-user-select: text; + -moz-user-select: text; + -ms-user-select: text; + user-select: text; +} +.ui.cube.shape .side > .content > div { + display: table-cell; + vertical-align: middle; + font-size: 2em; +} +/******************************* + Variations +*******************************/ +.ui.text.shape.animating .sides { + position: static; +} +.ui.text.shape .side { + white-space: nowrap; +} +.ui.text.shape .side > * { + white-space: normal; +} +/******************************* + States +*******************************/ +/*-------------- + Loading +---------------*/ +.ui.loading.shape { + position: absolute; + top: -9999px; + left: -9999px; +} +/*-------------- + Animating +---------------*/ +.ui.shape .animating.side { + position: absolute; + top: 0px; + left: 0px; + z-index: 100; +} +.ui.shape .hidden.side { + opacity: 0.4; +} +/*-------------- + CSS +---------------*/ +.ui.shape.animating { + -webkit-transition: all 0.6s ease-in-out; + -moz-transition: all 0.6s ease-in-out; + transition: all 0.6s ease-in-out; +} +.ui.shape.animating .sides { + position: absolute; +} +.ui.shape.animating .sides { + -webkit-transition: all 0.6s ease-in-out; + -moz-transition: all 0.6s ease-in-out; + transition: all 0.6s ease-in-out; +} +.ui.shape.animating .side { + -webkit-transition: opacity 0.6s ease-in-out; + -moz-transition: opacity 0.6s ease-in-out; + transition: opacity 0.6s ease-in-out; +} +/*-------------- + Active +---------------*/ +.ui.shape .active.side { + display: block; +} + +/* + * # Semantic - Sidebar + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Sidebar +*******************************/ +body { + -webkit-transition: margin 0.3s ease, -webkit-transform 0.3s ease /*rtl:append:, + padding 0.3s ease*/; + -moz-transition: margin 0.3s ease, -moz-transform 0.3s ease /*rtl:append:, + padding 0.3s ease*/; + transition: margin 0.3s ease, transform 0.3s ease /*rtl:append:, + padding 0.3s ease*/; +} +.ui.sidebar { + position: fixed; + margin: 0 !important; + height: 100% !important; + border-radius: 0px !important; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + -ms-overflow-y: auto; + overflow-y: auto; + top: 0px; + left: 0px; + z-index: 999; + -webkit-transition: margin-left 0.3s ease, margin-top 0.3s ease; + -moz-transition: margin-left 0.3s ease, margin-top 0.3s ease; + transition: margin-left 0.3s ease, margin-top 0.3s ease; +} +/*------------------- + Coupling +--------------------*/ +body.pushed.scrolling.ui.dimmable { + position: static; +} +/******************************* + Types +*******************************/ +/*------------------- + Direction +--------------------*/ +.ui.right.very.thin.sidebar, +.ui.right.thin.sidebar, +.ui.right.sidebar, +.ui.right.wide.sidebar, +.ui.right.very.wide.sidebar { + left: 100%; + margin: 0px !important; +} +.ui.top.sidebar { + width: 100% !important; +} +.ui.bottom.sidebar { + width: 100% !important; + top: 100%; + margin: 0px !important; +} +/******************************* + States +*******************************/ +.ui.active.sidebar { + margin-left: 0px !important; +} +.ui.active.top.sidebar, +.ui.active.bottom.sidebar { + margin-top: 0px !important; +} +/******************************* + Variations +*******************************/ +/*------------------- + Formatted +--------------------*/ +.ui.styled.sidebar { + padding: 1em 1.5em; + background-color: #FFFFFF; + -webkit-box-shadow: 1px 0px 0px rgba(0, 0, 0, 0.1); + box-shadow: 1px 0px 0px rgba(0, 0, 0, 0.1); +} +.ui.styled.very.thin.sidebar { + padding: 0.5em; +} +.ui.styled.thin.sidebar { + padding: 1em; +} +/*------------------- + Floating +--------------------*/ +.ui.floating.sidebar { + -webkit-box-shadow: 2px 0px 2px rgba(0, 0, 0, 0.2); + box-shadow: 2px 0px 2px rgba(0, 0, 0, 0.2); +} +.ui.right.floating.sidebar { + -webkit-box-shadow: -2px 0px 2px rgba(0, 0, 0, 0.2); + box-shadow: -2px 0px 2px rgba(0, 0, 0, 0.2); +} +.ui.top.floating.sidebar { + -webkit-box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.2); + box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.2); +} +.ui.bottom.floating.sidebar { + -webkit-box-shadow: 0px -4px 4px rgba(0, 0, 0, 0.2); + box-shadow: 0px -4px 4px rgba(0, 0, 0, 0.2); +} +/*------------------- + Width +--------------------*/ +/* Very Thin */ +.ui.very.thin.sidebar { + width: 60px !important; + margin-left: -60px !important; +} +.ui.active.very.thin.sidebar { + margin-left: 0px !important; +} +.ui.active.right.very.thin.sidebar { + margin-left: -60px !important; +} +/* Thin */ +.ui.thin.sidebar { + width: 200px !important; + margin-left: -200px !important; +} +.ui.active.thin.sidebar { + margin-left: 0px !important; +} +.ui.active.right.thin.sidebar { + margin-left: -200px !important; +} +/* Standard */ +.ui.sidebar { + width: 275px !important; + margin-left: -275px !important; +} +.ui.active.sidebar { + margin-left: 0px !important; +} +.ui.active.right.sidebar { + margin-left: -275px !important; +} +/* Wide */ +.ui.wide.sidebar { + width: 350px !important; + margin-left: -350px !important; +} +.ui.active.wide.sidebar { + margin-left: 0px !important; +} +.ui.active.right.wide.sidebar { + margin-left: -350px !important; +} +/* Very Wide */ +.ui.very.wide.sidebar { + width: 475px !important; + margin-left: -475px !important; +} +.ui.active.very.wide.sidebar { + margin-left: 0px !important; +} +.ui.active.right.very.wide.sidebar { + margin-left: -475px !important; +} +/*------------------- + Height +--------------------*/ +/* Standard */ +.ui.top.sidebar { + margin: -40px 0px 0px 0px !important; +} +.ui.top.sidebar, +.ui.bottom.sidebar { + height: 40px !important; +} +.ui.active.bottom.sidebar { + margin-top: -40px !important; +} + +/* + * # Semantic - Tab + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + UI Tabs +*******************************/ +.ui.tab { + display: none; +} +/******************************* + States +*******************************/ +/*-------------------- + Active +---------------------*/ +.ui.tab.active, +.ui.tab.open { + display: block; +} +/*-------------------- + Loading +---------------------*/ +.ui.tab.loading { + position: relative; + overflow: hidden; + display: block; + min-height: 250px; + text-indent: -10000px; +} +.ui.tab.loading * { + position: relative !important; + left: -10000px !important; +} +.ui.tab.loading:after { + position: absolute; + top: 50px; + left: 50%; + content: 'Loading...'; + margin-left: -32px; + text-indent: 5px; + color: rgba(0, 0, 0, 0.4); + width: 100%; + height: 100%; + padding-top: 75px; + background: url(../images/loader-large.gif) no-repeat 0px 0px; + visibility: visible; +} + +/******************************* + Semantic - Transition + Author: Jack Lukic + + CSS animation definitions for + transition module + +*******************************/ +/* + Some transitions adapted from Animate CSS + https://github.com/daneden/animate.css +*/ +.ui.transition { + -webkit-animation-iteration-count: 1; + -moz-animation-iteration-count: 1; + animation-iteration-count: 1; + -webkit-animation-duration: 1s; + -moz-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-timing-function: ease; + -moz-animation-timing-function: ease; + animation-timing-function: ease; + -webkit-animation-fill-mode: both; + -moz-animation-fill-mode: both; + animation-fill-mode: both; +} +/******************************* + States +*******************************/ +.ui.animating.transition { + display: block; + -webkit-backface-visibility: hidden; + -moz-backface-visibility: hidden; + -ms-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-transform: translateZ(0); + -moz-transform: translateZ(0); + -ms-transform: translateZ(0); + transform: translateZ(0); +} +/* Loading */ +.ui.loading.transition { + position: absolute; + top: -999999px; + left: -99999px; +} +/* Hidden */ +.ui.hidden.transition { + display: none !important; +} +/* Visible */ +.ui.visible.transition { + display: block; + visibility: visible; +} +/* Disabled */ +.ui.disabled.transition { + -webkit-animation-play-state: paused; + -moz-animation-play-state: paused; + animation-play-state: paused; +} +/******************************* + Variations +*******************************/ +.ui.looping.transition { + -webkit-animation-iteration-count: infinite; + -moz-animation-iteration-count: infinite; + animation-iteration-count: infinite; +} +/******************************* + Types +*******************************/ +/*-------------- + Emphasis +---------------*/ +.ui.flash.transition { + -webkit-animation-name: flash; + -moz-animation-name: flash; + animation-name: flash; +} +.ui.shake.transition { + -webkit-animation-name: shake; + -moz-animation-name: shake; + animation-name: shake; +} +.ui.bounce.transition { + -webkit-animation-name: bounce; + -moz-animation-name: bounce; + animation-name: bounce; +} +.ui.tada.transition { + -webkit-animation-name: tada; + -moz-animation-name: tada; + animation-name: tada; +} +/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ +.ui.pulse.transition { + -webkit-animation-name: pulse; + -moz-animation-name: pulse; + animation-name: pulse; +} +/*-------------- + Flips +---------------*/ +.ui.flip.transition.in, +.ui.flip.transition.out { + -webkit-perspective: 2000px; + -moz-perspective: 2000px; + -ms-perspective: 2000px; + perspective: 2000px; +} +.ui.horizontal.flip.transition.in, +.ui.horizontal.flip.transition.out { + -webkit-animation-name: horizontalFlip; + -moz-animation-name: horizontalFlip; + animation-name: horizontalFlip; +} +.ui.horizontal.flip.transition.out { + -webkit-animation-name: horizontalFlipOut; + -moz-animation-name: horizontalFlipOut; + animation-name: horizontalFlipOut; +} +.ui.vertical.flip.transition.in, +.ui.vertical.flip.transition.out { + -webkit-animation-name: verticalFlip; + -moz-animation-name: verticalFlip; + animation-name: verticalFlip; +} +.ui.vertical.flip.transition.out { + -webkit-animation-name: verticalFlipOut; + -moz-animation-name: verticalFlipOut; + animation-name: verticalFlipOut; +} +/*-------------- + Fades +---------------*/ +.ui.fade.transition.in { + -webkit-animation-name: fade; + -moz-animation-name: fade; + animation-name: fade; +} +.ui.fade.transition.out { + -webkit-animation-name: fadeOut; + -moz-animation-name: fadeOut; + animation-name: fadeOut; +} +.ui.fade.up.transition.in { + -webkit-animation-name: fadeUp; + -moz-animation-name: fadeUp; + animation-name: fadeUp; +} +.ui.fade.up.transition.out { + -webkit-animation-name: fadeUpOut; + -moz-animation-name: fadeUpOut; + animation-name: fadeUpOut; +} +.ui.fade.down.transition.in { + -webkit-animation-name: fadeDown; + -moz-animation-name: fadeDown; + animation-name: fadeDown; +} +.ui.fade.down.transition.out { + -webkit-animation-name: fadeDownOut; + -moz-animation-name: fadeDownOut; + animation-name: fadeDownOut; +} +/*-------------- + Scale +---------------*/ +.ui.scale.transition.in { + -webkit-animation-name: scale; + -moz-animation-name: scale; + animation-name: scale; +} +.ui.scale.transition.out { + -webkit-animation-name: scaleOut; + -moz-animation-name: scaleOut; + animation-name: scaleOut; +} +/*-------------- + Slide +---------------*/ +.ui.slide.down.transition.in { + -webkit-animation-name: slide; + -moz-animation-name: slide; + animation-name: slide; + -moz-transform-origin: 50% 0%; + transform-origin: 50% 0%; + -ms-transform-origin: 50% 0%; + -webkit-transform-origin: 50% 0%; +} +.ui.slide.down.transition.out { + -webkit-animation-name: slideOut; + -moz-animation-name: slideOut; + animation-name: slideOut; + -webkit-transform-origin: 50% 0%; + -moz-transform-origin: 50% 0%; + -ms-transform-origin: 50% 0%; + transform-origin: 50% 0%; +} +.ui.slide.up.transition.in { + -webkit-animation-name: slide; + -moz-animation-name: slide; + animation-name: slide; + -webkit-transform-origin: 50% 100%; + -moz-transform-origin: 50% 100%; + -ms-transform-origin: 50% 100%; + transform-origin: 50% 100%; +} +.ui.slide.up.transition.out { + -webkit-animation-name: slideOut; + -moz-animation-name: slideOut; + animation-name: slideOut; + -webkit-transform-origin: 50% 100%; + -moz-transform-origin: 50% 100%; + -ms-transform-origin: 50% 100%; + transform-origin: 50% 100%; +} +@-webkit-keyframes slide { + 0% { + opacity: 0; + -webkit-transform: scaleY(0); + transform: scaleY(0); + } + 100% { + opacity: 1; + -webkit-transform: scaleY(1); + transform: scaleY(1); + } +} +@-moz-keyframes slide { + 0% { + opacity: 0; + -moz-transform: scaleY(0); + transform: scaleY(0); + } + 100% { + opacity: 1; + -moz-transform: scaleY(1); + transform: scaleY(1); + } +} +@keyframes slide { + 0% { + opacity: 0; + -webkit-transform: scaleY(0); + -moz-transform: scaleY(0); + transform: scaleY(0); + } + 100% { + opacity: 1; + -webkit-transform: scaleY(1); + -moz-transform: scaleY(1); + transform: scaleY(1); + } +} +@-webkit-keyframes slideOut { + 0% { + opacity: 1; + -webkit-transform: scaleY(1); + transform: scaleY(1); + } + 100% { + opacity: 0; + -webkit-transform: scaleY(0); + transform: scaleY(0); + } +} +@-moz-keyframes slideOut { + 0% { + opacity: 1; + -moz-transform: scaleY(1); + transform: scaleY(1); + } + 100% { + opacity: 0; + -moz-transform: scaleY(0); + transform: scaleY(0); + } +} +@keyframes slideOut { + 0% { + opacity: 1; + -webkit-transform: scaleY(1); + -moz-transform: scaleY(1); + transform: scaleY(1); + } + 100% { + opacity: 0; + -webkit-transform: scaleY(0); + -moz-transform: scaleY(0); + transform: scaleY(0); + } +} +/******************************* + Animations +*******************************/ +/*-------------- + Emphasis +---------------*/ +/* Flash */ +@-webkit-keyframes flash { + 0%, + 50%, + 100% { + opacity: 1; + } + 25%, + 75% { + opacity: 0; + } +} +@-moz-keyframes flash { + 0%, + 50%, + 100% { + opacity: 1; + } + 25%, + 75% { + opacity: 0; + } +} +@keyframes flash { + 0%, + 50%, + 100% { + opacity: 1; + } + 25%, + 75% { + opacity: 0; + } +} +/* Shake */ +@-webkit-keyframes shake { + 0%, + 100% { + -webkit-transform: translateX(0); + transform: translateX(0); + } + 10%, + 30%, + 50%, + 70%, + 90% { + -webkit-transform: translateX(-10px); + transform: translateX(-10px); + } + 20%, + 40%, + 60%, + 80% { + -webkit-transform: translateX(10px); + transform: translateX(10px); + } +} +@-moz-keyframes shake { + 0%, + 100% { + -moz-transform: translateX(0); + transform: translateX(0); + } + 10%, + 30%, + 50%, + 70%, + 90% { + -moz-transform: translateX(-10px); + transform: translateX(-10px); + } + 20%, + 40%, + 60%, + 80% { + -moz-transform: translateX(10px); + transform: translateX(10px); + } +} +@keyframes shake { + 0%, + 100% { + -webkit-transform: translateX(0); + -moz-transform: translateX(0); + transform: translateX(0); + } + 10%, + 30%, + 50%, + 70%, + 90% { + -webkit-transform: translateX(-10px); + -moz-transform: translateX(-10px); + transform: translateX(-10px); + } + 20%, + 40%, + 60%, + 80% { + -webkit-transform: translateX(10px); + -moz-transform: translateX(10px); + transform: translateX(10px); + } +} +/* Bounce */ +@-webkit-keyframes bounce { + 0%, + 20%, + 50%, + 80%, + 100% { + -webkit-transform: translateY(0); + transform: translateY(0); + } + 40% { + -webkit-transform: translateY(-30px); + transform: translateY(-30px); + } + 60% { + -webkit-transform: translateY(-15px); + transform: translateY(-15px); + } +} +@-moz-keyframes bounce { + 0%, + 20%, + 50%, + 80%, + 100% { + -moz-transform: translateY(0); + transform: translateY(0); + } + 40% { + -moz-transform: translateY(-30px); + transform: translateY(-30px); + } + 60% { + -moz-transform: translateY(-15px); + transform: translateY(-15px); + } +} +@keyframes bounce { + 0%, + 20%, + 50%, + 80%, + 100% { + -webkit-transform: translateY(0); + -moz-transform: translateY(0); + transform: translateY(0); + } + 40% { + -webkit-transform: translateY(-30px); + -moz-transform: translateY(-30px); + transform: translateY(-30px); + } + 60% { + -webkit-transform: translateY(-15px); + -moz-transform: translateY(-15px); + transform: translateY(-15px); + } +} +/* Tada */ +@-webkit-keyframes tada { + 0% { + -webkit-transform: scale(1); + transform: scale(1); + } + 10%, + 20% { + -webkit-transform: scale(0.9) rotate(-3deg); + transform: scale(0.9) rotate(-3deg); + } + 30%, + 50%, + 70%, + 90% { + -webkit-transform: scale(1.1) rotate(3deg); + transform: scale(1.1) rotate(3deg); + } + 40%, + 60%, + 80% { + -webkit-transform: scale(1.1) rotate(-3deg); + transform: scale(1.1) rotate(-3deg); + } + 100% { + -webkit-transform: scale(1) rotate(0); + transform: scale(1) rotate(0); + } +} +@-moz-keyframes tada { + 0% { + -moz-transform: scale(1); + transform: scale(1); + } + 10%, + 20% { + -moz-transform: scale(0.9) rotate(-3deg); + transform: scale(0.9) rotate(-3deg); + } + 30%, + 50%, + 70%, + 90% { + -moz-transform: scale(1.1) rotate(3deg); + transform: scale(1.1) rotate(3deg); + } + 40%, + 60%, + 80% { + -moz-transform: scale(1.1) rotate(-3deg); + transform: scale(1.1) rotate(-3deg); + } + 100% { + -moz-transform: scale(1) rotate(0); + transform: scale(1) rotate(0); + } +} +@keyframes tada { + 0% { + -webkit-transform: scale(1); + -moz-transform: scale(1); + transform: scale(1); + } + 10%, + 20% { + -webkit-transform: scale(0.9) rotate(-3deg); + -moz-transform: scale(0.9) rotate(-3deg); + transform: scale(0.9) rotate(-3deg); + } + 30%, + 50%, + 70%, + 90% { + -webkit-transform: scale(1.1) rotate(3deg); + -moz-transform: scale(1.1) rotate(3deg); + transform: scale(1.1) rotate(3deg); + } + 40%, + 60%, + 80% { + -webkit-transform: scale(1.1) rotate(-3deg); + -moz-transform: scale(1.1) rotate(-3deg); + transform: scale(1.1) rotate(-3deg); + } + 100% { + -webkit-transform: scale(1) rotate(0); + -moz-transform: scale(1) rotate(0); + transform: scale(1) rotate(0); + } +} +/* Pulse */ +@-webkit-keyframes pulse { + 0% { + -webkit-transform: scale(1); + transform: scale(1); + opacity: 1; + } + 50% { + -webkit-transform: scale(0.9); + transform: scale(0.9); + opacity: 0.7; + } + 100% { + -webkit-transform: scale(1); + transform: scale(1); + opacity: 1; + } +} +@-moz-keyframes pulse { + 0% { + -moz-transform: scale(1); + transform: scale(1); + opacity: 1; + } + 50% { + -moz-transform: scale(0.9); + transform: scale(0.9); + opacity: 0.7; + } + 100% { + -moz-transform: scale(1); + transform: scale(1); + opacity: 1; + } +} +@keyframes pulse { + 0% { + -webkit-transform: scale(1); + -moz-transform: scale(1); + transform: scale(1); + opacity: 1; + } + 50% { + -webkit-transform: scale(0.9); + -moz-transform: scale(0.9); + transform: scale(0.9); + opacity: 0.7; + } + 100% { + -webkit-transform: scale(1); + -moz-transform: scale(1); + transform: scale(1); + opacity: 1; + } +} +/*-------------- + Flips +---------------*/ +/* Horizontal */ +@-webkit-keyframes horizontalFlip { + 0% { + -webkit-transform: rotateY(-90deg); + transform: rotateY(-90deg); + opacity: 0; + } + 100% { + -webkit-transform: rotateY(0deg); + transform: rotateY(0deg); + opacity: 1; + } +} +@-moz-keyframes horizontalFlip { + 0% { + -moz-transform: rotateY(-90deg); + transform: rotateY(-90deg); + opacity: 0; + } + 100% { + -moz-transform: rotateY(0deg); + transform: rotateY(0deg); + opacity: 1; + } +} +@keyframes horizontalFlip { + 0% { + -webkit-transform: rotateY(-90deg); + -moz-transform: rotateY(-90deg); + transform: rotateY(-90deg); + opacity: 0; + } + 100% { + -webkit-transform: rotateY(0deg); + -moz-transform: rotateY(0deg); + transform: rotateY(0deg); + opacity: 1; + } +} +/* Horizontal */ +@-webkit-keyframes horizontalFlipOut { + 0% { + -webkit-transform: rotateY(0deg); + transform: rotateY(0deg); + opacity: 1; + } + 100% { + -webkit-transform: rotateY(90deg); + transform: rotateY(90deg); + opacity: 0; + } +} +@-moz-keyframes horizontalFlipOut { + 0% { + -moz-transform: rotateY(0deg); + transform: rotateY(0deg); + opacity: 1; + } + 100% { + -moz-transform: rotateY(90deg); + transform: rotateY(90deg); + opacity: 0; + } +} +@keyframes horizontalFlipOut { + 0% { + -webkit-transform: rotateY(0deg); + -moz-transform: rotateY(0deg); + transform: rotateY(0deg); + opacity: 1; + } + 100% { + -webkit-transform: rotateY(90deg); + -moz-transform: rotateY(90deg); + transform: rotateY(90deg); + opacity: 0; + } +} +/* Vertical */ +@-webkit-keyframes verticalFlip { + 0% { + -webkit-transform: rotateX(-90deg); + transform: rotateX(-90deg); + opacity: 0; + } + 100% { + -webkit-transform: rotateX(0deg); + transform: rotateX(0deg); + opacity: 1; + } +} +@-moz-keyframes verticalFlip { + 0% { + -moz-transform: rotateX(-90deg); + transform: rotateX(-90deg); + opacity: 0; + } + 100% { + -moz-transform: rotateX(0deg); + transform: rotateX(0deg); + opacity: 1; + } +} +@keyframes verticalFlip { + 0% { + -webkit-transform: rotateX(-90deg); + -moz-transform: rotateX(-90deg); + transform: rotateX(-90deg); + opacity: 0; + } + 100% { + -webkit-transform: rotateX(0deg); + -moz-transform: rotateX(0deg); + transform: rotateX(0deg); + opacity: 1; + } +} +@-webkit-keyframes verticalFlipOut { + 0% { + -webkit-transform: rotateX(0deg); + transform: rotateX(0deg); + opacity: 1; + } + 100% { + -webkit-transform: rotateX(-90deg); + transform: rotateX(-90deg); + opacity: 0; + } +} +@-moz-keyframes verticalFlipOut { + 0% { + -moz-transform: rotateX(0deg); + transform: rotateX(0deg); + opacity: 1; + } + 100% { + -moz-transform: rotateX(-90deg); + transform: rotateX(-90deg); + opacity: 0; + } +} +@keyframes verticalFlipOut { + 0% { + -webkit-transform: rotateX(0deg); + -moz-transform: rotateX(0deg); + transform: rotateX(0deg); + opacity: 1; + } + 100% { + -webkit-transform: rotateX(-90deg); + -moz-transform: rotateX(-90deg); + transform: rotateX(-90deg); + opacity: 0; + } +} +/*-------------- + Fades +---------------*/ +/* Fade */ +@-webkit-keyframes fade { + 0% { + opacity: 0; + } + 100% { + opacity: 1; + } +} +@-moz-keyframes fade { + 0% { + opacity: 0; + } + 100% { + opacity: 1; + } +} +@keyframes fade { + 0% { + opacity: 0; + } + 100% { + opacity: 1; + } +} +@-webkit-keyframes fadeOut { + 0% { + opacity: 1; + } + 100% { + opacity: 0; + } +} +@-moz-keyframes fadeOut { + 0% { + opacity: 1; + } + 100% { + opacity: 0; + } +} +@keyframes fadeOut { + 0% { + opacity: 1; + } + 100% { + opacity: 0; + } +} +/* Fade Up */ +@-webkit-keyframes fadeUp { + 0% { + opacity: 0; + -webkit-transform: translateY(20px); + transform: translateY(20px); + } + 100% { + opacity: 1; + -webkit-transform: translateY(0); + transform: translateY(0); + } +} +@-moz-keyframes fadeUp { + 0% { + opacity: 0; + -moz-transform: translateY(20px); + transform: translateY(20px); + } + 100% { + opacity: 1; + -moz-transform: translateY(0); + transform: translateY(0); + } +} +@keyframes fadeUp { + 0% { + opacity: 0; + -webkit-transform: translateY(20px); + -moz-transform: translateY(20px); + transform: translateY(20px); + } + 100% { + opacity: 1; + -webkit-transform: translateY(0); + -moz-transform: translateY(0); + transform: translateY(0); + } +} +@-webkit-keyframes fadeUpOut { + 0% { + opacity: 1; + -webkit-transform: translateY(0); + transform: translateY(0); + } + 100% { + opacity: 0; + -webkit-transform: translateY(20px); + transform: translateY(20px); + } +} +@-moz-keyframes fadeUpOut { + 0% { + opacity: 1; + -moz-transform: translateY(0); + transform: translateY(0); + } + 100% { + opacity: 0; + -moz-transform: translateY(20px); + transform: translateY(20px); + } +} +@keyframes fadeUpOut { + 0% { + opacity: 1; + -webkit-transform: translateY(0); + -moz-transform: translateY(0); + transform: translateY(0); + } + 100% { + opacity: 0; + -webkit-transform: translateY(20px); + -moz-transform: translateY(20px); + transform: translateY(20px); + } +} +/* Fade Down */ +@-webkit-keyframes fadeDown { + 0% { + opacity: 0; + -webkit-transform: translateY(-20px); + transform: translateY(-20px); + } + 100% { + opacity: 1; + -webkit-transform: translateY(0); + transform: translateY(0); + } +} +@-moz-keyframes fadeDown { + 0% { + opacity: 0; + -moz-transform: translateY(-20px); + transform: translateY(-20px); + } + 100% { + opacity: 1; + -moz-transform: translateY(0); + transform: translateY(0); + } +} +@keyframes fadeDown { + 0% { + opacity: 0; + -webkit-transform: translateY(-20px); + -moz-transform: translateY(-20px); + transform: translateY(-20px); + } + 100% { + opacity: 1; + -webkit-transform: translateY(0); + -moz-transform: translateY(0); + transform: translateY(0); + } +} +@-webkit-keyframes fadeDownOut { + 0% { + opacity: 1; + -webkit-transform: translateY(0); + transform: translateY(0); + } + 100% { + opacity: 0; + -webkit-transform: translateY(-20px); + transform: translateY(-20px); + } +} +@-moz-keyframes fadeDownOut { + 0% { + opacity: 1; + -moz-transform: translateY(0); + transform: translateY(0); + } + 100% { + opacity: 0; + -moz-transform: translateY(-20px); + transform: translateY(-20px); + } +} +@keyframes fadeDownOut { + 0% { + opacity: 1; + -webkit-transform: translateY(0); + -moz-transform: translateY(0); + transform: translateY(0); + } + 100% { + opacity: 0; + -webkit-transform: translateY(-20px); + -moz-transform: translateY(-20px); + transform: translateY(-20px); + } +} +/*-------------- + Scale +---------------*/ +/* Scale */ +@-webkit-keyframes scale { + 0% { + opacity: 0; + -webkit-transform: scale(0.7); + transform: scale(0.7); + } + 100% { + opacity: 1; + -webkit-transform: scale(1); + transform: scale(1); + } +} +@-moz-keyframes scale { + 0% { + opacity: 0; + -moz-transform: scale(0.7); + transform: scale(0.7); + } + 100% { + opacity: 1; + -moz-transform: scale(1); + transform: scale(1); + } +} +@keyframes scale { + 0% { + opacity: 0; + -webkit-transform: scale(0.7); + -moz-transform: scale(0.7); + transform: scale(0.7); + } + 100% { + opacity: 1; + -webkit-transform: scale(1); + -moz-transform: scale(1); + transform: scale(1); + } +} +@-webkit-keyframes scaleOut { + 0% { + opacity: 1; + -webkit-transform: scale(1); + transform: scale(1); + } + 100% { + opacity: 0; + -webkit-transform: scale(0.7); + transform: scale(0.7); + } +} +@-moz-keyframes scaleOut { + 0% { + opacity: 1; + -moz-transform: scale(1); + transform: scale(1); + } + 100% { + opacity: 0; + -moz-transform: scale(0.7); + transform: scale(0.7); + } +} +@keyframes scaleOut { + 0% { + opacity: 1; + -webkit-transform: scale(1); + -moz-transform: scale(1); + transform: scale(1); + } + 100% { + opacity: 0; + -webkit-transform: scale(0.7); + -moz-transform: scale(0.7); + transform: scale(0.7); + } +} + +/* + * # Semantic - Video + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +/******************************* + Video +*******************************/ +.ui.video { + position: relative; + max-width: 100%; +} +/*-------------- + Content +---------------*/ +/* Placeholder Image */ +.ui.video .placeholder { + background-color: #333333; +} +/* Play Icon Overlay */ +.ui.video .play { + cursor: pointer; + position: absolute; + top: 0px; + left: 0px; + z-index: 10; + width: 100%; + height: 100%; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; + filter: alpha(opacity=60); + opacity: 0.6; + -webkit-transition: opacity 0.3s; + -moz-transition: opacity 0.3s; + transition: opacity 0.3s; +} +.ui.video .play.icon:before { + position: absolute; + top: 50%; + left: 50%; + z-index: 11; + font-size: 6rem; + margin: -3rem 0em 0em -3rem; + color: #FFFFFF; + text-shadow: 0px 3px 3px rgba(0, 0, 0, 0.4); +} +.ui.video .placeholder { + display: block; + width: 100%; + height: 100%; +} +/* IFrame Embed */ +.ui.video .embed { + display: none; +} +/******************************* + States +*******************************/ +/*-------------- + Hover +---------------*/ +.ui.video .play:hover { + opacity: 1; +} +/*-------------- + Active +---------------*/ +.ui.video.active .play, +.ui.video.active .placeholder { + display: none; +} +.ui.video.active .embed { + display: block; +} + +/* + * # Semantic Comment View + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + * Released: April 17 2013 + */ +/******************************* + Standard +*******************************/ +/*-------------- + Comments +---------------*/ +.ui.comments a { + cursor: pointer; +} +/*-------------- + Comment +---------------*/ +.ui.comments .comment { + position: relative; + margin-top: 0.5em; + padding-top: 0.5em; +} +.ui.comments .comment:first-child { + margin-top: 0em; + padding-top: 0em; +} +/*-------------------- + Avatar (Optional) +---------------------*/ +.ui.comments .comment .avatar { + display: block; + float: left; + width: 4em; +} +.ui.comments .comment .avatar img { + display: block; + margin: 0em auto; + width: 3em; + height: 3em; + border-radius: 500px; +} +/*-------------- + Content +---------------*/ +.ui.comments .comment > .content, +.ui.comments .comment > .avatar { + display: block; +} +.ui.comments .comment .avatar ~ .content { + padding: 0em 1em; +} +/* If there is an avatar move content over */ +.ui.comments .comment > .avatar ~ .content { + padding-top: 0.25em; + margin-left: 3.5em; +} +.ui.comments .comment .metadata { + display: inline-block; + margin-left: 0.3em; + color: rgba(0, 0, 0, 0.4); +} +.ui.comments .comment .metadata > * { + display: inline-block; + margin: 0em 0.3em 0em 0em; +} +/*-------------------- + Comment Text +---------------------*/ +.ui.comments .comment .text { + margin: 0.25em 0em 0.5em; + word-wrap: break-word; +} +/*-------------------- + User Actions +---------------------*/ +.ui.comments .comment .actions { + font-size: 0.9em; +} +.ui.comments .comment .actions a { + display: inline-block; + margin: 0em 0.3em 0em 0em; + color: rgba(0, 0, 0, 0.3); +} +.ui.comments .comment .actions a.active, +.ui.comments .comment .actions a:hover { + color: rgba(0, 0, 0, 0.6); +} +/*-------------------- + Reply Form +---------------------*/ +.ui.comments .reply.form { + margin-top: 0.75em; + width: 100%; + max-width: 30em; +} +.ui.comments .comment .reply.form { + margin-left: 2em; +} +.ui.comments > .reply.form { + margin-top: 1.5em; + max-width: 40em; +} +.ui.comments .reply.form textarea { + height: 12em; +} +/*-------------------- + Nested Comments +---------------------*/ +.ui.comments .comment .comments { + margin-top: 0.5em; + padding-top: 0.5em; + padding-bottom: 1em; +} +.ui.comments .comment .comments:before { + position: absolute; + top: 0px; + left: 0px; +} +/* One Deep */ +.ui.comments > .comment .comments { + margin-left: 2em; +} +/* Two Deep */ +.ui.comments > .comment > .comments > .comment > .comments { + margin-left: 1.75em; +} +/* Three Deep */ +.ui.comments > .comment > .comments > .comment > .comments > .comment > .comments { + margin-left: 1.5em; +} +/* Four Deep or more */ +.ui.comments > .comment > .comments > .comment > .comments > .comment > .comments > .comment .comments { + margin-left: 0.5em; +} +/******************************* + Variations +*******************************/ +/*-------------------- + Threaded +---------------------*/ +.ui.threaded.comments .comment .comments { + margin-left: 2em !important; + padding-left: 2em !important; + -webkit-box-shadow: -1px 0px 0px rgba(0, 0, 0, 0.05); + box-shadow: -1px 0px 0px rgba(0, 0, 0, 0.05); +} +/*-------------------- + Minimal +---------------------*/ +.ui.minimal.comments .comment .actions { + opacity: 0; + -webkit-transition: opacity 0.1s ease-out; + -moz-transition: opacity 0.1s ease-out; + transition: opacity 0.1s ease-out; + -webkit-transition-delay: 0.1s; + -moz-transition-delay: 0.1s; + transition-delay: 0.1s; +} +.ui.minimal.comments .comment > .content:hover > .actions { + opacity: 1; +} +/*-------------------- + Sizes +---------------------*/ +.ui.small.comments { + font-size: 0.875em; +} + +/* + * # Activity Feed View + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + * Released: May 22, 2013 + */ +/******************************* + Activity Feed +*******************************/ +.ui.feed a { + cursor: pointer; +} +.ui.feed, +.ui.feed .event, +.ui.feed .label, +.ui.feed .content, +.ui.feed .extra { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +/******************************* + Content +*******************************/ +/* Event */ +.ui.feed .event { + width: 100%; + display: table; + padding: 1em; +} +.ui.feed .event:first-child { + border-top: 0px; +} +.ui.feed .event:last-child { + margin-bottom: 1em; +} +/* Event Label */ +.ui.feed .label { + width: 3em; + display: table-cell; + vertical-align: top; + text-align: left; +} +.ui.feed .label .icon { + font-size: 1.5em; + padding: 0.5em; + margin: 0em; +} +.ui.feed .label img { + width: 3em; + margin: 0em; + border-radius: 50em; +} +.ui.feed .label + .content { + padding: 0.75em 1em 0em; +} +/* Content */ +.ui.feed .content { + display: table-cell; + vertical-align: top; + text-align: left; + word-wrap: break-word; +} +/* Date */ +.ui.feed .content .date { + float: right; + padding-left: 1em; + color: rgba(0, 0, 0, 0.4); +} +/* Summary */ +.ui.feed .content .summary { + color: rgba(0, 0, 0, 0.75); +} +.ui.feed .content .summary img { + display: inline-block; + margin-right: 0.25em; + width: 4em; + border-radius: 500px; +} +/* Additional Information */ +.ui.feed .content .extra { + margin: 1em 0em 0em; + padding: 0.5em 0em 0em; + color: rgba(0, 0, 0, 0.5); +} +.ui.feed .content .extra.images img { + display: inline-block; + margin-right: 0.25em; + width: 6em; +} +.ui.feed .content .extra.text { + padding: 0.5em 1em; + border-left: 0.2em solid rgba(0, 0, 0, 0.1); +} +/******************************* + Variations +*******************************/ +.ui.small.feed { + font-size: 0.875em; +} +.ui.small.feed .label img { + width: 2.5em; +} +.ui.small.feed .label .icon { + font-size: 1.25em; +} +.ui.feed .event { + padding: 0.75em 0em; +} +.ui.small.feed .label + .content { + padding: 0.5em 0.5em 0; +} +.ui.small.feed .content .extra.images img { + width: 5em; +} +.ui.small.feed .content .extra { + margin: 0.5em 0em 0em; +} +.ui.small.feed .content .extra.text { + padding: 0.25em 0.5em; +} + +/* + * # Semantic Item View + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + * Released: April 17 2013 + */ +/******************************* + Standard +*******************************/ +/*-------------- + Items +---------------*/ +.ui.items { + margin: 1em 0em 0em; +} +.ui.items:first-child { + margin-top: 0em; +} +.ui.items:last-child { + margin-bottom: -1em; +} +/* Force Clearing */ +.ui.items:after { + display: block; + content: ' '; + height: 0px; + clear: both; + overflow: hidden; + visibility: hidden; +} +/*-------------- + Item +---------------*/ +.ui.items > .row > .item, +.ui.items > .item { + display: block; + float: left; + position: relative; + top: 0px; + width: 316px; + min-height: 375px; + margin: 0em 0.5em 2.5em; + padding: 0em; + background-color: #FFFFFF; + line-height: 1.2; + font-size: 1em; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.1); + border-bottom: 0.2em solid rgba(0, 0, 0, 0.2); + border-radius: 0.33em; + -webkit-transition: -webkit-box-shadow 0.2s ease; + -moz-transition: box-shadow 0.2s ease; + transition: box-shadow 0.2s ease; + padding: 0.5em; +} +.ui.items a.item, +.ui.items .item a { + cursor: pointer; +} +.ui.items .item, +.ui.items .item > .image, +.ui.items .item > .image .overlay, +.ui.items .item > .content, +.ui.items .item > .content > .meta, +.ui.items .item > .content > .extra { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; +} +/*-------------- + Images +---------------*/ +.ui.items .item > .image { + display: block; + position: relative; + background-color: rgba(0, 0, 0, 0.05); + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + -ms-box-sizing: border-box; + box-sizing: border-box; + border-radius: 0.2em; +} +.ui.items .item > .image > img { + display: block; + width: 100%; +} +/*-------------- + Content +---------------*/ +.ui.items .item > .content { + padding: 0.75em 0.5em; +} +.ui.items .item > .content > .name { + display: block; + font-size: 1.25em; + font-weight: bold; + margin-bottom: 0.2em; + color: rgba(0, 0, 0, 0.7); +} +.ui.items .item > .content > .description { + clear: both; + margin: 0em 0em; + color: rgba(0, 0, 0, 0.45); +} +.ui.items .item > .content > .description p { + margin: 0em 0em 0.2em; +} +.ui.items .item > .content > .description p:last-child { + margin-bottom: 0em; +} +/*-------------- + Meta +---------------*/ +.ui.items .item .meta { + float: right; + color: rgba(0, 0, 0, 0.35); +} +.ui.items .item > .content > .meta + .name { + float: left; +} +/*-------------- + Labels +---------------*/ +/*-----star----- */ +/* hover */ +.ui.items .item .star.label:hover::after { + border-right-color: #F6EFC3; +} +.ui.items .item .star.label:hover::after { + border-top-color: #F6EFC3; +} +.ui.items .item .star.label:hover .icon { + color: #ac9400; +} +/* active */ +.ui.items .item .star.label.active::after { + border-right-color: #F6EFC3; +} +.ui.items .item .star.label.active::after { + border-top-color: #F6EFC3; +} +.ui.items .item .star.label.active .icon { + color: #ac9400; +} +/*-----like----- */ +/* hover */ +.ui.items .item .like.label:hover::after { + border-right-color: #F5E1E2; +} +.ui.items .item .like.label.active::after { + border-top-color: #F5E1E2; +} +.ui.items .item .like.label:hover .icon { + color: #ef404a; +} +/* active */ +.ui.items .item .like.label.active::after { + border-right-color: #F5E1E2; +} +.ui.items .item .like.label.active::after { + border-top-color: #F5E1E2; +} +.ui.items .item .like.label.active .icon { + color: #ef404a; +} +/*-------------- + Extra +---------------*/ +.ui.items .item .extra { + position: absolute; + width: 100%; + padding: 0em 0.5em; + bottom: -2em; + left: 0em; + height: 1.5em; + color: rgba(0, 0, 0, 0.25); + -webkit-transition: color 0.2s ease; + -moz-transition: color 0.2s ease; + transition: color 0.2s ease; +} +.ui.items .item .extra > img { + display: inline-block; + border-radius: 500px 500px 500px 500px; + margin-right: 0.25em; + vertical-align: middle; + width: 2em; +} +.ui.items .item .extra .left { + float: left; +} +.ui.items .item .extra .right { + float: right; +} +/******************************* + States +*******************************/ +.ui.items .item:hover { + cursor: pointer; + z-index: 5; + -webkit-box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.2); + box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.2); +} +.ui.items .item:hover .extra { + color: rgba(0, 0, 0, 0.5); +} +.ui.items .item:nth-of-type(6n+1):hover { + border-bottom-color: #6ECFF5 !important; +} +.ui.items .item:nth-of-type(6n+2):hover { + border-bottom-color: #5C6166 !important; +} +.ui.items .item:nth-of-type(6n+3):hover { + border-bottom-color: #A1CF64 !important; +} +.ui.items .item:nth-of-type(6n+4):hover { + border-bottom-color: #D95C5C !important; +} +.ui.items .item:nth-of-type(6n+5):hover { + border-bottom-color: #00B5AD !important; +} +.ui.items .item:nth-of-type(6n+6):hover { + border-bottom-color: #564F8A !important; +} +/******************************* + Variations +*******************************/ +/*-------------- + Connected +---------------*/ +.ui.connected.items { + display: table; + width: 100%; + margin-left: 0em !important; + margin-right: 0em !important; +} +.ui.connected.items > .row > .item, +.ui.connected.items > .item { + float: none; + display: table-cell; + vertical-align: top; + height: auto; + border-radius: 0px; + margin: 0em; + width: 33.33%; +} +.ui.connected.items > .row { + display: table; + margin: 0.5em 0em; +} +.ui.connected.items > .row:first-child { + margin-top: 0em; +} +/* Borders */ +.ui.connected.items > .item, +.ui.connected.items > .row:last-child > .item { + border-bottom: 0.2em solid rgba(0, 0, 0, 0.2); +} +.ui.connected.items > .row:last-child > .item:first-child, +.ui.connected.items > .item:first-child { + border-radius: 0em 0em 0em 0.33em; +} +.ui.connected.items > .row:last-child > .item:last-child, +.ui.connected.items > .item:last-child { + border-radius: 0em 0em 0.33em 0em; +} +/* Hover */ +.ui.connected.items .item:hover { + border-bottom-width: 0.2em; +} +/* Item Count */ +.ui.one.connected.items > .row > .item, +.ui.one.connected.items > .item { + width: 50%; + padding-left: 2%; + padding-right: 2%; +} +.ui.two.connected.items > .row > .item, +.ui.two.connected.items > .item { + width: 50%; + padding-left: 1%; + padding-right: 1%; +} +.ui.three.connected.items > .row > .item, +.ui.three.connected.items > .item { + width: 33.333%; + padding-left: 1%; + padding-right: 1%; +} +.ui.four.connected.items > .row > .item, +.ui.four.connected.items > .item { + width: 25%; + padding-left: 0.5%; + padding-right: 0.5%; +} +.ui.five.connected.items > .row > .item, +.ui.five.connected.items > .item { + width: 20%; + padding-left: 0.5%; + padding-right: 0.5%; +} +.ui.six.connected.items > .row > .item, +.ui.six.connected.items > .item { + width: 16.66%; + padding-left: 0.5%; + padding-right: 0.5%; +} +.ui.seven.connected.items > .row > .item, +.ui.seven.connected.items > .item { + width: 14.28%; + padding-left: 0.5%; + padding-right: 0.5%; +} +.ui.eight.connected.items > .row > .item, +.ui.eight.connected.items > .item { + width: 12.5%; + padding-left: 0.25%; + padding-right: 0.25%; +} +.ui.nine.connected.items > .row > .item, +.ui.nine.connected.items > .item { + width: 11.11%; + padding-left: 0.25%; + padding-right: 0.25%; +} +.ui.ten.connected.items > .row > .item, +.ui.ten.connected.items > .item { + width: 10%; + padding-left: 0.2%; + padding-right: 0.2%; +} +.ui.eleven.connected.items > .row > .item, +.ui.eleven.connected.items > .item { + width: 9.09%; + padding-left: 0.2%; + padding-right: 0.2%; +} +.ui.twelve.connected.items > .row > .item, +.ui.twelve.connected.items > .item { + width: 8.3333%; + padding-left: 0.1%; + padding-right: 0.1%; +} +/*------------------- + Responsive +--------------------*/ +@media only screen and (max-width: 768px) { + .ui.stackable.items { + display: block !important; + } + .ui.stackable.items > .item, + .ui.stackable.items > .row > .item { + display: block !important; + height: auto !important; + width: 100% !important; + padding: 0% !important; + } +} +/*-------------------- + Horizontal +---------------------*/ +.ui.horizontal.items > .item, +.ui.items > .horizontal.item { + display: table; +} +.ui.horizontal.items > .item > .image, +.ui.items > .horizontal.item > .image { + display: table-cell; + width: 50%; +} +.ui.horizontal.items > .item > .image + .content, +.ui.items > .horizontal.item > .image + .content { + width: 50%; + display: table-cell; +} +.ui.horizontal.items > .item > .content, +.ui.items > .horizontal.item > .content { + padding: 1% 1.7% 11% 3%; + vertical-align: top; +} +.ui.horizontal.items > .item > .meta, +.ui.items > .horizontal.item > .meta { + position: absolute; + padding: 0%; + bottom: 7%; + left: 3%; + width: 94%; +} +.ui.horizontal.items > .item > .image + .content + .meta, +.ui.items > .horizontal.item > .image + .content + .meta { + bottom: 7%; + left: 53%; + width: 44%; +} +.ui.horizontal.items > .item .avatar, +.ui.items > .horizontal.item .avatar { + width: 11.5%; +} +.ui.items > .item .avatar { + max-width: 25px; +} +/*-------------- + Item Count +---------------*/ +.ui.one.items { + margin-left: -2%; + margin-right: -2%; +} +.ui.one.items > .item { + width: 100%; + margin-left: 2%; + margin-right: 2%; +} +.ui.two.items { + margin-left: -1%; + margin-right: -1%; +} +.ui.two.items > .item { + width: 48%; + margin-left: 1%; + margin-right: 1%; +} +.ui.two.items > .item:nth-child(2n+1) { + clear: left; +} +.ui.three.items { + margin-left: -1%; + margin-right: -1%; +} +.ui.three.items > .item { + width: 31.333%; + margin-left: 1%; + margin-right: 1%; +} +.ui.three.items > .item:nth-child(3n+1) { + clear: left; +} +.ui.four.items { + margin-left: -0.5%; + margin-right: -0.5%; +} +.ui.four.items > .item { + width: 24%; + margin-left: 0.5%; + margin-right: 0.5%; +} +.ui.four.items > .item:nth-child(4n+1) { + clear: left; +} +.ui.five.items { + margin-left: -0.5%; + margin-right: -0.5%; +} +.ui.five.items > .item { + width: 19%; + margin-left: 0.5%; + margin-right: 0.5%; +} +.ui.five.items > .item:nth-child(5n+1) { + clear: left; +} +.ui.six.items { + margin-left: -0.5%; + margin-right: -0.5%; +} +.ui.six.items > .item { + width: 15.66%; + margin-left: 0.5%; + margin-right: 0.5%; +} +.ui.six.items > .item:nth-child(6n+1) { + clear: left; +} +.ui.seven.items { + margin-left: -0.5%; + margin-right: -0.5%; +} +.ui.seven.items > .item { + width: 13.28%; + margin-left: 0.5%; + margin-right: 0.5%; + font-size: 11px; +} +.ui.seven.items > .item:nth-child(7n+1) { + clear: left; +} +.ui.eight.items { + margin-left: -0.25%; + margin-right: -0.25%; +} +.ui.eight.items > .item { + width: 12.0%; + margin-left: 0.25%; + margin-right: 0.25%; + font-size: 11px; +} +.ui.eight.items > .item:nth-child(8n+1) { + clear: left; +} +.ui.nine.items { + margin-left: -0.25%; + margin-right: -0.25%; +} +.ui.nine.items > .item { + width: 10.61%; + margin-left: 0.25%; + margin-right: 0.25%; + font-size: 10px; +} +.ui.nine.items > .item:nth-child(9n+1) { + clear: left; +} +.ui.ten.items { + margin-left: -0.2%; + margin-right: -0.2%; +} +.ui.ten.items > .item { + width: 9.6%; + margin-left: 0.2%; + margin-right: 0.2%; + font-size: 10px; +} +.ui.ten.items > .item:nth-child(10n+1) { + clear: left; +} +.ui.eleven.items { + margin-left: -0.2%; + margin-right: -0.2%; +} +.ui.eleven.items > .item { + width: 8.69%; + margin-left: 0.2%; + margin-right: 0.2%; + font-size: 9px; +} +.ui.eleven.items > .item:nth-child(11n+1) { + clear: left; +} +.ui.twelve.items { + margin-left: -0.1%; + margin-right: -0.1%; +} +.ui.twelve.items > .item { + width: 8.1333%; + margin-left: 0.1%; + margin-right: 0.1%; + font-size: 9px; +} +.ui.twelve.items > .item:nth-child(12n+1) { + clear: left; +} + +/* + * # Semantic List - Flat + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + * Released: April 26 2013 + */ +/******************************* + List +*******************************/ +ul.ui.list, +ol.ui.list, +.ui.list { + list-style-type: none; + margin: 1em 0em; + padding: 0em; +} +ul.ui.list ul, +ol.ui.list ol, +.ui.list .list { + margin: 0em; + padding: 0.5em 0em 0.5em 1em; +} +ul.ui.list:first-child, +ol.ui.list:first-child, +.ui.list:first-child { + margin-top: 0em; +} +ul.ui.list:last-child, +ol.ui.list:last-child, +.ui.list:last-child { + margin-bottom: 0em; +} +/******************************* + Content +*******************************/ +/* List Item */ +ul.ui.list li, +ol.ui.list li, +.ui.list .item { + display: list-item; + list-style-type: none; + list-style-position: inside; + padding: 0.3em 0em; + line-height: 1.2em; +} +.ui.list .item:after { + content: ''; + display: block; + height: 0; + clear: both; + visibility: hidden; +} +/* Sub-List */ +.ui.list .list { + clear: both; +} +/* Icon */ +.ui.list .item > .icon { + display: block; + float: left; + margin: 0em 1em 0em 0em; + padding: 0.1em 0em 0em 0em; +} +.ui.list .item > .icon:only-child { + display: inline-block; +} +.ui.horizontal.list .item > .icon { + margin: 0em; + padding: 0em 0.25em 0em 0em; +} +.ui.horizontal.list .item > .icon, +.ui.horizontal.list .item > .icon + .content { + float: none; + display: inline-block; +} +/* Image */ +.ui.list .item > img { + display: block; + float: left; + margin-right: 1em; + vertical-align: middle; +} +/* Content */ +.ui.list .item > .content { + display: inline-block; + vertical-align: middle; + line-height: 1.2em; +} +.ui.list .item > .icon + .content { + display: table-cell; + vertical-align: top; +} +/* Link */ +.ui.list a { + cursor: pointer; +} +.ui.list a .icon { + color: rgba(0, 0, 0, 0.6); + -webkit-transition: color 0.2s ease; + -moz-transition: color 0.2s ease; + transition: color 0.2s ease; +} +/* Header */ +.ui.list .header { + font-weight: bold; +} +.ui.list .description { + color: rgba(0, 0, 0, 0.5); +} +/* Floated Content */ +.ui.list .item > .left.floated { + margin-right: 1em; + float: left; +} +.ui.list .item > .right.floated { + margin-left: 1em; + float: right; +} +/******************************* + Types +*******************************/ +/*------------------- + Horizontal +--------------------*/ +.ui.horizontal.list { + display: inline-block; + font-size: 0em; +} +.ui.horizontal.list > .item { + display: inline-block; + margin-left: 1em; + font-size: 1rem; +} +.ui.horizontal.list > .item:first-child { + margin-left: 0em; +} +.ui.horizontal.list .list { + padding-left: 0em; + padding-bottom: 0em; +} +/******************************* + States +*******************************/ +/*------------------- + Hover +--------------------*/ +.ui.list a:hover .icon { + color: rgba(0, 0, 0, 0.8); +} +/******************************* + Variations +*******************************/ +/*------------------- + Inverted +--------------------*/ +.ui.inverted.list a .icon { + color: rgba(255, 255, 255, 0.6); +} +.ui.inverted.list .description { + color: rgba(255, 255, 255, 0.8); +} +.ui.inverted.link.list .item { + color: rgba(255, 255, 255, 0.4); +} +/*------------------- + Link +--------------------*/ +.ui.link.list .item { + color: rgba(0, 0, 0, 0.3); +} +.ui.link.list a.item, +.ui.link.list .item a { + color: rgba(0, 0, 0, 0.5); +} +.ui.link.list a.item:hover, +.ui.link.list .item a:hover { + color: rgba(0, 0, 0, 0.8); +} +.ui.link.list a.item:active, +.ui.link.list .item a:active { + color: rgba(0, 0, 0, 0.8); +} +.ui.link.list a.active.item, +.ui.link.list .active.item a { + color: rgba(0, 0, 0, 0.8); +} +/* Inverted */ +.ui.inverted.link.list a.item, +.ui.inverted.link.list .item a { + color: rgba(255, 255, 255, 0.6); +} +.ui.inverted.link.list a.item:hover, +.ui.inverted.link.list .item a:hover { + color: rgba(255, 255, 255, 0.8); +} +.ui.inverted.link.list a.item:active, +.ui.inverted.link.list .item a:active { + color: rgba(255, 255, 255, 0.9); +} +.ui.inverted.link.list a.active.item, +.ui.inverted.link.list .active.item a { + color: rgba(255, 255, 255, 0.8); +} +/*------------------- + Selection +--------------------*/ +.ui.selection.list .item { + cursor: pointer; + color: rgba(0, 0, 0, 0.4); + padding: 0.5em; + -webkit-transition: 0.2s color ease, 0.2s padding-left ease, 0.2s background-color ease; + -moz-transition: 0.2s color ease, 0.2s padding-left ease, 0.2s background-color ease; + transition: 0.2s color ease, 0.2s padding-left ease, 0.2s background-color ease; +} +.ui.selection.list .item:hover { + background-color: rgba(0, 0, 0, 0.02); + color: rgba(0, 0, 0, 0.7); +} +.ui.selection.list .item:active { + background-color: rgba(0, 0, 0, 0.05); + color: rgba(0, 0, 0, 0.7); +} +.ui.selection.list .item.active { + background-color: rgba(0, 0, 0, 0.04); + color: rgba(0, 0, 0, 0.7); +} +.ui.animated.list .item { + -webkit-transition: 0.2s color ease, 0.2s padding-left ease, 0.2s background-color ease; + -moz-transition: 0.2s color ease, 0.2s padding-left ease, 0.2s background-color ease; + transition: 0.2s color ease, 0.2s padding-left ease, 0.2s background-color ease; +} +.ui.animated.list:not(.horizontal) .item:hover { + padding-left: 1em; +} +.ui.animated.list:not(.horizontal) .item:hover .item:hover { + padding-left: 0.5em; +} +/* Inverted */ +.ui.inverted.selection.list .item { + color: rgba(255, 255, 255, 0.6); +} +.ui.inverted.selection.list .item:hover { + background-color: rgba(255, 255, 255, 0.04); + color: rgba(255, 255, 255, 0.8); +} +.ui.inverted.selection.list .item:active { + background-color: rgba(255, 255, 255, 0.1); + color: rgba(255, 255, 255, 0.7); +} +.ui.inverted.selection.list .item.active { + background-color: rgba(255, 255, 255, 0.08); + color: #FFFFFF; +} +/*------------------- + Bulleted +--------------------*/ +ul.ui.list, +.ui.bulleted.list { + margin-left: 1.5em; +} +ul.ui.list li, +.ui.bulleted.list .item { + position: relative; +} +ul.ui.list li:before, +.ui.bulleted.list .item:before { + position: absolute; + left: -1.5em; + content: '•'; +} +ul.ui.list ul, +.ui.bulleted.list .list { + padding-left: 1.5em; +} +/* Horizontal Bulleted */ +ul.ui.horizontal.bulleted.list, +.ui.horizontal.bulleted.list { + margin-left: 0em; +} +ul.ui.horizontal.bulleted.list li, +.ui.horizontal.bulleted.list .item { + margin-left: 1.5em; +} +ul.ui.horizontal.bulleted.list li:before, +.ui.horizontal.bulleted.list .item:before { + left: -0.9em; +} +ul.ui.horizontal.bulleted.list li:first-child, +.ui.horizontal.bulleted.list .item:first-child { + margin-left: 0em; +} +ul.ui.horizontal.bulleted.list li:first-child::before, +.ui.horizontal.bulleted.list .item:first-child::before { + display: none; +} +/*------------------- + Ordered +--------------------*/ +ol.ui.list, +.ui.ordered.list { + counter-reset: ordered; + margin-left: 2em; + list-style-type: none; +} +ol.ui.list li, +.ui.ordered.list .item { + list-style-type: none; + position: relative; +} +ol.ui.list li:before, +.ui.ordered.list .item:before { + position: absolute; + left: -2em; + counter-increment: ordered; + content: counters(ordered, "."); + text-align: right; + vertical-align: top; + opacity: 0.75; +} +ol.ui.list ol, +.ui.ordered.list .list { + counter-reset: ordered; + padding-left: 2.5em; +} +ol.ui.list ol li:before, +.ui.ordered.list .list .item:before { + left: -2.5em; +} +/* Horizontal Ordered */ +ol.ui.horizontal.list, +.ui.ordered.horizontal.list { + margin-left: 0em; +} +ol.ui.horizontal.list li:before, +.ui.ordered.horizontal.list .item:before { + position: static; + left: 0em; + margin: 0em 0.5em 0em 0em; +} +/*------------------- + Divided +--------------------*/ +.ui.divided.list > .item, +.ui.divided.list:not(.horizontal) > .list { + border-top: 1px solid rgba(0, 0, 0, 0.1); + padding-left: 0.5em; + padding-right: 0.5em; +} +.ui.divided.list .item .menu .item { + border-width: 0px; +} +.ui.divided.list .item:first-child { + border-top-width: 0px; +} +/* Sub Menu */ +.ui.divided.list:not(.horizontal) .list { + margin-left: -0.5em; + margin-right: -0.5em; +} +.ui.divided.list:not(.horizontal) .list .item { + padding-left: 1em; + padding-right: 1em; +} +.ui.divided.list:not(.horizontal) .list .item:first-child { + border-top-width: 1px; +} +/* Divided bulleted */ +.ui.divided.bulleted.list { + margin-left: 0em; +} +.ui.divided.bulleted.list .item { + padding-left: 1.5em; +} +.ui.divided.bulleted.list .item:before { + left: 0.5em; +} +/* Divided ordered */ +.ui.divided.ordered.list { + margin-left: 0em; +} +.ui.divided.ordered.list > .item { + padding-left: 2em; + padding-right: 2em; +} +.ui.divided.ordered.list > .item:before { + left: 0.5em; +} +.ui.divided.ordered.list .item .list { + margin-left: -2em; + margin-right: -2em; +} +/* Divided horizontal */ +.ui.divided.horizontal.list { + margin-left: 0em; +} +.ui.divided.horizontal.list > .item { + border-top: none; + border-left: 1px solid rgba(0, 0, 0, 0.1); + margin: 0em; + padding-left: 0.75em; + padding-right: 0.75em; + line-height: 0.6em; +} +.ui.horizontal.divided.list > .item:first-child { + border-left: none; + padding-left: 0em; +} +/* Inverted */ +.ui.divided.inverted.list > .item, +.ui.divided.inverted.list > .list { + border-color: rgba(255, 255, 255, 0.2); +} +.ui.divided.inverted.horizontal.list .item { + border-color: rgba(255, 255, 255, 0.2); +} +/*------------------- + Celled +--------------------*/ +.ui.celled.list > .item, +.ui.celled.list > .list { + border-top: 1px solid rgba(0, 0, 0, 0.1); + padding-left: 0.5em; + padding-right: 0.5em; +} +.ui.celled.list > .item:last-child { + border-bottom: 1px solid rgba(0, 0, 0, 0.1); +} +/* Sub Menu */ +.ui.celled.list .item .list { + margin-left: -0.5em; + margin-right: -0.5em; +} +.ui.celled.list .item .list .item { + border-width: 0px; +} +.ui.celled.list .list .item:first-child { + border-top-width: 0px; +} +/* Celled Bulleted */ +.ui.celled.bulleted.list { + margin-left: 0em; +} +.ui.celled.bulleted.list > .item { + padding-left: 1.5em; +} +.ui.celled.bulleted.list > .item:before { + left: 0.5em; +} +/* Celled Ordered */ +.ui.celled.ordered.list { + margin-left: 0em; +} +.ui.celled.ordered.list .item { + padding-left: 2em; + padding-right: 2em; +} +.ui.celled.ordered.list .item:before { + left: 0.5em; +} +.ui.celled.ordered.list .item .list { + margin-left: -2em; + margin-right: -2em; +} +/* Celled Horizontal */ +.ui.horizontal.celled.list { + margin-left: 0em; +} +.ui.horizontal.celled.list .item { + border-top: none; + border-left: 1px solid rgba(0, 0, 0, 0.1); + margin: 0em; + padding-left: 0.75em; + padding-right: 0.75em; + line-height: 0.6em; +} +.ui.horizontal.celled.list .item:last-child { + border-bottom: none; + border-right: 1px solid rgba(0, 0, 0, 0.1); +} +/* Inverted */ +.ui.celled.inverted.list > .item, +.ui.celled.inverted.list > .list { + border-color: rgba(255, 255, 255, 0.2); +} +.ui.celled.inverted.horizontal.list .item { + border-color: rgba(255, 255, 255, 0.2); +} +/*------------------- + Relaxed +--------------------*/ +.ui.relaxed.list:not(.horizontal) .item { + padding-top: 0.5em; + padding-bottom: 0.5em; +} +.ui.relaxed.list .header { + margin-bottom: 0.25em; +} +.ui.horizontal.relaxed.list .item { + padding-left: 1.25em; + padding-right: 1.25em; +} +.ui.very.relaxed.list:not(.horizontal) .item { + padding-top: 1em; + padding-bottom: 1em; +} +.ui.very.relaxed.list .header { + margin-bottom: 0.5em; +} +.ui.horizontal.very.relaxed.list .item { + padding-left: 2em; + padding-right: 2em; +} +/*------------------- + Sizes +--------------------*/ +.ui.mini.list .item { + font-size: 0.7rem; +} +.ui.tiny.list .item { + font-size: 0.8125rem; +} +.ui.small.list .item { + font-size: 0.875rem; +} +.ui.list .item { + font-size: 1em; +} +.ui.large.list .item { + font-size: 1.125rem; +} +.ui.big.list .item { + font-size: 1.25rem; +} +.ui.huge.list .item { + font-size: 1.375rem; +} +.ui.massive.list .item { + font-size: 1.5rem; +} + +/* + * # Statistic + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + * Released: Aug 20, 2013 + */ +/******************************* + Statistic +*******************************/ +.ui.statistic { + text-align: center; +} +/******************************* + Content +*******************************/ +.ui.statistic > .number { + font-size: 4em; + font-weight: bold; + color: rgba(0, 0, 0, 0.7); +} +.ui.statistic > .description { + opacity: 0.8; +} diff --git a/ajax/libs/semantic-ui/0.16.1/css/semantic.min.css b/ajax/libs/semantic-ui/0.16.1/css/semantic.min.css new file mode 100644 index 000000000..f8f077981 --- /dev/null +++ b/ajax/libs/semantic-ui/0.16.1/css/semantic.min.css @@ -0,0 +1,14 @@ +/* +* # Semantic UI +* Version: 0.16.1 +* http://github.com/jlukic/semantic-ui +* +* +* Copyright 2014 Contributors +* Released under the MIT license +* http://opensource.org/licenses/MIT +* +* Released: 04/22/2014 +*/ + +.ui.breadcrumb{margin:1em 0;display:inline-block;vertical-align:middle}.ui.breadcrumb:first-child{margin-top:0}.ui.breadcrumb:last-child{margin-bottom:0}.ui.breadcrumb .divider{display:inline-block;opacity:.5;margin:0 .15em;font-size:1em;color:rgba(0,0,0,.3)}.ui.breadcrumb a.section{cursor:pointer}.ui.breadcrumb .section{display:inline-block;margin:0;padding:0}.ui.breadcrumb.segment{display:inline-block;padding:.5em 1em}.ui.breadcrumb .active.section{font-weight:700}.ui.small.breadcrumb{font-size:.75em}.ui.large.breadcrumb{font-size:1.1em}.ui.huge.breadcrumb{font-size:1.3em}.ui.form{position:relative;max-width:100%}.ui.form :first-child{margin-top:0}.ui.form :last-child{margin-bottom:0}.ui.form>p{margin:1em 0}.ui.form .field{clear:both;margin:0 0 1em}.ui.form .field>label{margin:0 0 .3em;display:block;color:#555;font-size:.875em}.ui.form .ui.input,.ui.form input[type=date],.ui.form input[type=email],.ui.form input[type=number],.ui.form input[type=password],.ui.form input[type=tel],.ui.form input[type=text],.ui.form input[type=url],.ui.form textarea{width:100%}.ui.form input[type=date],.ui.form input[type=email],.ui.form input[type=number],.ui.form input[type=password],.ui.form input[type=tel],.ui.form input[type=text],.ui.form input[type=url],.ui.form textarea{margin:0;padding:.65em 1em;font-size:1em;background-color:#FFF;border:1px solid rgba(0,0,0,.15);outline:0;color:rgba(0,0,0,.7);border-radius:.3125em;-webkit-transition:background-color .3s ease-out,-webkit-box-shadow .2s ease,border-color .2s ease;-moz-transition:background-color .3s ease-out,box-shadow .2s ease,border-color .2s ease;transition:background-color .3s ease-out,box-shadow .2s ease,border-color .2s ease;-webkit-box-shadow:0 0 rgba(0,0,0,.3)inset;box-shadow:0 0 rgba(0,0,0,.3)inset;-webkit-appearance:none;-webkit-tap-highlight-color:rgba(255,255,255,0);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.form textarea,.ui.textarea{line-height:1.33;min-height:8em;height:12em;max-height:24em;resize:vertical}.ui.form input[type=checkbox],.ui.form textarea{vertical-align:top}.ui.form .divider{clear:both;margin:1em 0}.ui.form .error.message,.ui.form .info.message,.ui.form .warning.message{display:none}.ui.form .message:first-child{margin-top:0}.ui.form .field .prompt.label{white-space:nowrap}.ui.form .inline.field .prompt{margin-top:0;margin-left:1em}.ui.form .inline.field .prompt:before{margin-top:-.3em;bottom:auto;right:auto;top:50%;left:0}.ui.form input[type=date]:focus,.ui.form input[type=email]:focus,.ui.form input[type=number]:focus,.ui.form input[type=password]:focus,.ui.form input[type=tel]:focus,.ui.form input[type=text]:focus,.ui.form input[type=url]:focus,.ui.form textarea:focus{color:rgba(0,0,0,.85);border-color:rgba(0,0,0,.2);border-bottom-left-radius:0;border-top-left-radius:0;-webkit-appearance:none;-webkit-box-shadow:.3em 0 0 0 rgba(0,0,0,.2)inset;box-shadow:.3em 0 0 0 rgba(0,0,0,.2)inset}.ui.form.error .error.message,.ui.form.warning .warning.message{display:block}.ui.form .field.error .input,.ui.form .field.error label,.ui.form .fields.error .field .input,.ui.form .fields.error .field label{color:#D95C5C}.ui.form .field.error .corner.label,.ui.form .fields.error .field .corner.label{border-color:#D95C5C;color:#FFF}.ui.form .field.error input[type=date],.ui.form .field.error input[type=email],.ui.form .field.error input[type=number],.ui.form .field.error input[type=password],.ui.form .field.error input[type=tel],.ui.form .field.error input[type=text],.ui.form .field.error input[type=url],.ui.form .field.error textarea,.ui.form .fields.error .field input[type=date],.ui.form .fields.error .field input[type=email],.ui.form .fields.error .field input[type=number],.ui.form .fields.error .field input[type=password],.ui.form .fields.error .field input[type=tel],.ui.form .fields.error .field input[type=text],.ui.form .fields.error .field input[type=url],.ui.form .fields.error .field textarea{background-color:snow;border-color:#E7BEBE;border-left:none;color:#D95C5C;padding-left:1.2em;border-bottom-left-radius:0;border-top-left-radius:0;-webkit-box-shadow:.3em 0 0 0 #D95C5C inset;box-shadow:.3em 0 0 0 #D95C5C inset}.ui.form .field.error input[type=date]:focus,.ui.form .field.error input[type=email]:focus,.ui.form .field.error input[type=number]:focus,.ui.form .field.error input[type=password]:focus,.ui.form .field.error input[type=tel]:focus,.ui.form .field.error input[type=text]:focus,.ui.form .field.error input[type=url]:focus,.ui.form .field.error textarea:focus{border-color:#ff5050;color:#ff5050;-webkit-appearance:none;-webkit-box-shadow:.3em 0 0 0 #FF5050 inset;box-shadow:.3em 0 0 0 #FF5050 inset}.ui.form .field.error .ui.dropdown,.ui.form .field.error .ui.dropdown .item,.ui.form .fields.error .field .ui.dropdown,.ui.form .fields.error .field .ui.dropdown .item{background-color:snow;color:#D95C5C}.ui.form .field.error .ui.dropdown,.ui.form .field.error .ui.dropdown:hover,.ui.form .fields.error .field .ui.dropdown,.ui.form .fields.error .field .ui.dropdown:hover{-webkit-box-shadow:0 0 0 1px #E7BEBE!important;box-shadow:0 0 0 1px #E7BEBE!important}.ui.form .field.error .ui.dropdown:hover .menu,.ui.form .fields.error .field .ui.dropdown:hover .menu{-webkit-box-shadow:0 1px 0 1px #E7BEBE;box-shadow:0 1px 0 1px #E7BEBE}.ui.form .field.error .ui.dropdown .menu .item:hover,.ui.form .fields.error .field .ui.dropdown .menu .item:hover{background-color:#FFF2F2}.ui.form .field.error .ui.dropdown .menu .active.item,.ui.form .fields.error .field .ui.dropdown .menu .active.item{background-color:#FDCFCF!important}.ui.form ::-webkit-input-placeholder{color:#AAA}.ui.form ::-moz-placeholder{color:#AAA}.ui.form :focus::-webkit-input-placeholder{color:#999}.ui.form :focus::-moz-placeholder{color:#999}.ui.form .error ::-webkit-input-placeholder{color:rgba(255,80,80,.4)}.ui.form .error ::-moz-placeholder{color:rgba(255,80,80,.4)}.ui.form .error :focus::-webkit-input-placeholder{color:rgba(255,80,80,.7)}.ui.form .error :focus::-moz-placeholder{color:rgba(255,80,80,.7)}.ui.form .field :disabled,.ui.form .field.disabled,.ui.form .field.disabled label{opacity:.5}.ui.form .field.disabled :disabled{opacity:1}.ui.form.loading{position:relative}.ui.form.loading:after{position:absolute;top:0;left:0;content:'';width:100%;height:100%;background:rgba(255,255,255,.8)url(../images/loader-large.gif) no-repeat 50% 50%;visibility:visible}.ui.form.fluid{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.form input.attached{width:auto}.ui.form .date.field>label{position:relative}.ui.form .date.field>label:after{position:absolute;top:2em;right:.5em;font-family:Icons;content:'\f133';font-size:1.2em;font-weight:400;color:#CCC}.ui.inverted.form label{color:#FFF}.ui.inverted.form .field.error input[type=date],.ui.inverted.form .field.error input[type=email],.ui.inverted.form .field.error input[type=number],.ui.inverted.form .field.error input[type=password],.ui.inverted.form .field.error input[type=tel],.ui.inverted.form .field.error input[type=text],.ui.inverted.form .field.error input[type=url],.ui.inverted.form .field.error textarea{background-color:#FCC}.ui.inverted.form .ui.checkbox label{color:rgba(255,255,255,.8)}.ui.inverted.form .ui.checkbox .box:hover,.ui.inverted.form .ui.checkbox label:hover{color:#FFF}.ui.form .grouped.fields{margin:0 0 1em}.ui.form .grouped.fields .field{display:block;float:none;margin:.5em 0;padding:0}.ui.form .fields{clear:both}.ui.form .fields:after{content:' ';display:block;clear:both;visibility:hidden;line-height:0;height:0}.ui.form .fields>.field{clear:none;float:left;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.form .fields>.field:first-child{border-left:none;-webkit-box-shadow:none;box-shadow:none}.ui.form .two.fields>.field,.ui.form .two.fields>.fields{width:50%;padding-left:1%;padding-right:1%}.ui.form .three.fields>.field,.ui.form .three.fields>.fields{width:33.333%;padding-left:1%;padding-right:1%}.ui.form .four.fields>.field,.ui.form .four.fields>.fields{width:25%;padding-left:1%;padding-right:1%}.ui.form .five.fields>.field,.ui.form .five.fields>.fields{width:20%;padding-left:1%;padding-right:1%}.ui.form .fields .field:first-child{padding-left:0}.ui.form .fields .field:last-child{padding-right:0}.ui.form .fields .wide.field{width:6.25%;padding-left:1%;padding-right:1%}.ui.form .fields .wide.field:first-child{padding-left:0}.ui.form .fields .wide.field:last-child{padding-right:0}.ui.form .fields>.one.wide.field{width:6.25%}.ui.form .fields>.two.wide.field{width:12.5%}.ui.form .fields>.three.wide.field{width:18.75%}.ui.form .fields>.four.wide.field{width:25%}.ui.form .fields>.five.wide.field{width:31.25%}.ui.form .fields>.six.wide.field{width:37.5%}.ui.form .fields>.seven.wide.field{width:43.75%}.ui.form .fields>.eight.wide.field{width:50%}.ui.form .fields>.nine.wide.field{width:56.25%}.ui.form .fields>.ten.wide.field{width:62.5%}.ui.form .fields>.eleven.wide.field{width:68.75%}.ui.form .fields>.twelve.wide.field{width:75%}.ui.form .fields>.thirteen.wide.field{width:81.25%}.ui.form .fields>.fourteen.wide.field{width:87.5%}.ui.form .fields>.fifteen.wide.field{width:93.75%}.ui.form .fields>.sixteen.wide.field{width:100%}@media only screen and (max-width:767px){.ui.form .fields>.eight.wide.field,.ui.form .fields>.eleven.wide.field,.ui.form .fields>.fifteen.wide.field,.ui.form .fields>.five.wide.field,.ui.form .fields>.four.wide.field,.ui.form .fields>.fourteen.wide.field,.ui.form .fields>.nine.wide.field,.ui.form .fields>.seven.wide.field,.ui.form .fields>.six.wide.field,.ui.form .fields>.sixteen.wide.field,.ui.form .fields>.ten.wide.field,.ui.form .fields>.thirteen.wide.field,.ui.form .fields>.three.wide.field,.ui.form .fields>.twelve.wide.field,.ui.form .fields>.two.wide.field,.ui.form .five.fields>.field,.ui.form .five.fields>.fields,.ui.form .four.fields>.field,.ui.form .four.fields>.fields,.ui.form .three.fields>.field,.ui.form .three.fields>.fields,.ui.form .two.fields>.field,.ui.form .two.fields>.fields{width:100%;padding-left:0;padding-right:0}}.ui.form .inline.fields .field{min-height:1.3em;margin-right:.5em}.ui.form .inline.field>input,.ui.form .inline.field>label,.ui.form .inline.field>p,.ui.form .inline.fields .field>input,.ui.form .inline.fields .field>label,.ui.form .inline.fields .field>p{display:inline-block;width:auto;margin-top:0;margin-bottom:0;vertical-align:middle;font-size:1em}.ui.form .inline.field>input,.ui.form .inline.fields .field>input{font-size:.875em}.ui.form .inline.field>:first-child,.ui.form .inline.fields .field>:first-child{margin:0 .5em 0 0}.ui.form .inline.field>:only-child,.ui.form .inline.fields .field>:only-child{margin:0}.ui.small.form{font-size:.875em}.ui.small.form input[type=date],.ui.small.form input[type=email],.ui.small.form input[type=number],.ui.small.form input[type=password],.ui.small.form input[type=tel],.ui.small.form input[type=text],.ui.small.form input[type=url],.ui.small.form label,.ui.small.form textarea{font-size:1em}.ui.large.form{font-size:1.125em}.ui.grid{display:block;text-align:left;font-size:0;margin:0 -1.5%;padding:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body>.ui.grid{margin-left:0!important;margin-right:0!important}.ui.grid:after,.ui.row:after{content:".";display:block;height:0;clear:both;visibility:hidden}.ui.grid>.column,.ui.grid>.row>.column{display:inline-block;text-align:left;font-size:1rem;width:6.25%;padding-left:1.5%;padding-right:1.5%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;vertical-align:top}.ui.grid>.column{margin-top:1rem;margin-bottom:1rem}.ui.grid>.row{display:block;width:100%!important;margin-top:1.5%;padding:1rem 0 0;font-size:0}.ui.grid>.row:first-child{padding-top:0;margin-top:0}.ui.grid>.row>.column>img,.ui.grid>.row>img{max-width:100%}.ui.grid .column>.ui.segment:only-child{margin:0}.ui.page.grid{min-width:320px;margin-left:0;margin-right:0}@media only screen and (max-width:991px){.ui.page.grid{padding:0 4%}}@media only screen and (min-width:992px){.ui.page.grid{padding:0 8%}}@media only screen and (min-width:1500px){.ui.page.grid{padding:0 13%}}@media only screen and (min-width:1750px){.ui.page.grid{padding:0 18%}}@media only screen and (min-width:2000px){.ui.page.grid{padding:0 23%}}.ui.column.grid>.one.wide.column,.ui.grid>.column.row>.one.wide.column,.ui.grid>.one.wide.column,.ui.grid>.row>.one.wide.column{width:6.25%}.ui.column.grid>.two.wide.column,.ui.grid>.column.row>.two.wide.column,.ui.grid>.row>.two.wide.column,.ui.grid>.two.wide.column{width:12.5%}.ui.column.grid>.three.wide.column,.ui.grid>.column.row>.three.wide.column,.ui.grid>.row>.three.wide.column,.ui.grid>.three.wide.column{width:18.75%}.ui.column.grid>.four.wide.column,.ui.grid>.column.row>.four.wide.column,.ui.grid>.four.wide.column,.ui.grid>.row>.four.wide.column{width:25%}.ui.column.grid>.five.wide.column,.ui.grid>.column.row>.five.wide.column,.ui.grid>.five.wide.column,.ui.grid>.row>.five.wide.column{width:31.25%}.ui.column.grid>.six.wide.column,.ui.grid>.column.row>.six.wide.column,.ui.grid>.row>.six.wide.column,.ui.grid>.six.wide.column{width:37.5%}.ui.column.grid>.seven.wide.column,.ui.grid>.column.row>.seven.wide.column,.ui.grid>.row>.seven.wide.column,.ui.grid>.seven.wide.column{width:43.75%}.ui.column.grid>.eight.wide.column,.ui.grid>.column.row>.eight.wide.column,.ui.grid>.eight.wide.column,.ui.grid>.row>.eight.wide.column{width:50%}.ui.column.grid>.nine.wide.column,.ui.grid>.column.row>.nine.wide.column,.ui.grid>.nine.wide.column,.ui.grid>.row>.nine.wide.column{width:56.25%}.ui.column.grid>.ten.wide.column,.ui.grid>.column.row>.ten.wide.column,.ui.grid>.row>.ten.wide.column,.ui.grid>.ten.wide.column{width:62.5%}.ui.column.grid>.eleven.wide.column,.ui.grid>.column.row>.eleven.wide.column,.ui.grid>.eleven.wide.column,.ui.grid>.row>.eleven.wide.column{width:68.75%}.ui.column.grid>.twelve.wide.column,.ui.grid>.column.row>.twelve.wide.column,.ui.grid>.row>.twelve.wide.column,.ui.grid>.twelve.wide.column{width:75%}.ui.column.grid>.thirteen.wide.column,.ui.grid>.column.row>.thirteen.wide.column,.ui.grid>.row>.thirteen.wide.column,.ui.grid>.thirteen.wide.column{width:81.25%}.ui.column.grid>.fourteen.wide.column,.ui.grid>.column.row>.fourteen.wide.column,.ui.grid>.fourteen.wide.column,.ui.grid>.row>.fourteen.wide.column{width:87.5%}.ui.column.grid>.fifteen.wide.column,.ui.grid>.column.row>.fifteen.wide.column,.ui.grid>.fifteen.wide.column,.ui.grid>.row>.fifteen.wide.column{width:93.75%}.ui.column.grid>.sixteen.wide.column,.ui.grid>.column.row>.sixteen.wide.column,.ui.grid>.one.column.row>.column,.ui.grid>.row>.sixteen.wide.column,.ui.grid>.sixteen.wide.column,.ui.one.column.grid>.column,.ui.one.column.grid>.row>.column{width:100%}.ui.grid>.two.column.row>.column,.ui.two.column.grid>.column,.ui.two.column.grid>.row>.column{width:50%}.ui.grid>.three.column.row>.column,.ui.three.column.grid>.column,.ui.three.column.grid>.row>.column{width:33.3333%}.ui.four.column.grid>.column,.ui.four.column.grid>.row>.column,.ui.grid>.four.column.row>.column{width:25%}.ui.five.column.grid>.column,.ui.five.column.grid>.row>.column,.ui.grid>.five.column.row>.column{width:20%}.ui.grid>.six.column.row>.column,.ui.six.column.grid>.column,.ui.six.column.grid>.row>.column{width:16.66667%}.ui.grid>.seven.column.row>.column,.ui.seven.column.grid>.column,.ui.seven.column.grid>.row>.column{width:14.2857%}.ui.eight.column.grid>.column,.ui.eight.column.grid>.row>.column,.ui.grid>.eight.column.row>.column{width:12.5%}.ui.grid>.nine.column.row>.column,.ui.nine.column.grid>.column,.ui.nine.column.grid>.row>.column{width:11.1111%}.ui.grid>.ten.column.row>.column,.ui.ten.column.grid>.column,.ui.ten.column.grid>.row>.column{width:10%}.ui.eleven.column.grid>.column,.ui.eleven.column.grid>.row>.column,.ui.grid>.eleven.column.row>.column{width:9.0909%}.ui.grid>.twelve.column.row>.column,.ui.twelve.column.grid>.column,.ui.twelve.column.grid>.row>.column{width:8.3333%}.ui.grid>.thirteen.column.row>.column,.ui.thirteen.column.grid>.column,.ui.thirteen.column.grid>.row>.column{width:7.6923%}.ui.fourteen.column.grid>.column,.ui.fourteen.column.grid>.row>.column,.ui.grid>.fourteen.column.row>.column{width:7.1428%}.ui.fifteen.column.grid>.column,.ui.fifteen.column.grid>.row>.column,.ui.grid>.fifteen.column.row>.column{width:6.6666%}.ui.grid>.sixteen.column.row>.column,.ui.sixteen.column.grid>.column,.ui.sixteen.column.grid>.row>.column{width:6.25%}.ui.grid>.column:only-child,.ui.grid>.row>.column:only-child{width:100%}.ui.relaxed.grid{margin:0 -2.5%}.ui.relaxed.grid>.column,.ui.relaxed.grid>.row>.column{padding-left:2.5%;padding-right:2.5%}.ui.grid .left.floated.column{float:left}.ui.grid .right.floated.column{float:right}.ui.divided.grid,.ui.divided.grid>.row{display:table;width:100%;margin-left:0!important;margin-right:0!important}.ui.divided.grid>.column:not(.row),.ui.divided.grid>.row>.column{display:table-cell;-webkit-box-shadow:-1px 0 0 0 rgba(0,0,0,.1),-2px 0 0 0 rgba(255,255,255,.8);box-shadow:-1px 0 0 0 rgba(0,0,0,.1),-2px 0 0 0 rgba(255,255,255,.8)}.ui.divided.grid>.column.row{display:table}.ui.divided.grid>.column:first-child,.ui.divided.grid>.row>.column:first-child{-webkit-box-shadow:none;box-shadow:none}.ui.vertically.divided.grid>.row{-webkit-box-shadow:0 -1px 0 0 rgba(0,0,0,.1),0 -2px 0 0 rgba(255,255,255,.8)!important;box-shadow:0 -1px 0 0 rgba(0,0,0,.1),0 -2px 0 0 rgba(255,255,255,.8)!important}.ui.vertically.divided.grid>.column:not(.row),.ui.vertically.divided.grid>.row:first-child,.ui.vertically.divided.grid>.row>.column{-webkit-box-shadow:none!important;box-shadow:none!important}.ui.celled.grid{display:table;width:100%;margin-left:0!important;margin-right:0!important;-webkit-box-shadow:0 0 0 1px #DFDFDF;box-shadow:0 0 0 1px #DFDFDF}.ui.celled.grid>.column.row,.ui.celled.grid>.column.row:first-child,.ui.celled.grid>.row{display:table;width:100%;margin-top:0;padding-top:0;-webkit-box-shadow:0 -1px 0 0 #dfdfdf;box-shadow:0 -1px 0 0 #dfdfdf}.ui.celled.grid>.column:not(.row),.ui.celled.grid>.row>.column{display:table-cell;padding:.75em;-webkit-box-shadow:-1px 0 0 0 #dfdfdf;box-shadow:-1px 0 0 0 #dfdfdf}.ui.celled.grid>.column:first-child,.ui.celled.grid>.row>.column:first-child,.ui.celled.page.grid{-webkit-box-shadow:none;box-shadow:none}.ui.grid .left.aligned.column,.ui.grid>.left.aligned.row>.column,.ui.left.aligned.grid,.ui.left.aligned.grid>.column,.ui.left.aligned.grid>.row>.column{text-align:left}.ui.center.aligned.grid,.ui.center.aligned.grid>.column,.ui.center.aligned.grid>.row>.column,.ui.grid .center.aligned.column,.ui.grid>.center.aligned.row>.column{text-align:center}.ui.grid .right.aligned.column,.ui.grid>.right.aligned.row>.column,.ui.right.aligned.grid,.ui.right.aligned.grid>.column,.ui.right.aligned.grid>.row>.column{text-align:right}.ui.grid .justified.column,.ui.grid>.justified.row>.column,.ui.justified.grid,.ui.justified.grid>.column,.ui.justified.grid>.row>.column{text-align:justify;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.ui.grid .top.aligned.column,.ui.grid>.top.aligned.row>.column,.ui.top.aligned.grid,.ui.top.aligned.grid>.column,.ui.top.aligned.grid>.row>.column{vertical-align:top}.ui.grid .middle.aligned.column,.ui.grid>.middle.aligned.row>.column,.ui.middle.aligned.grid,.ui.middle.aligned.grid>.column,.ui.middle.aligned.grid>.row>.column{vertical-align:middle}.ui.bottom.aligned.grid,.ui.bottom.aligned.grid>.column,.ui.bottom.aligned.grid>.row>.column,.ui.grid .bottom.aligned.column,.ui.grid>.bottom.aligned.row>.column{vertical-align:bottom}.ui.grid>.equal.height.row{display:table;width:100%}.ui.grid>.equal.height.row>.column{display:table-cell}@media only screen and (max-width:767px){.ui.grid>.mobile.only.row,.ui.mobile.only.grid{display:block!important}.ui.grid>.row>.mobile.only.column{display:inline-block!important}.ui.celled.grid .mobile.only.row,.ui.celled.mobile.only.grid,.ui.celled.mobile.only.grid .row,.ui.divided.grid .mobile.only.row,.ui.divided.mobile.only.grid,.ui.divided.mobile.only.grid .row,.ui.grid .mobile.only.equal.height.row,.ui.mobile.only.grid .equal.height.row{display:table!important}.ui.celled.grid>.row>.mobile.only.column,.ui.celled.mobile.only.grid>.column,.ui.celled.mobile.only.grid>.row>.column,.ui.divided.grid>.row>.mobile.only.column,.ui.divided.mobile.only.grid>.column,.ui.divided.mobile.only.grid>.row>.column{display:table-cell!important}}@media only screen and (min-width:768px){.ui.grid>.mobile.only.column,.ui.grid>.mobile.only.row,.ui.grid>.row>.mobile.only.column,.ui.mobile.only.grid{display:none}}@media only screen and (min-width:768px) and (max-width:991px){.ui.grid>.tablet.only.row,.ui.tablet.only.grid{display:block!important}.ui.grid>.row>.tablet.only.column{display:inline-block!important}.ui.celled.grid .tablet.only.row,.ui.celled.tablet.only.grid,.ui.celled.tablet.only.grid .row,.ui.divided.grid .tablet.only.row,.ui.divided.tablet.only.grid,.ui.divided.tablet.only.grid .row,.ui.grid .tablet.only.equal.height.row,.ui.tablet.only.grid .equal.height.row{display:table!important}.ui.celled.grid>.row>.tablet.only.column,.ui.celled.tablet.only.grid>.column,.ui.celled.tablet.only.grid>.row>.column,.ui.divided.grid>.row>.tablet.only.column,.ui.divided.tablet.only.grid>.column,.ui.divided.tablet.only.grid>.row>.column{display:table-cell!important}}@media only screen and (max-width:767px),(min-width:992px){.ui.grid>.row>.tablet.only.column,.ui.grid>.tablet.only.column,.ui.grid>.tablet.only.row,.ui.tablet.only.grid{display:none}}@media only screen and (min-width:992px){.ui.computer.only.grid,.ui.grid>.computer.only.row{display:block!important}.ui.grid>.row>.computer.only.column{display:inline-block!important}.ui.celled.computer.only.grid,.ui.celled.computer.only.grid .row,.ui.celled.grid .computer.only.row,.ui.computer.only.grid .equal.height.row,.ui.divided.computer.only.grid,.ui.divided.computer.only.grid .row,.ui.divided.grid .computer.only.row,.ui.grid .computer.only.equal.height.row{display:table!important}.ui.celled.computer.only.grid>.column,.ui.celled.computer.only.grid>.row>.column,.ui.celled.grid>.row>.computer.only.column,.ui.divided.computer.only.grid>.column,.ui.divided.computer.only.grid>.row>.column,.ui.divided.grid>.row>.computer.only.column{display:table-cell!important}}@media only screen and (max-width:991px){.ui.computer.only.grid,.ui.grid>.computer.only.column,.ui.grid>.computer.only.row,.ui.grid>.row>.computer.only.column{display:none}}@media only screen and (max-width:767px){.ui.five.column.doubling.grid>.column,.ui.five.column.doubling.grid>.row>.column,.ui.four.column.doubling.grid>.column,.ui.four.column.doubling.grid>.row>.column,.ui.grid>.five.column.doubling.row>.column,.ui.grid>.four.column.doubling.row>.column,.ui.grid>.three.column.doubling.row>.column,.ui.grid>.two.column.doubling.row>.column,.ui.three.column.doubling.grid>.column,.ui.three.column.doubling.grid>.row>.column,.ui.two.column.doubling.grid>.column,.ui.two.column.doubling.grid>.row>.column{width:100%}.ui.eight.column.doubling.grid>.column,.ui.eight.column.doubling.grid>.row>.column,.ui.grid>.eight.column.doubling.row>.column,.ui.grid>.nine.column.doubling.row>.column,.ui.grid>.seven.column.doubling.row>.column,.ui.grid>.six.column.doubling.row>.column,.ui.grid>.ten.column.doubling.row>.column,.ui.nine.column.doubling.grid>.column,.ui.nine.column.doubling.grid>.row>.column,.ui.seven.column.doubling.grid>.column,.ui.seven.column.doubling.grid>.row>.column,.ui.six.column.doubling.grid>.column,.ui.six.column.doubling.grid>.row>.column,.ui.ten.column.doubling.grid>.column,.ui.ten.column.doubling.grid>.row>.column{width:50%}.ui.fourteen.column.doubling.grid>.column,.ui.fourteen.column.doubling.grid>.row>.column,.ui.grid>.fourteen.column.doubling.row>.column,.ui.grid>.twelve.column.doubling.row>.column,.ui.twelve.column.doubling.grid>.column,.ui.twelve.column.doubling.grid>.row>.column{width:33.3333333333333%}.ui.grid>.sixteen.column.doubling.row>.column,.ui.sixteen.column.doubling.grid>.column,.ui.sixteen.column.doubling.grid>.row>.column{width:25%}}@media only screen and (min-width:768px) and (max-width:991px){.ui.grid>.two.column.doubling.row>.column,.ui.two.column.doubling.grid>.column,.ui.two.column.doubling.grid>.row>.column{width:100%}.ui.four.column.doubling.grid>.column,.ui.four.column.doubling.grid>.row>.column,.ui.grid>.four.column.doubling.row>.column,.ui.grid>.three.column.doubling.row>.column,.ui.three.column.doubling.grid>.column,.ui.three.column.doubling.grid>.row>.column{width:50%}.ui.eight.column.doubling.grid>.column,.ui.eight.column.doubling.grid>.row>.column,.ui.five.column.doubling.grid>.column,.ui.five.column.doubling.grid>.row>.column,.ui.grid>.eight.column.doubling.row>.column,.ui.grid>.five.column.doubling.row>.column,.ui.grid>.six.column.doubling.row>.column,.ui.six.column.doubling.grid>.column,.ui.six.column.doubling.grid>.row>.column{width:33.3333333%}.ui.eight.column.doubling.grid>.column,.ui.eight.column.doubling.grid>.row>.column,.ui.grid>.eight.column.doubling.row>.column,.ui.grid>.nine.column.doubling.row>.column,.ui.nine.column.doubling.grid>.column,.ui.nine.column.doubling.grid>.row>.column{width:25%}.ui.grid>.ten.column.doubling.row>.column,.ui.ten.column.doubling.grid>.column,.ui.ten.column.doubling.grid>.row>.column{width:20%}.ui.grid>.twelve.column.doubling.row>.column,.ui.twelve.column.doubling.grid>.column,.ui.twelve.column.doubling.grid>.row>.column{width:16.6666666%}.ui.fourteen.column.doubling.grid>.column,.ui.fourteen.column.doubling.grid>.row>.column,.ui.grid>.fourteen.column.doubling.row>.column{width:14.28571428571429%}.ui.grid>.sixteen.column.doubling.row>.column,.ui.sixteen.column.doubling.grid>.column,.ui.sixteen.column.doubling.grid>.row>.column{width:12.5%}}@media only screen and (max-width:767px){.ui.stackable.grid{display:block!important;padding:0;margin:0}.ui.stackable.grid>.column,.ui.stackable.grid>.row>.column{display:block!important;width:auto!important;margin:1em 0 0!important;padding:1em 0 0!important;-webkit-box-shadow:none!important;box-shadow:none!important}.ui.stackable.celled.grid .column,.ui.stackable.divided.grid .column{border-top:1px dotted rgba(0,0,0,.1)}.ui.stackable.grid>.column:first-child,.ui.stackable.grid>.row:first-child>.column:first-child{margin-top:0!important;padding-top:0!important}.ui.stackable.celled.grid>.column:first-child,.ui.stackable.celled.grid>.row:first-child>.column:first-child,.ui.stackable.divided.grid>.column:first-child,.ui.stackable.divided.grid>.row:first-child>.column:first-child{border-top:none!important}.ui.stackable.page.grid>.column,.ui.stackable.page.grid>.row>.column{padding-left:1em!important;padding-right:1em!important}.ui.stackable.grid .vertical.pointing.menu .item:after{display:none}}.ui.menu{margin:1rem 0;background-color:#FFF;font-size:0;font-weight:400;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1);box-shadow:0 0 0 1px rgba(0,0,0,.1);border-radius:.1875rem}.ui.menu:first-child{margin-top:0}.ui.menu:last-child{margin-bottom:0}.ui.menu:after{content:".";display:block;height:0;clear:both;visibility:hidden}.ui.menu>.item:first-child{border-radius:.1875em 0 0 .1875em}.ui.menu>.item:last-child{border-radius:0 .1875em .1875em 0}.ui.menu .item{vertical-align:middle;line-height:1;text-decoration:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;-webkit-transition:opacity .2s ease,background .2s ease,-webkit-box-shadow .2s ease;-moz-transition:opacity .2s ease,background .2s ease,box-shadow .2s ease;transition:opacity .2s ease,background .2s ease,box-shadow .2s ease}.ui.menu .item,.ui.menu .item>a:not(.button){color:rgba(0,0,0,.75)}.ui.menu .item .item,.ui.menu .item .item>a:not(.button){color:rgba(30,30,30,.7)}.ui.menu .item .item .item,.ui.menu .item .item .item>a:not(.button){color:rgba(30,30,30,.6)}.ui.menu .dropdown .menu .item,.ui.menu .dropdown .menu .item a:not(.button){color:rgba(0,0,0,.75)}.ui.menu .dropdown .menu .item a:not(.button):hover,.ui.menu .item .menu .link.item:hover,.ui.menu .item .menu a.item:hover{color:rgba(0,0,0,.85)}.ui.menu .active.item,.ui.menu .active.item a:not(.button){color:rgba(0,0,0,.85);border-radius:0}.ui.menu .item{position:relative;display:inline-block;padding:.83em .95em;border-top:0 solid rgba(0,0,0,0);-webkit-tap-highlight-color:rgba(0,0,0,0);-moz-user-select:-moz-none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.ui.menu .menu{margin:0}.ui.menu .item.left,.ui.menu .menu.left{float:left}.ui.menu .item.right,.ui.menu .menu.right{float:right}.ui.menu .item:before{position:absolute;content:'';top:0;left:0;width:1px;height:100%;background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.05)),color-stop(50%,rgba(0,0,0,.1)),to(rgba(0,0,0,.05)));background-image:-webkit-linear-gradient(rgba(0,0,0,.05)0,rgba(0,0,0,.1)50%,rgba(0,0,0,.05)100%);background-image:-moz-linear-gradient(rgba(0,0,0,.05)0,rgba(0,0,0,.1)50%,rgba(0,0,0,.05)100%);background-image:linear-gradient(rgba(0,0,0,.05)0,rgba(0,0,0,.1)50%,rgba(0,0,0,.05)100%)}.ui.menu .item:first-child:before,.ui.menu>.menu:not(.right):first-child>.item:first-child:before{display:none}.ui.menu .item.right:before,.ui.menu .menu.right .item:before{right:auto;left:0}.ui.menu .item>p:only-child,.ui.menu .text.item>*{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;line-height:1.3;color:rgba(0,0,0,.6)}.ui.menu .item>p:first-child{margin-top:0}.ui.menu .item>p:last-child{margin-bottom:0}.ui.menu:not(.vertical) .item>.button{position:relative;top:-.05em;margin:-.55em 0;padding-bottom:.55em;padding-top:.55em;font-size:.875em}.ui.menu:not(.vertical) .item>.input{margin-top:-.85em;margin-bottom:-.85em;padding-top:.3em;padding-bottom:.3em;width:100%;vertical-align:top}.ui.menu .item>.input input{padding-top:.35em;padding-bottom:.35em}.ui.vertical.menu .item>.input input{margin:0;padding-top:.63em;padding-bottom:.63em}.ui.menu:not(.vertical) .item>.button.labeled>.icon{padding-top:.6em}.ui.menu:not(.vertical) .item .action.input>.button{font-size:.8em;padding:.55em .8em}.ui.small.menu:not(.vertical) .item>.input input{padding-top:.4em;padding-bottom:.4em}.ui.large.menu:not(.vertical) .item>.input input{top:-.125em;padding-bottom:.6em;padding-top:.6em}.ui.large.menu:not(.vertical) .item .action.input>.button{font-size:.8em;padding:.9em}.ui.large.menu:not(.vertical) .item .action.input>.button>.icon{padding-top:.8em}.ui.menu .header.item{background-color:rgba(0,0,0,.04);margin:0}.ui.vertical.menu .header.item{font-weight:700}.ui.menu .dropdown .menu .item .icon{float:none;margin:0 .75em 0 0}.ui.menu .dropdown.item .menu{left:1px;margin:0;min-width:-webkit-calc(99%);min-width:-moz-calc(99%);min-width:calc(99%);-webkit-box-shadow:0 1px 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px 1px rgba(0,0,0,.1)}.ui.secondary.menu .dropdown.item .menu{left:0;min-width:100%}.ui.menu .pointing.dropdown.item .menu{margin-top:.75em}.ui.menu .simple.dropdown.item .menu{margin:0!important}.ui.menu .dropdown.item .menu .item{width:100%;color:rgba(0,0,0,.75)}.ui.menu .dropdown.item .menu .active.item{-webkit-box-shadow:none!important;box-shadow:none!important}.ui.menu .ui.dropdown .menu .item:before{display:none}.ui.menu .item>.label{background-color:rgba(0,0,0,.35);color:#FFF;margin:-.15em 0 -.15em .5em;padding:.3em .8em;vertical-align:baseline}.ui.menu .item>.floating.label{padding:.3em .8em}.ui.menu .item>img:only-child{display:block;max-width:100%;margin:0 auto}.ui.link.menu .item:hover,.ui.menu .link.item:hover,.ui.menu .ui.dropdown .menu .item:hover,.ui.menu a.item:hover{cursor:pointer;background-color:rgba(0,0,0,.02)}.ui.menu .ui.dropdown.item.active{background-color:rgba(0,0,0,.02);-webkit-box-shadow:none;box-shadow:none;-moz-border-bottom-right-radius:0;border-bottom-right-radius:0;-moz-border-bottom-left-radius:0;border-bottom-left-radius:0}.ui.link.menu .item:active,.ui.menu .link.item:active,.ui.menu .ui.dropdown .menu .item:active,.ui.menu a.item:active{background-color:rgba(0,0,0,.05)}.ui.menu .active.item{background-color:rgba(0,0,0,.01);color:rgba(0,0,0,.95);-webkit-box-shadow:0 .2em 0 inset;box-shadow:0 .2em 0 inset}.ui.vertical.menu .active.item{border-radius:0;-webkit-box-shadow:.2em 0 0 inset;box-shadow:.2em 0 0 inset}.ui.vertical.menu>.active.item:first-child{border-radius:0 .1875em 0 0}.ui.vertical.menu>.active.item:last-child{border-radius:0 0 .1875em}.ui.vertical.menu>.active.item:only-child{border-radius:0 .1875em .1875em 0}.ui.vertical.menu .active.item .menu .active.item{border-left:none;padding-left:1.5rem}.ui.vertical.menu .item .menu .active.item{background-color:rgba(0,0,0,.03);-webkit-box-shadow:none;box-shadow:none}.ui.menu .item.disabled,.ui.menu .item.disabled:hover{cursor:default;color:rgba(0,0,0,.2);background-color:transparent!important}.ui.menu.loading{position:relative}.ui.menu.loading:after{position:absolute;top:0;left:0;content:'';width:100%;height:100%;background:rgba(255,255,255,.8)url(../images/loader-large.gif) no-repeat 50% 50%;visibility:visible}.ui.vertical.menu .item{display:block;height:auto!important;border-top:none;border-left:0 solid rgba(0,0,0,0);border-right:none}.ui.vertical.menu>.item:first-child{border-radius:.1875em .1875em 0 0}.ui.vertical.menu>.item:last-child{border-radius:0 0 .1875em .1875em}.ui.vertical.menu .item>.label{float:right;text-align:center}.ui.vertical.menu .item>i.icon{float:right;width:1.22em;margin:0 0 0 .5em}.ui.vertical.menu .item>.label+i.icon{float:none;margin:0 .25em 0 0}.ui.vertical.menu .item:before{position:absolute;content:'';top:0;left:0;width:100%;height:1px;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.03)0,rgba(0,0,0,.1)1.5em,rgba(0,0,0,.03)100%);background-image:-moz-linear-gradient(left,rgba(0,0,0,.03)0,rgba(0,0,0,.1)1.5em,rgba(0,0,0,.03)100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.03)),color-stop(1.5em,rgba(0,0,0,.1)),to(rgba(0,0,0,.03)));background-image:linear-gradient(to right,rgba(0,0,0,.03)0,rgba(0,0,0,.1)1.5em,rgba(0,0,0,.03)100%)}.ui.vertical.menu .item:first-child:before{background-image:none!important}.ui.vertical.menu .dropdown.item>i{float:right;content:"\f0da"}.ui.vertical.menu .dropdown.item .menu{top:0!important;left:100%;margin:0 0 0 1px;-webkit-box-shadow:0 0 1px 1px #DDD;box-shadow:0 0 1px 1px #DDD}.ui.vertical.menu .dropdown.item.active{border-top-right-radius:0;border-bottom-right-radius:0}.ui.vertical.menu .dropdown.item .menu .item{font-size:1rem}.ui.vertical.menu .dropdown.item .menu .item i.icon{margin-right:0}.ui.vertical.menu .dropdown.item.active{-webkit-box-shadow:none;box-shadow:none}.ui.vertical.menu .item>.menu{margin:.5em -.95em 0}.ui.vertical.menu .item>.menu>.item{padding:.5rem 1.5rem;font-size:.875em}.ui.vertical.menu .item>.menu>.item:before{display:none}.ui.tiered.menu>.sub.menu>.item{color:rgba(0,0,0,.4)}.ui.tiered.menu .item.active,.ui.tiered.menu>.menu>.item:hover{color:rgba(0,0,0,.8)}.ui.tiered.menu>.menu .item.active:after{position:absolute;content:'';margin-top:-1px;top:100%;left:0;width:100%;height:2px;background-color:#FBFBFB}.ui.tiered.menu .sub.menu{background-color:rgba(0,0,0,.01);border-radius:0;border-top:1px solid rgba(0,0,0,.1);-webkit-box-shadow:none;box-shadow:none;color:#FFF}.ui.tiered.menu .sub.menu .item{font-size:.875rem}.ui.tiered.menu .sub.menu .item:before{background-image:none}.ui.tiered.menu .sub.menu .active.item{padding-top:.83em;background-color:transparent;border-radius:0;border-top:medium none;-webkit-box-shadow:none;box-shadow:none;color:rgba(0,0,0,.7)!important}.ui.tiered.menu .sub.menu .active.item:after{display:none}.ui.inverted.tiered.menu>.menu>.item{color:rgba(255,255,255,.5)}.ui.inverted.tiered.menu .sub.menu{background-color:rgba(0,0,0,.2)}.ui.inverted.tiered.menu .sub.menu .item{color:rgba(255,255,255,.6)}.ui.inverted.tiered.menu>.menu>.item:hover{color:rgba(255,255,255,.9)}.ui.inverted.tiered.menu .active.item:after{display:none}.ui.inverted.tiered.menu>.menu>.active.item,.ui.inverted.tiered.menu>.sub.menu>.active.item{color:#fff!important;-webkit-box-shadow:none;box-shadow:none}.ui.pointing.tiered.menu>.menu>.item:after{display:none}.ui.pointing.tiered.menu>.sub.menu>.item:after{display:block}.ui.tabular.menu{background-color:transparent;border-bottom:1px solid #DCDDDE;border-radius:0;-webkit-box-shadow:none!important;box-shadow:none!important}.ui.tabular.menu .item{background-color:transparent;border-left:1px solid transparent;border-right:1px solid transparent;border-top:1px solid transparent;padding-left:1.4em;padding-right:1.4em;color:rgba(0,0,0,.6)}.ui.tabular.menu .item:before{display:none}.ui.tabular.menu .item:hover{background-color:transparent;color:rgba(0,0,0,.8)}.ui.tabular.menu .active.item{position:relative;background-color:#FFF;color:rgba(0,0,0,.8);border-color:#DCDDDE;font-weight:700;margin-bottom:-1px;border-bottom:1px solid #FFF;-webkit-box-shadow:none;box-shadow:none;border-radius:5px 5px 0 0}.ui.attached.tabular.menu{position:relative;z-index:2}.ui.tabular.menu~.bottom.attached.segment{margin:1px 0 0 1px}.ui.pagination.menu{margin:0;display:inline-block;vertical-align:middle}.ui.pagination.menu .item{min-width:3em;text-align:center}.ui.pagination.menu .icon.item i.icon{vertical-align:top}.ui.pagination.menu.floated{display:block}.ui.pagination.menu .active.item{border-top:none;padding-top:.83em;background-color:rgba(0,0,0,.05);-webkit-box-shadow:none;box-shadow:none}.ui.secondary.menu{background-color:transparent;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.ui.secondary.menu>.item,.ui.secondary.menu>.menu>.item{-webkit-box-shadow:none;box-shadow:none;border:none;height:auto!important;margin:0 .25em;padding:.5em 1em;border-radius:.3125em}.ui.secondary.menu>.item:before,.ui.secondary.menu>.menu>.item:before{display:none!important}.ui.secondary.menu .item>.input input{background-color:transparent;border:none}.ui.secondary.menu .link.item,.ui.secondary.menu a.item{opacity:.8;-webkit-transition:none;-moz-transition:none;transition:none}.ui.secondary.menu .header.item{border-right:.1em solid rgba(0,0,0,.1);background-color:transparent;border-radius:0}.ui.secondary.menu .link.item:hover,.ui.secondary.menu a.item:hover{opacity:1}.ui.secondary.menu>.active.item,.ui.secondary.menu>.menu>.active.item{background-color:rgba(0,0,0,.08);opacity:1;-webkit-box-shadow:none;box-shadow:none}.ui.secondary.vertical.menu>.active.item{border-radius:.3125em}.ui.secondary.inverted.menu .link.item,.ui.secondary.inverted.menu a.item{color:rgba(255,255,255,.5)}.ui.secondary.inverted.menu .link.item:hover,.ui.secondary.inverted.menu a.item:hover{color:rgba(255,255,255,.9)}.ui.secondary.inverted.menu .active.item{background-color:rgba(255,255,255,.1)}.ui.secondary.item.menu>.item{margin:0}.ui.secondary.attached.menu{-webkit-box-shadow:none;box-shadow:none}.ui.secondary.pointing.menu{border-bottom:3px solid rgba(0,0,0,.1)}.ui.secondary.pointing.menu>.item,.ui.secondary.pointing.menu>.menu>.item{margin:0 0 -3px;padding:.6em .95em;border-bottom:3px solid rgba(0,0,0,0);border-radius:0;-webkit-transition:color .2s;-moz-transition:color .2s;transition:color .2s}.ui.secondary.pointing.menu .header.item{margin-bottom:-3px;background-color:transparent!important;border-right-width:0!important;font-weight:700!important;color:rgba(0,0,0,.8)!important}.ui.secondary.pointing.menu .text.item{-webkit-box-shadow:none!important;box-shadow:none!important}.ui.secondary.pointing.menu>.item:after,.ui.secondary.pointing.menu>.menu>.item:after{display:none}.ui.secondary.pointing.menu>.link.item:hover,.ui.secondary.pointing.menu>.menu>.link.item:hover,.ui.secondary.pointing.menu>.menu>a.item:hover,.ui.secondary.pointing.menu>a.item:hover{background-color:transparent;color:rgba(0,0,0,.7)}.ui.secondary.pointing.menu>.link.item:active,.ui.secondary.pointing.menu>.menu>.link.item:active,.ui.secondary.pointing.menu>.menu>a.item:active,.ui.secondary.pointing.menu>a.item:active{background-color:transparent;border-color:rgba(0,0,0,.2)}.ui.secondary.pointing.menu>.item.active,.ui.secondary.pointing.menu>.menu>.item.active{background-color:transparent;border-color:rgba(0,0,0,.4);-webkit-box-shadow:none;box-shadow:none}.ui.secondary.vertical.pointing.menu{border:none;border-right:3px solid rgba(0,0,0,.1)}.ui.secondary.vertical.menu>.item{border:none;margin:0 0 .3em;padding:.6em .8em;border-radius:.1875em}.ui.secondary.vertical.menu>.header.item{border-radius:0}.ui.secondary.vertical.pointing.menu>.item{margin:0 -3px 0 0;border-bottom:none;border-right:3px solid transparent;border-radius:0}.ui.secondary.vertical.pointing.menu>.item:hover{background-color:transparent;color:rgba(0,0,0,.7)}.ui.secondary.vertical.pointing.menu>.item:active{background-color:transparent;border-color:rgba(0,0,0,.2)}.ui.secondary.vertical.pointing.menu>.item.active{background-color:transparent;border-color:rgba(0,0,0,.4);color:rgba(0,0,0,.85)}.ui.secondary.inverted.menu{background-color:transparent}.ui.secondary.inverted.pointing.menu{border-bottom:3px solid rgba(255,255,255,.1)}.ui.secondary.inverted.pointing.menu>.item{color:rgba(255,255,255,.7)}.ui.secondary.inverted.pointing.menu>.header.item{color:#FFF!important}.ui.secondary.inverted.pointing.menu>.item:hover,.ui.secondary.inverted.pointing.menu>.menu>.item:hover{color:rgba(255,255,255,.85)}.ui.secondary.inverted.pointing.menu>.item:active,.ui.secondary.inverted.pointing.menu>.menu>.item:active{border-color:rgba(255,255,255,.4)}.ui.secondary.inverted.pointing.menu>.item.active,.ui.secondary.inverted.pointing.menu>.menu>.item.active{border-color:rgba(255,255,255,.8);color:#fff}.ui.secondary.inverted.vertical.pointing.menu{border-right:3px solid rgba(255,255,255,.1);border-bottom:none}.ui.text.menu{background-color:transparent;margin:1rem -1rem;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.ui.text.menu>.item{opacity:.8;margin:0 1em;padding:0;height:auto!important;border-radius:0;-webkit-box-shadow:none;box-shadow:none;-webkit-transition:opacity .2s ease;-moz-transition:opacity .2s ease;transition:opacity .2s ease}.ui.text.menu>.item:before{display:none!important}.ui.text.menu .header.item{background-color:transparent;opacity:1;color:rgba(50,50,50,.8);font-size:.875rem;padding:0;text-transform:uppercase;font-weight:700}.ui.text.item.menu .item{margin:0}.ui.vertical.text.menu{margin:1rem 0}.ui.vertical.text.menu:first-child{margin-top:0}.ui.vertical.text.menu:last-child{margin-bottom:0}.ui.vertical.text.menu .item{float:left;clear:left;margin:.5em 0}.ui.vertical.text.menu .item>i.icon{float:none;margin:0 .83em 0 0}.ui.vertical.text.menu .header.item{margin:.8em 0}.ui.text.menu .item:hover{opacity:1;background-color:transparent}.ui.text.menu .active.item{background-color:transparent;padding:0;border:none;opacity:1;font-weight:700;-webkit-box-shadow:none;box-shadow:none}.ui.text.attached.menu,.ui.text.pointing.menu .active.item:after{-webkit-box-shadow:none;box-shadow:none}.ui.inverted.text.menu,.ui.inverted.text.menu .item,.ui.inverted.text.menu .item.active,.ui.inverted.text.menu .item:hover{background-color:transparent}.ui.icon.menu,.ui.vertical.icon.menu{width:auto;display:inline-block;height:auto}.ui.icon.menu>.item{height:auto;text-align:center;color:rgba(60,60,60,.7)}.ui.icon.menu>.item>.icon{display:block;float:none!important;opacity:1;margin:0 auto!important}.ui.icon.menu .icon:before{opacity:1}.ui.menu .icon.item .icon{margin:0}.ui.vertical.icon.menu{float:none}.ui.inverted.icon.menu .item{color:rgba(255,255,255,.8)}.ui.inverted.icon.menu .icon{color:#fff}.ui.labeled.icon.menu{text-align:center}.ui.labeled.icon.menu>.item>.icon{display:block;font-size:1.5em!important;margin:0 auto .3em!important}.ui.green.menu .active.item,.ui.menu .green.active.item{border-color:#A1CF64!important;color:#A1CF64!important}.ui.menu .red.active.item,.ui.red.menu .active.item{border-color:#D95C5C!important;color:#D95C5C!important}.ui.blue.menu .active.item,.ui.menu .blue.active.item{border-color:#6ECFF5!important;color:#6ECFF5!important}.ui.menu .purple.active.item,.ui.purple.menu .active.item{border-color:#564F8A!important;color:#564F8A!important}.ui.menu .orange.active.item,.ui.orange.menu .active.item{border-color:#F05940!important;color:#F05940!important}.ui.menu .teal.active.item,.ui.teal.menu .active.item{border-color:#00B5AD!important;color:#00B5AD!important}.ui.inverted.menu{background-color:#333;-webkit-box-shadow:none;box-shadow:none}.ui.inverted.menu .header.item{margin:0;background-color:rgba(0,0,0,.3);-webkit-box-shadow:none;box-shadow:none}.ui.inverted.menu .item,.ui.inverted.menu .item>a{color:#FFF}.ui.inverted.menu .item .item,.ui.inverted.menu .item .item>a{color:rgba(255,255,255,.8)}.ui.inverted.menu .dropdown .menu .item,.ui.inverted.menu .dropdown .menu .item a{color:rgba(0,0,0,.75)!important}.ui.inverted.menu .item.disabled,.ui.inverted.menu .item.disabled:hover{color:rgba(255,255,255,.2)}.ui.inverted.menu .item:before{background-image:-webkit-linear-gradient(rgba(255,255,255,.03)0,rgba(255,255,255,.1)50%,rgba(255,255,255,.03)100%);background-image:-moz-linear-gradient(rgba(255,255,255,.03)0,rgba(255,255,255,.1)50%,rgba(255,255,255,.03)100%);background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(255,255,255,.03)),color-stop(50%,rgba(255,255,255,.1)),to(rgba(255,255,255,.03)));background-image:linear-gradient(rgba(255,255,255,.03)0,rgba(255,255,255,.1)50%,rgba(255,255,255,.03)100%)}.ui.vertical.inverted.menu .item:before{background-image:-webkit-linear-gradient(left,rgba(255,255,255,.03)0,rgba(255,255,255,.1)50%,rgba(255,255,255,.03)100%);background-image:-moz-linear-gradient(left,rgba(255,255,255,.03)0,rgba(255,255,255,.1)50%,rgba(255,255,255,.03)100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(255,255,255,.03)),color-stop(50%,rgba(255,255,255,.1)),to(rgba(255,255,255,.03)));background-image:linear-gradient(to right,rgba(255,255,255,.03)0,rgba(255,255,255,.1)50%,rgba(255,255,255,.03)100%)}.ui.inverted.menu .dropdown.item:hover,.ui.inverted.menu .link.item:hover,.ui.inverted.menu a.item:hover,.ui.link.inverted.menu .item:hover{background-color:rgba(255,255,255,.1)}.ui.inverted.menu .item .menu .link.item:hover,.ui.inverted.menu .item .menu a.item:hover,.ui.inverted.menu .item>a:hover,.ui.inverted.menu a.item:hover{color:#fff}.ui.inverted.menu .dropdown.item:active,.ui.inverted.menu .link.item:active,.ui.inverted.menu a.item:active{background-color:rgba(255,255,255,.15)}.ui.inverted.menu .active.item{-webkit-box-shadow:none!important;box-shadow:none!important;background-color:rgba(255,255,255,.2)}.ui.inverted.menu .active.item,.ui.inverted.menu .active.item a{color:#fff!important}.ui.inverted.vertical.menu .item .menu .active.item{background-color:rgba(255,255,255,.2);color:#fff}.ui.inverted.pointing.menu .active.item:after{background-color:#5B5B5B;-webkit-box-shadow:none;box-shadow:none}.ui.inverted.pointing.menu .active.item:hover:after{background-color:#4A4A4A}.ui.selection.menu>.item{color:rgba(0,0,0,.4)}.ui.selection.menu>.item:hover{color:rgba(0,0,0,.6)}.ui.selection.menu>.item.active{color:rgba(0,0,0,.85)}.ui.inverted.selection.menu>.item{color:rgba(255,255,255,.4)}.ui.inverted.selection.menu>.item:hover{color:rgba(255,255,255,.9)}.ui.inverted.selection.menu>.item.active{color:#FFF}.ui.floated.menu{float:left;margin:0 .5rem 0 0}.ui.right.floated.menu{float:right;margin:0 0 0 .5rem}.ui.grey.menu{background-color:#F0F0F0}.ui.inverted.green.menu,.ui.inverted.green.pointing.menu .active.item:after{background-color:#A1CF64}.ui.inverted.red.menu{background-color:#D95C5C}.ui.inverted.red.pointing.menu .active.item:after{background-color:#F16883}.ui.inverted.blue.menu,.ui.inverted.blue.pointing.menu .active.item:after{background-color:#6ECFF5}.ui.inverted.purple.menu,.ui.inverted.purple.pointing.menu .active.item:after{background-color:#564F8A}.ui.inverted.orange.menu,.ui.inverted.orange.pointing.menu .active.item:after{background-color:#F05940}.ui.inverted.teal.menu,.ui.inverted.teal.pointing.menu .active.item:after{background-color:#00B5AD}.ui.fitted.menu .item,.ui.fitted.menu .item .menu .item,.ui.menu .fitted.item{padding:0}.ui.horizontally.fitted.menu .item,.ui.horizontally.fitted.menu .item .menu .item,.ui.menu .horizontally.fitted.item{padding-top:.83em;padding-bottom:.83em}.ui.menu .vertically.fitted.item,.ui.vertically.fitted.menu .item,.ui.vertically.fitted.menu .item .menu .item{padding-left:.95em;padding-right:.95em}.ui.borderless.menu .item .menu .item:before,.ui.borderless.menu .item:before,.ui.menu .borderless.item:before{background-image:none}.ui.compact.menu{display:inline-block;margin:0;vertical-align:middle}.ui.compact.vertical.menu{width:auto!important}.ui.compact.vertical.menu .item:last-child::before{display:block}.ui.menu.fluid,.ui.vertical.menu.fluid{display:block;width:100%!important}.ui.item.menu,.ui.item.menu .item{width:100%;padding-left:0!important;padding-right:0!important;text-align:center}.ui.menu.two.item .item{width:50%}.ui.menu.three.item .item{width:33.333%}.ui.menu.four.item .item{width:25%}.ui.menu.five.item .item{width:20%}.ui.menu.six.item .item{width:16.666%}.ui.menu.seven.item .item{width:14.285%}.ui.menu.eight.item .item{width:12.5%}.ui.menu.nine.item .item{width:11.11%}.ui.menu.ten.item .item{width:10%}.ui.menu.eleven.item .item{width:9.09%}.ui.menu.twelve.item .item{width:8.333%}.ui.menu.fixed{position:fixed;z-index:999;margin:0;border:none;width:100%}.ui.menu.fixed,.ui.menu.fixed .item:first-child,.ui.menu.fixed .item:last-child{border-radius:0!important}.ui.menu.fixed.top{top:0;left:0;right:auto;bottom:auto}.ui.menu.fixed.right{top:0;right:0;left:auto;bottom:auto;width:auto;height:100%}.ui.menu.fixed.bottom{bottom:0;left:0;top:auto;right:auto}.ui.menu.fixed.left{top:0;left:0;right:auto;bottom:auto;width:auto;height:100%}.ui.fixed.menu+.ui.grid{padding-top:2.75rem}.ui.pointing.menu .active.item:after{position:absolute;bottom:-.3em;left:50%;content:"";margin-left:-.3em;width:.6em;height:.6em;border:none;border-bottom:1px solid rgba(0,0,0,.1);border-right:1px solid rgba(0,0,0,.1);background-image:none;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);z-index:2;-webkit-transition:background .2s ease;-moz-transition:background .2s ease;transition:background .2s ease}.ui.pointing.menu .active.item .menu .active.item:after{display:none}.ui.vertical.pointing.menu .active.item:after{position:absolute;top:50%;margin-top:-.3em;right:-.4em;bottom:auto;left:auto;border:none;border-top:1px solid rgba(0,0,0,.1);border-right:1px solid rgba(0,0,0,.1)}.ui.pointing.menu .active.item:after{background-color:#FCFCFC}.ui.pointing.menu .active.item:hover:after{background-color:#FAFAFA}.ui.vertical.pointing.menu .menu .active.item:after{background-color:#F4F4F4}.ui.pointing.menu a.active.item:active:after{background-color:#F0F0F0}.ui.menu.attached{margin:0;border-radius:0;-webkit-box-shadow:0 0 0 1px #DDD;box-shadow:0 0 0 1px #DDD}.ui.top.attached.menu{border-radius:.1875em .1875em 0 0}.ui.menu.bottom.attached{border-radius:0 0 .1875em .1875em}.ui.small.menu .item{font-size:.875rem}.ui.small.vertical.menu{width:13rem}.ui.menu .item{font-size:1rem}.ui.vertical.menu{width:15rem}.ui.large.menu .item{font-size:1.125rem}.ui.large.menu .item .item{font-size:.875rem}.ui.large.menu .dropdown .item{font-size:1rem}.ui.large.vertical.menu{width:18rem}.ui.message{position:relative;min-height:18px;margin:1em 0;height:auto;background-color:#EFEFEF;padding:1em;line-height:1.33;color:rgba(0,0,0,.6);-webkit-transition:opacity .1s ease,color .1s ease,background .1s ease,-webkit-box-shadow .1s ease;-moz-transition:opacity .1s ease,color .1s ease,background .1s ease,box-shadow .1s ease;transition:opacity .1s ease,color .1s ease,background .1s ease,box-shadow .1s ease;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;border-radius:.325em}.ui.message:first-child{margin-top:0}.ui.message:last-child{margin-bottom:0}.ui.message .header{margin:0;font-size:1.33em;font-weight:700}.ui.message p{opacity:.85;margin:1em 0}.ui.message p:first-child{margin-top:0}.ui.message p:last-child{margin-bottom:0}.ui.message .header+p{margin-top:.3em}.ui.message>:first-child{margin-top:0}.ui.message>:last-child{margin-bottom:0}.ui.message ul.list{opacity:.85;list-style-position:inside;margin:.2em 0;padding:0}.ui.message ul.list li{position:relative;list-style-type:none;margin:0 0 .3em 1em;padding:0}.ui.message ul.list li:before{position:absolute;content:'\2022';top:-.05em;left:-.8em;height:100%;vertical-align:baseline;opacity:.5}.ui.message ul.list li:first-child{margin-top:0}.ui.message>.close.icon{cursor:pointer;position:absolute;right:0;top:0;width:2.5em;height:2.5em;opacity:.7;padding:.75em 0 0 .75em;-webkit-transition:opacity .1s linear;-moz-transition:opacity .1s linear;transition:opacity .1s linear;z-index:10}.ui.message>.close.icon:hover{opacity:1}.ui.message.visible{display:block!important}.ui.icon.message.animating,.ui.icon.message.visible{display:table!important}.ui.message.hidden{display:none!important}.ui.compact.message{display:inline-block}.ui.attached.message{margin-left:-1px;margin-right:-1px;margin-bottom:-1px;border-radius:.325em .325em 0 0;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1)inset;box-shadow:0 0 0 1px rgba(0,0,0,.1)inset}.ui.attached+.ui.attached.message:not(.top):not(.bottom){margin-top:-1px;border-radius:0}.ui.bottom.attached.message{margin-top:-1px;border-radius:0 0 .325em .325em}.ui.bottom.attached.message:not(:last-child){margin-bottom:1em}.ui.attached.icon.message{display:block;width:auto}.ui.icon.message{display:table;width:100%}.ui.icon.message>.icon:not(.close){display:table-cell;vertical-align:middle;font-size:3.8em;opacity:.5}.ui.icon.message>.icon+.content{padding-left:1em}.ui.icon.message>.content{display:table-cell;vertical-align:middle}.ui.inverted.message{background-color:rgba(255,255,255,.05);color:rgba(255,255,255,.95)}.ui.floating.message{-webkit-box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 0 0 1px rgba(0,0,0,.05)inset;box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 0 0 1px rgba(0,0,0,.05)inset}.ui.black.message{background-color:#333;color:rgba(255,255,255,.95)}.ui.blue.message,.ui.info.message{background-color:#E6F4F9;color:#4D8796}.ui.green.message{background-color:#DEFCD5;color:#52A954}.ui.warning.message,.ui.yellow.message{background-color:#F6F3D5;color:#96904D}.ui.red.message{background-color:#F1D7D7;color:#A95252}.ui.positive.message,.ui.success.message{background-color:#DEFCD5;color:#52A954}.ui.error.message,.ui.negative.message{background-color:#F1D7D7;color:#A95252}.ui.small.message{font-size:.875em}.ui.message{font-size:1em}.ui.large.message{font-size:1.125em}.ui.huge.message{font-size:1.5em}.ui.massive.message{font-size:2em}.ui.table{width:100%;border-collapse:collapse}.ui.table td,.ui.table th,.ui.table tr{border-collapse:collapse;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .1s ease-out;-moz-transition:all .1s ease-out;transition:all .1s ease-out}.ui.table thead{border-bottom:1px solid rgba(0,0,0,.03)}.ui.table tfoot th{background-color:rgba(0,0,0,.03)}.ui.table th{cursor:auto;background-color:rgba(0,0,0,.05);text-align:left;color:rgba(0,0,0,.8);padding:.5em .7em;vertical-align:middle}.ui.table thead th:first-child{border-radius:5px 0 0}.ui.table thead th:last-child{border-radius:0 5px 0 0}.ui.table tfoot th:first-child{border-radius:0 0 0 5px}.ui.table tfoot th:last-child{border-radius:0 0 5px}.ui.table tfoot th:only-child{border-radius:0 0 5px 5px}.ui.table td{padding:.4em .7em;vertical-align:middle}.ui.table tfoot{border-top:1px solid rgba(0,0,0,.03)}.ui.table tfoot th{font-weight:400;font-style:italic}.ui.table tbody tr:nth-child(2n){background-color:rgba(0,0,50,.02)}.ui.table>.icon{vertical-align:baseline}.ui.table>.icon:only-child{margin:0}.ui.table.segment:after{display:none}.ui.table.segment.stacked:after{display:block}@media only screen and (max-width:768px){.ui.table{display:block;padding:0}.ui.table tfoot,.ui.table thead{display:none}.ui.table tbody,.ui.table tr{display:block}.ui.table tr>td{width:100%!important;display:block;border:none!important;padding:.25em .75em;-webkit-box-shadow:0 1px 0 0 rgba(0,0,0,.05)!important;box-shadow:0 1px 0 0 rgba(0,0,0,.05)!important}.ui.table td:first-child{font-weight:700;padding-top:1em}.ui.table td:last-child{-webkit-box-shadow:0 -1px 0 0 rgba(0,0,0,.1)inset!important;box-shadow:0 -1px 0 0 rgba(0,0,0,.1)inset!important;padding-bottom:1em}.ui.table tr>td.active,.ui.table tr>td.error,.ui.table tr>td.negative,.ui.table tr>td.positive,.ui.table tr>td.warning{background-color:transparent!important}}.ui.sortable.table th.disabled:hover{cursor:auto;text-align:left;font-weight:700;color:#333;color:rgba(0,0,0,.8)}.ui.sortable.table thead th:hover{background-color:rgba(0,0,0,.13);color:rgba(0,0,0,.8)}.ui.inverted.sortable.table thead th:hover{background-color:rgba(255,255,255,.13);color:#fff}.ui.table td.positive,.ui.table tr.positive{-webkit-box-shadow:2px 0 0 #119000 inset;box-shadow:2px 0 0 #119000 inset}.ui.table td.positive,.ui.table tr.positive td{background-color:#F2F8F0!important;color:#119000!important}.ui.celled.table tr.positive:hover td,.ui.celled.table tr:hover td.positive,.ui.table td:hover.positive,.ui.table th:hover.positive,.ui.table tr.positive:hover td{background-color:#ECF5E9!important;color:#119000!important}.ui.table td.negative,.ui.table tr.negative{-webkit-box-shadow:2px 0 0 #CD2929 inset;box-shadow:2px 0 0 #CD2929 inset}.ui.table td.negative,.ui.table tr.negative td{background-color:#F9F4F4;color:#CD2929!important}.ui.celled.table tr.negative:hover td,.ui.celled.table tr:hover td.negative,.ui.table td:hover.negative,.ui.table th:hover.negative,.ui.table tr.negative:hover td{background-color:#F2E8E8;color:#CD2929}.ui.table td.error,.ui.table tr.error{-webkit-box-shadow:2px 0 0 #CD2929 inset;box-shadow:2px 0 0 #CD2929 inset}.ui.table td.error,.ui.table th.error,.ui.table tr.error td{background-color:#F9F4F4;color:#CD2929}.ui.celled.table tr.error:hover td,.ui.celled.table tr:hover td.error,.ui.table td:hover.error,.ui.table th:hover.error,.ui.table tr.error:hover td{background-color:#F2E8E8;color:#CD2929}.ui.table td.warning,.ui.table tr.warning{-webkit-box-shadow:2px 0 0 #7D6C00 inset;box-shadow:2px 0 0 #7D6C00 inset}.ui.table td.warning,.ui.table th.warning,.ui.table tr.warning td{background-color:#FBF6E9;color:#7D6C00}.ui.celled.table tr.warning:hover td,.ui.celled.table tr:hover td.warning,.ui.table td:hover.warning,.ui.table th:hover.warning,.ui.table tr.warning:hover td{background-color:#F3EDDC;color:#7D6C00}.ui.table td.active,.ui.table tr.active{-webkit-box-shadow:2px 0 0 rgba(50,50,50,.9)inset;box-shadow:2px 0 0 rgba(50,50,50,.9)inset}.ui.table tr td.active,.ui.table tr.active td{background-color:#E0E0E0;color:rgba(50,50,50,.9)}.ui.table tr td.disabled,.ui.table tr.disabled td,.ui.table tr.disabled:hover td,.ui.table tr:hover td.disabled{color:rgba(150,150,150,.3)}.ui.two.column.table td{width:50%}.ui.three.column.table td{width:33.3333%}.ui.four.column.table td{width:25%}.ui.five.column.table td{width:20%}.ui.six.column.table td{width:16.66667%}.ui.seven.column.table td{width:14.2857%}.ui.eight.column.table td{width:12.5%}.ui.nine.column.table td{width:11.1111%}.ui.ten.column.table td{width:10%}.ui.eleven.column.table td{width:9.0909%}.ui.twelve.column.table td{width:8.3333%}.ui.thirteen.column.table td{width:7.6923%}.ui.fourteen.column.table td{width:7.1428%}.ui.fifteen.column.table td{width:6.6666%}.ui.sixteen.column.table td,.ui.table td.one.wide,.ui.table th.one.wide{width:6.25%}.ui.table td.two.wide,.ui.table th.two.wide{width:12.5%}.ui.table td.three.wide,.ui.table th.three.wide{width:18.75%}.ui.table td.four.wide,.ui.table th.four.wide{width:25%}.ui.table td.five.wide,.ui.table th.five.wide{width:31.25%}.ui.table td.six.wide,.ui.table th.six.wide{width:37.5%}.ui.table td.seven.wide,.ui.table th.seven.wide{width:43.75%}.ui.table td.eight.wide,.ui.table th.eight.wide{width:50%}.ui.table td.nine.wide,.ui.table th.nine.wide{width:56.25%}.ui.table td.ten.wide,.ui.table th.ten.wide{width:62.5%}.ui.table td.eleven.wide,.ui.table th.eleven.wide{width:68.75%}.ui.table td.twelve.wide,.ui.table th.twelve.wide{width:75%}.ui.table td.thirteen.wide,.ui.table th.thirteen.wide{width:81.25%}.ui.table td.fourteen.wide,.ui.table th.fourteen.wide{width:87.5%}.ui.table td.fifteen.wide,.ui.table th.fifteen.wide{width:93.75%}.ui.table td.sixteen.wide,.ui.table th.sixteen.wide{width:100%}.ui.celled.table{color:rgba(0,0,0,.8)}.ui.celled.table tbody tr,.ui.celled.table tfoot tr{border:none}.ui.celled.table td,.ui.celled.table th{border:1px solid rgba(0,0,0,.1)}.ui.celled.table.segment td:first-child,.ui.celled.table.segment th:first-child{border-left:none}.ui.celled.table.segment td:last-child,.ui.celled.table.segment th:last-child{border-right:none}.ui.sortable.table thead th{cursor:pointer;white-space:nowrap}.ui.sortable.table thead th.sorted,.ui.sortable.table thead th.sorted:hover{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.ui.sortable.table thead th:after{display:inline-block;content:'';width:1em;opacity:.8;margin:0 0 0 .5em;font-family:Icons;font-style:normal;font-weight:400;text-decoration:inherit}.ui.sortable.table thead th.ascending:after{content:'\25b4'}.ui.sortable.table thead th.descending:after{content:'\25be'}.ui.inverted.table td{color:rgba(255,255,255,.9)}.ui.inverted.table th{background-color:rgba(0,0,0,.15);color:rgba(255,255,255,.9)}.ui.inverted.table tbody tr:nth-child(2n){background-color:rgba(255,255,255,.06)}.ui.definition.table td:first-child{font-weight:700}.ui.collapsing.table{width:auto}.ui.basic.table th{background-color:transparent;padding:.5em}.ui.basic.table tbody tr{border-bottom:1px solid rgba(0,0,0,.03)}.ui.basic.table td{padding:.8em .5em}.ui.basic.table tbody tr:nth-child(2n){background-color:transparent!important}.ui.padded.table td,.ui.padded.table th{padding:.8em 1em}.ui.compact.table th{padding:.3em .5em}.ui.compact.table td{padding:.2em .5em}.ui.small.table{font-size:.875em}.ui.table{font-size:1em}.ui.large.table{font-size:1.1em}@font-face{font-family:'Basic Icons';src:url(../fonts/basic.icons.eot);src:url(../fonts/basic.icons.eot?#iefix) format('embedded-opentype'),url(../fonts/basic.icons.svg#basic.icons) format('svg'),url(../fonts/basic.icons.woff) format('woff'),url(../fonts/basic.icons.ttf) format('truetype');font-style:normal;font-weight:400;font-variant:normal;text-decoration:inherit;text-transform:none}i.basic.icon{display:inline-block;opacity:.75;margin:0 .25em 0 0;width:1.23em;height:1em;font-family:'Basic Icons';font-style:normal;line-height:1;font-weight:400;text-decoration:inherit;text-align:center;speak:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-font-smoothing:antialiased;font-smoothing:antialiased}i.basic.icon.circle.attention:before{content:'\2757'}i.basic.icon.circle.help:before{content:'\e704'}i.basic.icon.circle.info:before{content:'\e705'}i.basic.icon.add:before{content:'\2795'}i.basic.icon.chart:before{content:'📈'}i.basic.icon.chart.bar:before{content:'📊'}i.basic.icon.chart.pie:before{content:'\e7a2'}i.basic.icon.resize.full:before{content:'\e744'}i.basic.icon.resize.horizontal:before{content:'\2b0d'}i.basic.icon.resize.small:before{content:'\e746'}i.basic.icon.resize.vertical:before{content:'\2b0c'}i.basic.icon.down:before{content:'\2193'}i.basic.icon.down.triangle:before{content:'\25be'}i.basic.icon.down.arrow:before{content:'\e75c'}i.basic.icon.left:before{content:'\2190'}i.basic.icon.left.triangle:before{content:'\25c2'}i.basic.icon.left.arrow:before{content:'\e75d'}i.basic.icon.right:before{content:'\2192'}i.basic.icon.right.triangle:before{content:'\25b8'}i.basic.icon.right.arrow:before{content:'\e75e'}i.basic.icon.up:before{content:'\2191'}i.basic.icon.up.triangle:before{content:'\25b4'}i.basic.icon.up.arrow:before{content:'\e75f'}i.basic.icon.folder:before{content:'\e810'}i.basic.icon.open.folder:before{content:'📂'}i.basic.icon.desk.globe:before{content:'🌐'}i.basic.icon.star:before{content:'\e801'}i.basic.icon.star.empty:before{content:'\e800'}i.basic.icon.star.half:before{content:'\e701'}i.basic.icon.lock:before{content:'🔒'}i.basic.icon.unlock:before{content:'🔓'}i.basic.icon.layout.grid:before{content:'\e80c'}i.basic.icon.layout.block:before{content:'\e708'}i.basic.icon.layout.list:before{content:'\e80b'}i.basic.icon.heart.empty:before{content:'\2661'}i.basic.icon.heart:before{content:'\2665'}i.basic.icon.asterisk:before{content:'\2731'}i.basic.icon.attachment:before{content:'📎'}i.basic.icon.attention:before{content:'\26a0'}i.basic.icon.trophy:before{content:'🏉'}i.basic.icon.barcode:before{content:'\e792'}i.basic.icon.cart:before{content:'\e813'}i.basic.icon.block:before{content:'🚫'}i.basic.icon.book:before{content:'📖'}i.basic.icon.bookmark:before{content:'🔖'}i.basic.icon.calendar:before{content:'📅'}i.basic.icon.cancel:before{content:'\2716'}i.basic.icon.close:before{content:'\e80d'}i.basic.icon.color:before{content:'\e794'}i.basic.icon.chat:before{content:'\e720'}i.basic.icon.check:before{content:'\2611'}i.basic.icon.time:before{content:'🕔'}i.basic.icon.cloud:before{content:'\2601'}i.basic.icon.code:before{content:'\e714'}i.basic.icon.email:before{content:'\40'}i.basic.icon.settings:before{content:'\26ef'}i.basic.icon.setting:before{content:'\2699'}i.basic.icon.comment:before{content:'\e802'}i.basic.icon.clockwise.counter:before{content:'\27f2'}i.basic.icon.clockwise:before{content:'\27f3'}i.basic.icon.cube:before{content:'\e807'}i.basic.icon.direction:before{content:'\27a2'}i.basic.icon.doc:before{content:'📄'}i.basic.icon.docs:before{content:'\e736'}i.basic.icon.dollar:before{content:'💵'}i.basic.icon.paint:before{content:'\e7b5'}i.basic.icon.edit:before{content:'\270d'}i.basic.icon.eject:before{content:'\2ecf'}i.basic.icon.export:before{content:'\e715'}i.basic.icon.hide:before{content:'\e70b'}i.basic.icon.unhide:before{content:'\e80f'}i.basic.icon.facebook:before{content:'\f301'}i.basic.icon.fast-forward:before{content:'\e804'}i.basic.icon.fire:before{content:'🔥'}i.basic.icon.flag:before{content:'\2691'}i.basic.icon.lightning:before{content:'\26a1'}i.basic.icon.lab:before{content:'\68'}i.basic.icon.flight:before{content:'\2708'}i.basic.icon.forward:before{content:'\27a6'}i.basic.icon.gift:before{content:'🎁'}i.basic.icon.github:before{content:'\f308'}i.basic.icon.globe:before{content:'\e817'}i.basic.icon.headphones:before{content:'🎧'}i.basic.icon.question:before{content:'\2753'}i.basic.icon.home:before{content:'\2302'}i.basic.icon.i:before{content:'\2139'}i.basic.icon.idea:before{content:'💡'}i.basic.icon.open:before{content:'🔗'}i.basic.icon.content:before{content:'\e782'}i.basic.icon.location:before{content:'\e724'}i.basic.icon.mail:before{content:'\2709'}i.basic.icon.mic:before{content:'🎤'}i.basic.icon.minus:before{content:'\2d'}i.basic.icon.money:before{content:'💰'}i.basic.icon.off:before{content:'\e78e'}i.basic.icon.pause:before{content:'\e808'}i.basic.icon.photos:before{content:'\e812'}i.basic.icon.photo:before{content:'🌄'}i.basic.icon.pin:before{content:'📌'}i.basic.icon.play:before{content:'\e809'}i.basic.icon.plus:before{content:'\2b'}i.basic.icon.print:before{content:'\e716'}i.basic.icon.rss:before{content:'\e73a'}i.basic.icon.search:before{content:'🔍'}i.basic.icon.shuffle:before{content:'\e803'}i.basic.icon.tag:before{content:'\e80a'}i.basic.icon.tags:before{content:'\e70d'}i.basic.icon.terminal:before{content:'\e7ac'}i.basic.icon.thumbs.down:before{content:'👎'}i.basic.icon.thumbs.up:before{content:'👍'}i.basic.icon.to-end:before{content:'\e806'}i.basic.icon.to-start:before{content:'\e805'}i.basic.icon.top.list:before{content:'🏆'}i.basic.icon.trash:before{content:'\e729'}i.basic.icon.twitter:before{content:'\f303'}i.basic.icon.upload:before{content:'\e711'}i.basic.icon.user.add:before{content:'\e700'}i.basic.icon.user:before{content:'👤'}i.basic.icon.community:before{content:'\e814'}i.basic.icon.users:before{content:'👥'}i.basic.icon.id:before{content:'\e722'}i.basic.icon.url:before{content:'🔗'}i.basic.icon.zoom.in:before{content:'\e750'}i.basic.icon.zoom.out:before{content:'\e751'}i.dropdown.basic.icon{margin:0 0 0 .5em}i.basic.icon.star{width:auto;margin:0}i.basic.icon.left{width:auto;margin:0 .5em 0 0}i.basic.icon.down,i.basic.icon.right,i.basic.icon.search,i.basic.icon.up{width:auto;margin:0 0 0 .5em}i.basic.icon.delete:before{content:'\e80d'}i.basic.icon.dropdown:before{content:'\25be'}i.basic.icon.help:before{content:'\e704'}i.basic.icon.info:before{content:'\e705'}i.basic.icon.error:before{content:'\e80d'}i.basic.icon.dislike:before{content:'\2661'}i.basic.icon.like:before{content:'\2665'}i.basic.icon.eye:before{content:'\e80f'}i.basic.icon.eye.hidden:before{content:'\e70b'}i.basic.icon.date:before{content:'📅'}i.basic.icon.active,i.basic.icon.hover,i.emphasized.basic.icon{opacity:1}i.basic.icon.disabled{opacity:.3}i.link.basic.icon{cursor:pointer;opacity:.7;-webkit-transition:opacity .3s ease-out;-moz-transition:opacity .3s ease-out;transition:opacity .3s ease-out}.link.basic.icon:hover{opacity:1!important}i.circular.basic.icon{border-radius:500px!important;padding:.5em 0!important;-webkit-box-shadow:0 0 0 .1em rgba(0,0,0,.1)inset;box-shadow:0 0 0 .1em rgba(0,0,0,.1)inset;line-height:1!important;width:2em!important;height:2em!important}i.circular.inverted.basic.icon{border:none;-webkit-box-shadow:none;box-shadow:none}i.vertically.flipped.basic.icon{-webkit-transform:scale(1,-1);-moz-transform:scale(1,-1);-ms-transform:scale(1,-1);transform:scale(1,-1)}i.horizontally.flipped.basic.icon{-webkit-transform:scale(-1,1);-moz-transform:scale(-1,1);-ms-transform:scale(-1,1);transform:scale(-1,1)}i.left.rotated.basic.icon{-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}i.right.rotated.basic.icon{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}i.square.basic.icon{width:2em;height:2em;padding:.5em .35em!important;-webkit-box-shadow:0 0 0 .1em rgba(0,0,0,.1)inset;box-shadow:0 0 0 .1em rgba(0,0,0,.1)inset;vertical-align:baseline}i.square.basic.icon:before{vertical-align:middle}i.square.inverted.basic.icon{border:none;-webkit-box-shadow:none;box-shadow:none}i.inverted.basic.icon{background-color:#222;color:#FFF}i.blue.basic.icon{color:#6ECFF5!important}i.black.basic.icon{color:#5C6166!important}i.green.basic.icon{color:#A1CF64!important}i.red.basic.icon{color:#D95C5C!important}i.purple.basic.icon{color:#564F8A!important}i.teal.basic.icon{color:#00B5AD!important}i.inverted.black.basic.icon{background-color:#5C6166!important;color:#FFF!important}i.inverted.blue.basic.icon{background-color:#6ECFF5!important;color:#FFF!important}i.inverted.green.basic.icon{background-color:#A1CF64!important;color:#FFF!important}i.inverted.red.basic.icon{background-color:#D95C5C!important;color:#FFF!important}i.inverted.purple.basic.icon{background-color:#564F8A!important;color:#FFF!important}i.inverted.teal.basic.icon{background-color:#00B5AD!important;color:#FFF!important}i.small.basic.icon{font-size:.875em}i.basic.icon{font-size:1em}i.large.basic.icon{font-size:1.5em;margin-right:.2em;vertical-align:middle}i.big.basic.icon{font-size:2em;margin-right:.5em;vertical-align:middle}i.huge.basic.icon{font-size:4em;margin-right:.75em;vertical-align:middle}i.massive.basic.icon{font-size:8em;margin-right:1em;vertical-align:middle}.ui.button{cursor:pointer;display:inline-block;vertical-align:middle;min-height:1em;outline:0;border:none;background-color:#FAFAFA;color:gray;margin:0;padding:.8em 1.5em;text-transform:uppercase;line-height:1;font-weight:700;font-style:normal;text-align:center;text-decoration:none;background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.05)));background-image:-webkit-linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.05));background-image:-moz-linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.05));background-image:linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.05));border-radius:.25em;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.08)inset;box-shadow:0 0 0 1px rgba(0,0,0,.08)inset;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-transition:opacity .25s ease,background-color .25s ease,color .25s ease,background .25s ease,-webkit-box-shadow .25s ease;-moz-transition:opacity .25s ease,background-color .25s ease,color .25s ease,background .25s ease,box-shadow .25s ease;transition:opacity .25s ease,background-color .25s ease,color .25s ease,background .25s ease,box-shadow .25s ease}.ui.active.button,.ui.buttons .active.button{background-color:#EAEAEA;background-image:none;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.05)inset!important;box-shadow:0 0 0 1px rgba(0,0,0,.05)inset!important;color:rgba(0,0,0,.7)}.ui.button:hover{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.08)));background-image:-webkit-linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.08));background-image:-moz-linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.08));background-image:linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.08));color:rgba(0,0,0,.7)}.ui.button.active:hover{background-image:none}.ui.button.hover .icon,.ui.button:hover .icon{opacity:.85}.ui.active.button:active,.ui.button:active{background-color:#F1F1F1;color:rgba(0,0,0,.7);-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.05)inset!important;box-shadow:0 0 0 1px rgba(0,0,0,.05)inset!important}.ui.loading.button{position:relative;cursor:default;background-color:#FFF!important;color:transparent!important;-webkit-transition:all 0s linear;-moz-transition:all 0s linear;transition:all 0s linear}.ui.loading.button:after{position:absolute;top:0;left:0;width:100%;height:100%;content:'';background:transparent url(../images/loader-mini.gif) no-repeat 50% 50%}.ui.labeled.icon.loading.button .icon{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.ui.disabled.button,.ui.disabled.button.active,.ui.disabled.button:hover{background-color:#DDD!important;cursor:default;color:rgba(0,0,0,.5)!important;opacity:.3!important;background-image:none!important;-webkit-box-shadow:none!important;box-shadow:none!important}.ui.animated.button{position:relative;overflow:hidden}.ui.animated.button .visible.content{position:relative}.ui.animated.button .hidden.content{position:absolute;width:100%}.ui.animated.button .hidden.content,.ui.animated.button .visible.content{-webkit-transition:right .3s ease 0s;-moz-transition:right .3s ease 0s;transition:right .3s ease 0s}.ui.animated.button .visible.content{left:auto;right:0}.ui.animated.button .hidden.content{top:50%;left:auto;right:-100%;margin-top:-.55em}.ui.animated.button:hover .visible.content{left:auto;right:200%}.ui.animated.button:hover .hidden.content{left:auto;right:0}.ui.vertical.animated.button .hidden.content,.ui.vertical.animated.button .visible.content{-webkit-transition:top .3s ease 0s,-webkit-transform .3s ease 0s;-moz-transition:top .3s ease 0s,-moz-transform .3s ease 0s;transition:top .3s ease 0s,transform .3s ease 0s}.ui.vertical.animated.button .visible.content{-webkit-transform:translateY(0%);-moz-transform:translateY(0%);-ms-transform:translateY(0%);transform:translateY(0%);right:auto}.ui.vertical.animated.button .hidden.content{top:-100%;left:0;right:auto}.ui.vertical.animated.button:hover .visible.content{-webkit-transform:translateY(200%);-moz-transform:translateY(200%);-ms-transform:translateY(200%);transform:translateY(200%);right:auto}.ui.vertical.animated.button:hover .hidden.content{top:50%;right:auto}.ui.fade.animated.button .hidden.content,.ui.fade.animated.button .visible.content{-webkit-transition:opacity .3s ease 0s,-webkit-transform .3s ease 0s;-moz-transition:opacity .3s ease 0s,-moz-transform .3s ease 0s;transition:opacity .3s ease 0s,transform .3s ease 0s}.ui.fade.animated.button .visible.content{left:auto;right:auto;opacity:1;-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.ui.fade.animated.button .hidden.content{opacity:0;left:0;right:auto;-webkit-transform:scale(1.2);-moz-transform:scale(1.2);-ms-transform:scale(1.2);transform:scale(1.2)}.ui.fade.animated.button:hover .visible.content{left:auto;right:auto;opacity:0;-webkit-transform:scale(0.7);-moz-transform:scale(0.7);-ms-transform:scale(0.7);transform:scale(0.7)}.ui.fade.animated.button:hover .hidden.content{left:0;right:auto;opacity:1;-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.ui.primary.button,.ui.primary.buttons .button{background-color:#D95C5C;color:#FFF}.ui.primary.button.active,.ui.primary.button:hover,.ui.primary.buttons .active.button,.ui.primary.buttons .button:hover{background-color:#E75859;color:#FFF}.ui.primary.button:active,.ui.primary.buttons .button:active{background-color:#D24B4C;color:#FFF}.ui.secondary.button,.ui.secondary.buttons .button{background-color:#00B5AD;color:#FFF}.ui.secondary.button.active,.ui.secondary.button:hover,.ui.secondary.buttons .active.button,.ui.secondary.buttons .button:hover{background-color:#009A93;color:#FFF}.ui.secondary.button:active,.ui.secondary.buttons .button:active{background-color:#00847E;color:#FFF}.ui.facebook.button{background-color:#3B579D;color:#FFF}.ui.facebook.button:hover{background-color:#3A59A9;color:#FFF}.ui.facebook.button:active{background-color:#334F95;color:#FFF}.ui.twitter.button{background-color:#4092CC;color:#FFF}.ui.twitter.button:hover{background-color:#399ADE;color:#FFF}.ui.twitter.button:active{background-color:#3283BC;color:#FFF}.ui.google.plus.button{background-color:#D34836;color:#FFF}.ui.google.plus.button:hover{background-color:#E3432E;color:#FFF}.ui.google.plus.button:active{background-color:#CA3A27;color:#FFF}.ui.linkedin.button{background-color:#1F88BE;color:#FFF}.ui.linkedin.button:hover{background-color:#1394D6;color:#FFF}.ui.linkedin.button:active{background-color:#1179AE;color:#FFF}.ui.youtube.button{background-color:#CC181E;color:#FFF}.ui.youtube.button:hover{background-color:#DF0209;color:#FFF}.ui.youtube.button:active{background-color:#A50006;color:#FFF}.ui.instagram.button{background-color:#49769C;color:#FFF}.ui.instagram.button:hover{background-color:#4781B1;color:#FFF}.ui.instagram.button:active{background-color:#38658A;color:#FFF}.ui.pinterest.button{background-color:#00ACED;color:#FFF}.ui.pinterest.button:hover{background-color:#00B9FF;color:#FFF}.ui.pinterest.button:active{background-color:#009EDA;color:#FFF}.ui.vk.button{background-color:#4D7198;color:#FFF}.ui.vk.button:hover{background-color:#537AA5;color:#FFF}.ui.vk.button:active{background-color:#405E7E;color:#FFF}.ui.button>.icon{margin-right:.6em;line-height:1;-webkit-transition:opacity .1s ease;-moz-transition:opacity .1s ease;transition:opacity .1s ease}.ui.left.floated.button,.ui.left.floated.buttons{float:left;margin-right:.25em}.ui.right.floated.button,.ui.right.floated.buttons{float:right;margin-left:.25em}.ui.button,.ui.buttons .button{font-size:1rem}.ui.mini.button,.ui.mini.buttons .button,.ui.mini.buttons .or{font-size:.8rem}.ui.mini.button,.ui.mini.buttons .button{padding:.6em .8em}.ui.mini.buttons .icon.button,.ui.mini.icon.buttons .button{padding:.6em}.ui.tiny.button,.ui.tiny.buttons .button,.ui.tiny.buttons .or{font-size:.875em}.ui.tiny.button,.ui.tiny.buttons .button{padding:.6em .8em}.ui.tiny.buttons .icon.button,.ui.tiny.icon.buttons .button{padding:.6em}.ui.small.button,.ui.small.buttons .button,.ui.small.buttons .or{font-size:.875rem}.ui.large.button,.ui.large.buttons .button,.ui.large.buttons .or{font-size:1.125rem}.ui.big.button,.ui.big.buttons .button,.ui.big.buttons .or{font-size:1.25rem}.ui.huge.button,.ui.huge.buttons .button,.ui.huge.buttons .or{font-size:1.375rem}.ui.massive.button,.ui.massive.buttons .button,.ui.massive.buttons .or{font-size:1.5rem;font-weight:700}.ui.mini.buttons .or:before,.ui.tiny.buttons .or:before{width:1.45em;height:1.55em;line-height:1.4;margin-left:-.725em;margin-top:-.25em}.ui.mini.buttons .or:after,.ui.tiny.buttons .or:after{height:1.45em}.ui.huge.loading.button.active:after,.ui.huge.loading.button:after{background-image:url(../images/loader-small.gif)}.ui.gigantic.buttons .loading.button.active:after,.ui.gigantic.buttons .loading.button:after,.ui.gigantic.loading.button.active:after,.ui.gigantic.loading.button:after,.ui.massive.buttons .loading.button.active:after,.ui.massive.buttons .loading.button:after,.ui.massive.loading.button.active:after,.ui.massive.loading.button:after{background-image:url(../images/loader-medium.gif)}.ui.icon.button,.ui.icon.buttons .button{padding:.8em}.ui.icon.button>.icon,.ui.icon.buttons .button>.icon{opacity:.9;margin:0;vertical-align:top}.ui.basic.button,.ui.basic.buttons .button{background-color:transparent!important;background-image:none;color:gray!important;font-weight:400;text-transform:none;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1)inset;box-shadow:0 0 0 1px rgba(0,0,0,.1)inset}.ui.basic.buttons{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1)inset;box-shadow:0 0 0 1px rgba(0,0,0,.1)inset;border-radius:.25em}.ui.basic.button:hover,.ui.basic.buttons .button:hover{background-image:none;color:#7F7F7F!important;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.18)inset;box-shadow:0 0 0 1px rgba(0,0,0,.18)inset}.ui.basic.button:active,.ui.basic.buttons .button:active{background-color:rgba(0,0,0,.02)!important;color:#7F7F7F!important;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1)inset;box-shadow:0 0 0 1px rgba(0,0,0,.1)inset}.ui.basic.button.active,.ui.basic.buttons .button.active{background-color:rgba(0,0,0,.05);color:#7F7F7F;-webkit-box-shadow:0 0 0 1px #BDBDBD inset;box-shadow:0 0 0 1px #BDBDBD inset}.ui.basic.button.active:hover,.ui.basic.buttons .button.active:hover{background-color:rgba(0,0,0,.1)}.ui.basic.inverted.button,.ui.basic.inverted.buttons .button{color:#FAFAFA!important;-webkit-box-shadow:0 0 0 1px rgba(255,255,255,.3)inset;box-shadow:0 0 0 1px rgba(255,255,255,.3)inset}.ui.basic.inverted.button:hover,.ui.basic.inverted.buttons .button:hover{background-image:none;color:#FFF!important;-webkit-box-shadow:0 0 0 1px rgba(255,255,255,.5)inset;box-shadow:0 0 0 1px rgba(255,255,255,.5)inset}.ui.basic.inverted.button:active,.ui.basic.inverted.buttons .button:active{background-color:rgba(255,255,255,.05)!important;color:#FFF!important;-webkit-box-shadow:0 0 0 1px rgba(255,255,255,.8)inset!important;box-shadow:0 0 0 1px rgba(255,255,255,.8)inset!important}.ui.basic.inverted.button.active,.ui.basic.inverted.buttons .button.active{background-color:rgba(255,255,255,.5);color:#FFF;-webkit-box-shadow:none;box-shadow:none}.ui.basic.inverted.button.active:hover,.ui.basic.inverted.buttons .button.active:hover{background-color:rgba(0,0,0,.1)}.ui.basic.buttons .button{border-left:1px solid rgba(0,0,0,.1);-webkit-box-shadow:none;box-shadow:none}.ui.basic.buttons .button:active,.ui.basic.buttons .button:hover{-webkit-box-shadow:none;box-shadow:none}.ui.basic.buttons .button.active,.ui.basic.buttons .button.active:hover{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.2)inset;box-shadow:0 0 0 1px rgba(0,0,0,.2)inset}.ui.labeled.icon.button,.ui.labeled.icon.buttons .button{position:relative;padding-left:4em!important;padding-right:1.4em!important}.ui.labeled.icon.button>.icon,.ui.labeled.icon.buttons>.button>.icon{position:absolute;top:0;left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;width:2.75em;height:100%;padding-top:.8em;background-color:rgba(0,0,0,.05);text-align:center;border-radius:.25em 0 0 .25em;line-height:1;-webkit-box-shadow:-1px 0 0 0 rgba(0,0,0,.05)inset;box-shadow:-1px 0 0 0 rgba(0,0,0,.05)inset}.ui.labeled.icon.buttons .button>.icon{border-radius:0}.ui.labeled.icon.buttons .button:first-child>.icon{border-top-left-radius:.25em;border-bottom-left-radius:.25em}.ui.labeled.icon.buttons .button:last-child>.icon{border-top-right-radius:.25em;border-bottom-right-radius:.25em}.ui.vertical.labeled.icon.buttons .button:first-child>.icon{border-radius:0;border-top-left-radius:.25em}.ui.vertical.labeled.icon.buttons .button:last-child>.icon{border-radius:0;border-bottom-left-radius:.25em}.ui.right.labeled.icon.button{padding-left:1.4em!important;padding-right:4em!important}.ui.left.fluid.labeled.icon.button,.ui.right.fluid.labeled.icon.button{padding-left:1.4em!important;padding-right:1.4em!important}.ui.right.labeled.icon.button .icon{left:auto;right:0;border-radius:0 .25em .25em 0;-webkit-box-shadow:1px 0 0 0 rgba(0,0,0,.05)inset;box-shadow:1px 0 0 0 rgba(0,0,0,.05)inset}.ui.button.toggle.active,.ui.buttons .button.toggle.active,.ui.toggle.buttons .active.button{background-color:#5BBD72!important;color:#FFF!important;-webkit-box-shadow:none!important;box-shadow:none!important}.ui.button.toggle.active:hover{background-color:#58CB73!important;color:#FFF!important;-webkit-box-shadow:none!important;box-shadow:none!important}.ui.circular.button{border-radius:10em}.ui.attached.button{display:block;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1)!important;box-shadow:0 0 0 1px rgba(0,0,0,.1)!important}.ui.attached.top.button{border-radius:.25em .25em 0 0}.ui.attached.bottom.button{border-radius:0 0 .25em .25em}.ui.attached.left.button{display:inline-block;border-left:none;padding-right:.75em;text-align:right;border-radius:.25em 0 0 .25em}.ui.attached.right.button{display:inline-block;padding-left:.75em;text-align:left;border-radius:0 .25em .25em 0}.ui.buttons .or{position:relative;float:left;width:.3em;height:1.1em;z-index:3}.ui.buttons .or:before{position:absolute;top:50%;left:50%;content:'or';background-color:#FFF;margin-top:-.1em;margin-left:-.9em;width:1.8em;height:1.8em;line-height:1.55;color:#AAA;font-style:normal;font-weight:400;text-align:center;border-radius:500px;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1);box-shadow:0 0 0 1px rgba(0,0,0,.1);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.buttons .or[data-text]:before{content:attr(data-text)}.ui.buttons .or:after{position:absolute;top:0;left:0;content:' ';width:.3em;height:1.7em;background-color:transparent;border-top:.5em solid #FFF;border-bottom:.5em solid #FFF}.ui.fluid.buttons .or{width:0!important}.ui.fluid.buttons .or:after{display:none}.attached.ui.buttons{margin:0;border-radius:4px 4px 0 0}.attached.ui.buttons .button:first-child{border-radius:4px 0 0}.attached.ui.buttons .button:last-child{border-radius:0 4px 0 0}.bottom.attached.ui.buttons{margin-top:-1px;border-radius:0 0 4px 4px}.bottom.attached.ui.buttons .button:first-child{border-radius:0 0 0 4px}.bottom.attached.ui.buttons .button:last-child{border-radius:0 0 4px}.left.attached.ui.buttons{margin-left:-1px;border-radius:0 4px 4px 0}.left.attached.ui.buttons .button:first-child{margin-left:-1px;border-radius:0 4px 0 0}.left.attached.ui.buttons .button:last-child{margin-left:-1px;border-radius:0 0 4px}.right.attached.ui.buttons,.right.attached.ui.buttons .button{margin-right:-1px;border-radius:4px 0 0 4px}.right.attached.ui.buttons .button:first-child{margin-left:-1px;border-radius:4px 0 0}.right.attached.ui.buttons .button:last-child{margin-left:-1px;border-radius:0 0 0 4px}.ui.button.fluid,.ui.fluid.buttons,.ui.fluid.buttons>.button{display:block;width:100%}.ui.\32.buttons>.button,.ui.two.buttons>.button{width:50%}.ui.\33.buttons>.button,.ui.three.buttons>.button{width:33.333%}.ui.\34.buttons>.button,.ui.four.buttons>.button{width:25%}.ui.\35.buttons>.button,.ui.five.buttons>.button{width:20%}.ui.\36.buttons>.button,.ui.six.buttons>.button{width:16.666%}.ui.\37.buttons>.button,.ui.seven.buttons>.button{width:14.285%}.ui.\38.buttons>.button,.ui.eight.buttons>.button{width:12.5%}.ui.\39.buttons>.button,.ui.nine.buttons>.button{width:11.11%}.ui.\31\30.buttons>.button,.ui.ten.buttons>.button{width:10%}.ui.\31\31.buttons>.button,.ui.eleven.buttons>.button{width:9.09%}.ui.\31\32.buttons>.button,.ui.twelve.buttons>.button{width:8.3333%}.ui.fluid.vertical.buttons,.ui.fluid.vertical.buttons>.button{display:block;width:auto;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.\32.vertical.buttons>.button,.ui.two.vertical.buttons>.button{height:50%}.ui.\33.vertical.buttons>.button,.ui.three.vertical.buttons>.button{height:33.333%}.ui.\34.vertical.buttons>.button,.ui.four.vertical.buttons>.button{height:25%}.ui.\35.vertical.buttons>.button,.ui.five.vertical.buttons>.button{height:20%}.ui.\36.vertical.buttons>.button,.ui.six.vertical.buttons>.button{height:16.666%}.ui.\37.vertical.buttons>.button,.ui.seven.vertical.buttons>.button{height:14.285%}.ui.\38.vertical.buttons>.button,.ui.eight.vertical.buttons>.button{height:12.5%}.ui.\39.vertical.buttons>.button,.ui.nine.vertical.buttons>.button{height:11.11%}.ui.\31\30.vertical.buttons>.button,.ui.ten.vertical.buttons>.button{height:10%}.ui.\31\31.vertical.buttons>.button,.ui.eleven.vertical.buttons>.button{height:9.09%}.ui.\31\32.vertical.buttons>.button,.ui.twelve.vertical.buttons>.button{height:8.3333%}.ui.black.button,.ui.black.buttons .button{background-color:#5C6166;color:#FFF}.ui.black.button:hover,.ui.black.buttons .button:hover{background-color:#4C4C4C;color:#FFF}.ui.black.button:active,.ui.black.buttons .button:active{background-color:#333;color:#FFF}.ui.green.button,.ui.green.buttons .button{background-color:#5BBD72;color:#FFF}.ui.green.button.active,.ui.green.button:hover,.ui.green.buttons .active.button,.ui.green.buttons .button:hover{background-color:#58cb73;color:#FFF}.ui.green.button:active,.ui.green.buttons .button:active{background-color:#4CB164;color:#FFF}.ui.red.button,.ui.red.buttons .button{background-color:#D95C5C;color:#FFF}.ui.red.button.active,.ui.red.button:hover,.ui.red.buttons .active.button,.ui.red.buttons .button:hover{background-color:#E75859;color:#FFF}.ui.red.button:active,.ui.red.buttons .button:active{background-color:#D24B4C;color:#FFF}.ui.orange.button,.ui.orange.buttons .button{background-color:#E96633;color:#FFF}.ui.orange.button.active,.ui.orange.button:hover,.ui.orange.buttons .active.button,.ui.orange.buttons .button:hover{background-color:#FF7038;color:#FFF}.ui.orange.button:active,.ui.orange.buttons .button:active{background-color:#DA683B;color:#FFF}.ui.blue.button,.ui.blue.buttons .button{background-color:#6ECFF5;color:#FFF}.ui.blue.button.active,.ui.blue.button:hover,.ui.blue.buttons .active.button,.ui.blue.buttons .button:hover{background-color:#1AB8F3;color:#FFF}.ui.blue.button:active,.ui.blue.buttons .button:active{background-color:#0AA5DF;color:#FFF}.ui.purple.button,.ui.purple.buttons .button{background-color:#564F8A;color:#FFF}.ui.purple.button.active,.ui.purple.button:hover,.ui.purple.buttons .active.button,.ui.purple.buttons .button:hover{background-color:#3E3773;color:#FFF}.ui.purple.button:active,.ui.purple.buttons .button:active{background-color:#2E2860;color:#FFF}.ui.teal.button,.ui.teal.buttons .button{background-color:#00B5AD;color:#FFF}.ui.teal.button.active,.ui.teal.button:hover,.ui.teal.buttons .active.button,.ui.teal.buttons .button:hover{background-color:#009A93;color:#FFF}.ui.teal.button:active,.ui.teal.buttons .button:active{background-color:#00847E;color:#FFF}.ui.positive.button,.ui.positive.buttons .button{background-color:#5BBD72!important;color:#FFF}.ui.positive.button.active,.ui.positive.button:hover,.ui.positive.buttons .active.button,.ui.positive.buttons .button:hover{background-color:#58CB73!important;color:#FFF}.ui.positive.button:active,.ui.positive.buttons .button:active{background-color:#4CB164!important;color:#FFF}.ui.negative.button,.ui.negative.buttons .button{background-color:#D95C5C!important;color:#FFF}.ui.negative.button.active,.ui.negative.button:hover,.ui.negative.buttons .active.button,.ui.negative.buttons .button:hover{background-color:#E75859!important;color:#FFF}.ui.negative.button:active,.ui.negative.buttons .button:active{background-color:#D24B4C!important;color:#FFF}.ui.buttons{display:inline-block;vertical-align:middle}.ui.buttons:after{content:".";display:block;height:0;clear:both;visibility:hidden}.ui.buttons .button:first-child{border-left:none}.ui.buttons .button{float:left;border-radius:0}.ui.buttons .button:first-child{margin-left:0;border-top-left-radius:.25em;border-bottom-left-radius:.25em}.ui.buttons .button:last-child{border-top-right-radius:.25em;border-bottom-right-radius:.25em}.ui.vertical.buttons{display:inline-block}.ui.vertical.buttons .button{display:block;float:none;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1)inset;box-shadow:0 0 0 1px rgba(0,0,0,.1)inset}.ui.vertical.buttons .button:first-child,.ui.vertical.buttons .huge.button:first-child,.ui.vertical.buttons .massive.button:first-child,.ui.vertical.buttons .mini.button:first-child,.ui.vertical.buttons .small.button:first-child,.ui.vertical.buttons .tiny.button:first-child{margin-top:0;border-radius:.25em .25em 0 0}.ui.vertical.buttons .button:last-child,.ui.vertical.buttons .gigantic.button:last-child,.ui.vertical.buttons .huge.button:last-child,.ui.vertical.buttons .massive.button:last-child,.ui.vertical.buttons .mini.button:last-child,.ui.vertical.buttons .small.button:last-child,.ui.vertical.buttons .tiny.button:last-child{border-radius:0 0 .25em .25em}.ui.divider{margin:1rem 0;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(255,255,255,.8);line-height:1;height:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.ui.horizontal.divider,.ui.vertical.divider{border:none;background-color:transparent;font-size:.875rem;font-weight:700;text-align:center;text-transform:uppercase;color:rgba(0,0,0,.8)}.ui.vertical.divider{position:absolute;z-index:2;top:50%;left:50%;margin:0 0 0 -3%;width:6%;height:50%;line-height:0;padding:0}.ui.vertical.divider:after,.ui.vertical.divider:before{position:absolute;left:50%;content:" ";z-index:3;border-left:1px solid rgba(0,0,0,.1);border-right:1px solid rgba(255,255,255,.8);width:0;height:80%}.ui.vertical.divider:before{top:-100%}.ui.vertical.divider:after{top:auto;bottom:0}.ui.horizontal.divider{position:relative;top:0;left:0;margin:1rem 1.5rem;height:auto;padding:0;line-height:1}.ui.horizontal.divider:after,.ui.horizontal.divider:before{position:absolute;content:" ";z-index:3;width:50%;top:50%;height:0;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(255,255,255,.8)}.ui.horizontal.divider:before{left:0;margin-left:-1.5rem}.ui.horizontal.divider:after{left:auto;right:0;margin-right:-1.5rem}.ui.divider>.icon{margin:0;font-size:1rem;vertical-align:middle}.ui.divider.inverted{color:#fff}.ui.horizontal.inverted.divider,.ui.vertical.inverted.divider{color:rgba(255,255,255,.9)}.ui.divider.inverted,.ui.divider.inverted:after,.ui.divider.inverted:before{border-top-color:rgba(0,0,0,.15);border-bottom-color:rgba(255,255,255,.15);border-left-color:rgba(0,0,0,.15);border-right-color:rgba(255,255,255,.15)}.ui.fitted.divider{margin:0}.ui.clearing.divider{clear:both}.ui.section.divider{margin-top:2rem;margin-bottom:2rem}.ui.header{border:none;margin:1em 0 1rem;padding:0;font-size:1.33em;font-weight:700;line-height:1.33}.ui.header .sub.header{font-size:1rem;font-weight:400;margin:0;padding:0;line-height:1.2;color:rgba(0,0,0,.5)}.ui.header .icon{display:table-cell;vertical-align:middle;padding-right:.5em}.ui.header .icon:only-child{display:inline-block;vertical-align:baseline}.ui.header .content{display:inline-block;vertical-align:top}.ui.header .icon+.content{padding-left:.5em;display:table-cell}.ui.header:first-child{margin-top:0}.ui.header:last-child{margin-bottom:0}.ui.header+p{margin-top:0}h1.ui.header{min-height:1rem;line-height:1.33;font-size:2rem}h2.ui.header{line-height:1.33;font-size:1.75rem}h3.ui.header{line-height:1.33;font-size:1.33rem}h4.ui.header{line-height:1.33;font-size:1.1rem}h5.ui.header{line-height:1.2;font-size:1rem}.ui.huge.header{min-height:1em;font-size:2em}.ui.large.header{font-size:1.75em}.ui.medium.header{font-size:1.33em}.ui.small.header{font-size:1.1em}.ui.tiny.header{font-size:1em}.ui.icon.header{display:inline-block;text-align:center}.ui.icon.header .icon{float:none;display:block;font-size:3em;margin:0 auto .2em;padding:0}.ui.icon.header .content{display:block}.ui.icon.header .circular.icon,.ui.icon.header .square.icon{font-size:2em}.ui.block.icon.header .icon{margin-bottom:0}.ui.icon.header.aligned{margin-left:auto;margin-right:auto;display:block}.ui.disabled.header{opacity:.5}.ui.blue.header{color:#6ECFF5!important}.ui.black.header{color:#5C6166!important}.ui.green.header{color:#A1CF64!important}.ui.red.header{color:#D95C5C!important}.ui.purple.header{color:#564F8A!important}.ui.teal.header{color:#00B5AD!important}.ui.blue.dividing.header{border-bottom:3px solid #6ECFF5}.ui.black.dividing.header{border-bottom:3px solid #5C6166}.ui.green.dividing.header{border-bottom:3px solid #A1CF64}.ui.red.dividing.header{border-bottom:3px solid #D95C5C}.ui.purple.dividing.header{border-bottom:3px solid #564F8A}.ui.teal.dividing.header{border-bottom:3px solid #00B5AD}.ui.inverted.header{color:#FFF}.ui.inverted.header .sub.header{color:rgba(255,255,255,.85)}.ui.inverted.black.header{background-color:#5C6166!important;color:#FFF!important}.ui.inverted.blue.header{background-color:#6ECFF5!important;color:#FFF!important}.ui.inverted.green.header{background-color:#A1CF64!important;color:#FFF!important}.ui.inverted.red.header{background-color:#D95C5C!important;color:#FFF!important}.ui.inverted.purple.header{background-color:#564F8A!important;color:#FFF!important}.ui.inverted.teal.header{background-color:#00B5AD!important;color:#FFF!important}.ui.inverted.block.header{border-bottom:none}.ui.left.aligned.header{text-align:left}.ui.right.aligned.header{text-align:right}.ui.center.aligned.header{text-align:center}.ui.justified.header{text-align:justify}.ui.justified.header:after{display:inline-block;content:'';width:100%}.ui.floated.header,.ui.left.floated.header{float:left;margin-top:0;margin-right:.5em}.ui.right.floated.header{float:right;margin-top:0;margin-left:.5em}.ui.fitted.header{padding:0}.ui.dividing.header{padding-bottom:.2rem;border-bottom:1px solid rgba(0,0,0,.1)}.ui.dividing.header .sub.header{padding-bottom:.5em}.ui.dividing.header .icon{margin-bottom:.2em}.ui.block.header{background-color:rgba(0,0,0,.05);padding:.5em 1em}.ui.attached.header{background-color:#E0E0E0;padding:.5em 1rem;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1);box-shadow:0 0 0 1px rgba(0,0,0,.1)}.ui.top.attached.header{margin-bottom:0;border-radius:.3125em .3125em 0 0}.ui.bottom.attached.header{margin-top:0;border-radius:0 0 .3125em .3125em}@font-face{font-family:Icons;src:url(../fonts/icons.eot);src:url(../fonts/icons.eot?#iefix) format('embedded-opentype'),url(../fonts/icons.svg#icons) format('svg'),url(../fonts/icons.woff) format('woff'),url(../fonts/icons.ttf) format('truetype');font-style:normal;font-weight:400;font-variant:normal;text-decoration:inherit;text-transform:none}i.icon{display:inline-block;opacity:.75;margin:0 .25em 0 0;width:1.23em;height:1em;font-family:Icons;font-style:normal;line-height:1;font-weight:400;text-decoration:inherit;text-align:center;speak:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}i.icon.left:before{content:"\f060"}i.icon.right:before{content:"\f061"}i.icon.add.sign.box:before{content:"\f0fe"}i.icon.add.sign:before{content:"\f055"}i.icon.add:before{content:"\f067"}i.icon.adjust:before{content:"\f042"}i.icon.adn:before{content:"\f170"}i.icon.align.center:before{content:"\f037"}i.icon.align.justify:before{content:"\f039"}i.icon.align.left:before{content:"\f036"}i.icon.align.right:before{content:"\f038"}i.icon.ambulance:before{content:"\f0f9"}i.icon.anchor:before{content:"\f13d"}i.icon.android:before{content:"\f17b"}i.icon.angle.down:before{content:"\f107"}i.icon.angle.left:before{content:"\f104"}i.icon.angle.right:before{content:"\f105"}i.icon.angle.up:before{content:"\f106"}i.icon.apple:before{content:"\f179"}i.icon.archive:before{content:"\f187"}i.icon.arrow.down:before{content:"\f078"}i.icon.arrow.left:before{content:"\f053"}i.icon.arrow.right:before{content:"\f054"}i.icon.arrow.sign.down:before{content:"\f13a"}i.icon.arrow.sign.left:before{content:"\f137"}i.icon.arrow.sign.right:before{content:"\f138"}i.icon.arrow.sign.up:before{content:"\f139"}i.icon.arrow.up:before{content:"\f077"}i.icon.asterisk:before{content:"\f069"}i.icon.attachment:before{content:"\f0c6"}i.icon.attention:before{content:"\f06a"}i.icon.backward:before{content:"\f04a"}i.icon.ban.circle:before{content:"\f05e"}i.icon.bar.chart:before{content:"\f080"}i.icon.barcode:before{content:"\f02a"}i.icon.beer:before{content:"\f0fc"}i.icon.bell.outline:before{content:"\f0a2"}i.icon.bell:before{content:"\f0f3"}i.icon.bitbucket.sign:before{content:"\f172"}i.icon.bitbucket:before{content:"\f171"}i.icon.bitcoin:before{content:"\f15a"}i.icon.bold:before{content:"\f032"}i.icon.bolt:before{content:"\f0e7"}i.icon.book:before{content:"\f02d"}i.icon.bookmark.empty:before{content:"\f097"}i.icon.bookmark:before{content:"\f02e"}i.icon.box.arrow.down:before{content:"\f150"}i.icon.box.arrow.right:before{content:"\f152"}i.icon.box.arrow.up:before{content:"\f151"}i.icon.briefcase:before{content:"\f0b1"}i.icon.browser:before{content:"\f022"}i.icon.bug:before{content:"\f188"}i.icon.building:before{content:"\f0f7"}i.icon.bullhorn:before{content:"\f0a1"}i.icon.bullseye:before{content:"\f140"}i.icon.calendar.empty:before{content:"\f133"}i.icon.calendar:before{content:"\f073"}i.icon.camera.retro:before{content:"\f083"}i.icon.camera:before{content:"\f030"}i.icon.triangle.down:before{content:"\f0d7"}i.icon.triangle.left:before{content:"\f0d9"}i.icon.triangle.right:before{content:"\f0da"}i.icon.triangle.up:before{content:"\f0d8"}i.icon.cart:before{content:"\f07a"}i.icon.certificate:before{content:"\f0a3"}i.icon.chat.outline:before{content:"\f0e6"}i.icon.chat:before{content:"\f086"}i.icon.checkbox.empty:before{content:"\f096"}i.icon.checkbox.minus:before{content:"\f147"}i.icon.checked.checkbox:before{content:"\f046"}i.icon.checkmark.sign:before{content:"\f14a"}i.icon.checkmark:before{content:"\f00c"}i.icon.circle.blank:before{content:"\f10c"}i.icon.circle.down:before{content:"\f0ab"}i.icon.circle.left:before{content:"\f0a8"}i.icon.circle.right:before{content:"\f0a9"}i.icon.circle.up:before{content:"\f0aa"}i.icon.circle:before{content:"\f111"}i.icon.cloud.download:before{content:"\f0ed"}i.icon.cloud.upload:before{content:"\f0ee"}i.icon.cloud:before{content:"\f0c2"}i.icon.code.fork:before{content:"\f126"}i.icon.code:before{content:"\f121"}i.icon.coffee:before{content:"\f0f4"}i.icon.collapse:before{content:"\f117"}i.icon.comment.outline:before{content:"\f0e5"}i.icon.comment:before{content:"\f075"}i.icon.copy:before{content:"\f0c5"}i.icon.crop:before{content:"\f125"}i.icon.css3:before{content:"\f13c"}i.icon.cut:before{content:"\f0c4"}i.icon.dashboard:before{content:"\f0e4"}i.icon.desktop:before{content:"\f108"}i.icon.doctor:before{content:"\f0f0"}i.icon.dollar:before{content:"\f155"}i.icon.double.angle.down:before{content:"\f103"}i.icon.double.angle.left:before{content:"\f100"}i.icon.double.angle.right:before{content:"\f101"}i.icon.double.angle.up:before{content:"\f102"}i.icon.down:before{content:"\f063"}i.icon.download.disk:before{content:"\f019"}i.icon.download:before{content:"\f01a"}i.icon.dribbble:before{content:"\f17d"}i.icon.dropbox:before{content:"\f16b"}i.icon.edit.sign:before{content:"\f14b"}i.icon.edit:before{content:"\f044"}i.icon.eject:before{content:"\f052"}i.icon.ellipsis.horizontal:before{content:"\f141"}i.icon.ellipsis.vertical:before{content:"\f142"}i.icon.eraser:before{content:"\f12d"}i.icon.euro:before{content:"\f153"}i.icon.exchange:before{content:"\f0ec"}i.icon.exclamation:before{content:"\f12a"}i.icon.expand:before{content:"\f116"}i.icon.external.url.sign:before{content:"\f14c"}i.icon.external.url:before{content:"\f08e"}i.icon.facebook.sign:before{content:"\f082"}i.icon.facebook:before{content:"\f09a"}i.icon.facetime.video:before{content:"\f03d"}i.icon.fast.backward:before{content:"\f049"}i.icon.fast.forward:before{content:"\f050"}i.icon.female:before{content:"\f182"}i.icon.fighter.jet:before{content:"\f0fb"}i.icon.file.outline:before{content:"\f016"}i.icon.file.text.outline:before{content:"\f0f6"}i.icon.file.text:before{content:"\f15c"}i.icon.file:before{content:"\f15b"}i.icon.filter:before{content:"\f0b0"}i.icon.fire.extinguisher:before{content:"\f134"}i.icon.fire:before{content:"\f06d"}i.icon.flag.checkered:before{content:"\f11e"}i.icon.flag.empty:before{content:"\f11d"}i.icon.flag:before{content:"\f024"}i.icon.flickr:before{content:"\f16e"}i.icon.folder.open.outline:before{content:"\f115"}i.icon.folder.open:before{content:"\f07c"}i.icon.folder.outline:before{content:"\f114"}i.icon.folder:before{content:"\f07b"}i.icon.font:before{content:"\f031"}i.icon.food:before{content:"\f0f5"}i.icon.forward.mail:before{content:"\f064"}i.icon.forward:before{content:"\f04e"}i.icon.foursquare:before{content:"\f180"}i.icon.frown:before{content:"\f119"}i.icon.fullscreen:before{content:"\f0b2"}i.icon.gamepad:before{content:"\f11b"}i.icon.gift:before{content:"\f06b"}i.icon.github.alternate:before{content:"\f09b"}i.icon.github.sign:before{content:"\f092"}i.icon.github:before{content:"\f113"}i.icon.gittip:before{content:"\f184"}i.icon.glass:before{content:"\f000"}i.icon.globe:before{content:"\f0ac"}i.icon.google.plus.sign:before{content:"\f0d4"}i.icon.google.plus:before{content:"\f0d5"}i.icon.h.sign:before{content:"\f0fd"}i.icon.hand.down:before{content:"\f0a7"}i.icon.hand.left:before{content:"\f0a5"}i.icon.hand.right:before{content:"\f0a4"}i.icon.hand.up:before{content:"\f0a6"}i.icon.hdd:before{content:"\f0a0"}i.icon.headphones:before{content:"\f025"}i.icon.heart.empty:before{content:"\f08a"}i.icon.heart:before{content:"\f004"}i.icon.help:before{content:"\f059"}i.icon.hide:before{content:"\f070"}i.icon.home:before{content:"\f015"}i.icon.hospital:before{content:"\f0f8"}i.icon.html5:before{content:"\f13b"}i.icon.inbox:before{content:"\f01c"}i.icon.indent.left:before{content:"\f03b"}i.icon.indent.right:before{content:"\f03c"}i.icon.info.letter:before{content:"\f129"}i.icon.info:before{content:"\f05a"}i.icon.instagram:before{content:"\f16d"}i.icon.italic:before{content:"\f033"}i.icon.key:before{content:"\f084"}i.icon.keyboard:before{content:"\f11c"}i.icon.lab:before{content:"\f0c3"}i.icon.laptop:before{content:"\f109"}i.icon.layout.block:before{content:"\f009"}i.icon.layout.column:before{content:"\f0db"}i.icon.layout.grid:before{content:"\f00a"}i.icon.layout.list:before{content:"\f00b"}i.icon.leaf:before{content:"\f06c"}i.icon.legal:before{content:"\f0e3"}i.icon.lemon:before{content:"\f094"}i.icon.level.down:before{content:"\f149"}i.icon.level.up:before{content:"\f148"}i.icon.lightbulb:before{content:"\f0eb"}i.icon.linkedin.sign:before{content:"\f08c"}i.icon.linkedin:before{content:"\f0e1"}i.icon.linux:before{content:"\f17c"}i.icon.list.ordered:before{content:"\f0cb"}i.icon.list.unordered:before{content:"\f0ca"}i.icon.list:before{content:"\f03a"}i.icon.loading:before{content:"\f110"}i.icon.location:before{content:"\f124"}i.icon.lock:before{content:"\f023"}i.icon.long.arrow.down:before{content:"\f175"}i.icon.long.arrow.left:before{content:"\f177"}i.icon.long.arrow.right:before{content:"\f178"}i.icon.long.arrow.up:before{content:"\f176"}i.icon.magic:before{content:"\f0d0"}i.icon.magnet:before{content:"\f076"}i.icon.mail.outline:before{content:"\f003"}i.icon.mail.reply:before{content:"\f112"}i.icon.mail:before{content:"\f0e0"}i.icon.male:before{content:"\f183"}i.icon.map.marker:before{content:"\f041"}i.icon.map:before{content:"\f14e"}i.icon.maxcdn:before{content:"\f136"}i.icon.medkit:before{content:"\f0fa"}i.icon.meh:before{content:"\f11a"}i.icon.minus.sign.alternate:before{content:"\f146"}i.icon.minus.sign:before{content:"\f056"}i.icon.minus:before{content:"\f068"}i.icon.mobile:before{content:"\f10b"}i.icon.money:before{content:"\f0d6"}i.icon.moon:before{content:"\f186"}i.icon.move:before{content:"\f047"}i.icon.music:before{content:"\f001"}i.icon.mute:before{content:"\f131"}i.icon.off:before{content:"\f011"}i.icon.ok.circle:before{content:"\f05d"}i.icon.ok.sign:before{content:"\f058"}i.icon.paste:before{content:"\f0ea"}i.icon.pause:before{content:"\f04c"}i.icon.payment:before{content:"\f09d"}i.icon.pencil:before{content:"\f040"}i.icon.phone.sign:before{content:"\f098"}i.icon.phone:before{content:"\f095"}i.icon.photo:before{content:"\f03e"}i.icon.pin:before{content:"\f08d"}i.icon.pinterest.sign:before{content:"\f0d3"}i.icon.pinterest:before{content:"\f0d2"}i.icon.plane:before{content:"\f072"}i.icon.play.circle:before{content:"\f01d"}i.icon.play.sign:before{content:"\f144"}i.icon.play:before{content:"\f04b"}i.icon.pound:before{content:"\f154"}i.icon.print:before{content:"\f02f"}i.icon.puzzle.piece:before{content:"\f12e"}i.icon.qr.code:before{content:"\f029"}i.icon.question:before{content:"\f128"}i.icon.quote.left:before{content:"\f10d"}i.icon.quote.right:before{content:"\f10e"}i.icon.refresh:before{content:"\f021"}i.icon.remove.circle:before{content:"\f05c"}i.icon.remove.sign:before{content:"\f057"}i.icon.remove:before{content:"\f00d"}i.icon.renren:before{content:"\f18b"}i.icon.reorder:before{content:"\f0c9"}i.icon.repeat:before{content:"\f01e"}i.icon.reply.all.mail:before{content:"\f122"}i.icon.resize.full:before{content:"\f065"}i.icon.resize.horizontal:before{content:"\f07e"}i.icon.resize.small:before{content:"\f066"}i.icon.resize.vertical:before{content:"\f07d"}i.icon.retweet:before{content:"\f079"}i.icon.road:before{content:"\f018"}i.icon.rocket:before{content:"\f135"}i.icon.rss.sign:before{content:"\f143"}i.icon.rss:before{content:"\f09e"}i.icon.rupee:before{content:"\f156"}i.icon.save:before{content:"\f0c7"}i.icon.screenshot:before{content:"\f05b"}i.icon.search:before{content:"\f002"}i.icon.setting:before{content:"\f013"}i.icon.settings:before{content:"\f085"}i.icon.share.sign:before{content:"\f14d"}i.icon.share:before{content:"\f045"}i.icon.shield:before{content:"\f132"}i.icon.shuffle:before{content:"\f074"}i.icon.sign.in:before{content:"\f090"}i.icon.sign.out:before{content:"\f08b"}i.icon.sign:before{content:"\f0c8"}i.icon.signal:before{content:"\f012"}i.icon.sitemap:before{content:"\f0e8"}i.icon.skype:before{content:"\f17e"}i.icon.smile:before{content:"\f118"}i.icon.sort.ascending:before{content:"\f0de"}i.icon.sort.descending:before{content:"\f0dd"}i.icon.sort.alphabet.descending:before{content:"\f15e"}i.icon.sort.alphabet:before{content:"\f15d"}i.icon.sort.attributes.descending:before{content:"\f161"}i.icon.sort.attributes:before{content:"\f160"}i.icon.sort.order.descending:before{content:"\f163"}i.icon.sort.order:before{content:"\f162"}i.icon.sort:before{content:"\f0dc"}i.icon.stackexchange:before{content:"\f16c"}i.icon.star.empty:before{content:"\f006"}i.icon.star.half.empty:before{content:"\f123"}i.icon.star.half.full:before,i.icon.star.half:before{content:"\f089"}i.icon.star:before{content:"\f005"}i.icon.step.backward:before{content:"\f048"}i.icon.step.forward:before{content:"\f051"}i.icon.stethoscope:before{content:"\f0f1"}i.icon.stop:before{content:"\f04d"}i.icon.strikethrough:before{content:"\f0cc"}i.icon.subscript:before{content:"\f12c"}i.icon.suitcase:before{content:"\f0f2"}i.icon.sun:before{content:"\f185"}i.icon.superscript:before{content:"\f12b"}i.icon.table:before{content:"\f0ce"}i.icon.tablet:before{content:"\f10a"}i.icon.tag:before{content:"\f02b"}i.icon.tags:before{content:"\f02c"}i.icon.tasks:before{content:"\f0ae"}i.icon.terminal:before{content:"\f120"}i.icon.text.height:before{content:"\f034"}i.icon.text.width:before{content:"\f035"}i.icon.thumbs.down.outline:before{content:"\f088"}i.icon.thumbs.down:before{content:"\f165"}i.icon.thumbs.up.outline:before{content:"\f087"}i.icon.thumbs.up:before{content:"\f164"}i.icon.ticket:before{content:"\f145"}i.icon.time:before{content:"\f017"}i.icon.tint:before{content:"\f043"}i.icon.trash:before{content:"\f014"}i.icon.trello:before{content:"\f181"}i.icon.trophy:before{content:"\f091"}i.icon.truck:before{content:"\f0d1"}i.icon.tumblr.sign:before{content:"\f174"}i.icon.tumblr:before{content:"\f173"}i.icon.twitter.sign:before{content:"\f081"}i.icon.twitter:before{content:"\f099"}i.icon.umbrella:before{content:"\f0e9"}i.icon.underline:before{content:"\f0cd"}i.icon.undo:before{content:"\f0e2"}i.icon.unhide:before{content:"\f06e"}i.icon.unlink:before{content:"\f127"}i.icon.unlock.alternate:before{content:"\f13e"}i.icon.unlock:before{content:"\f09c"}i.icon.unmute:before{content:"\f130"}i.icon.up:before{content:"\f062"}i.icon.upload.disk:before{content:"\f093"}i.icon.upload:before{content:"\f01b"}i.icon.url:before{content:"\f0c1"}i.icon.user:before{content:"\f007"}i.icon.users:before{content:"\f0c0"}i.icon.video:before{content:"\f008"}i.icon.vk:before{content:"\f189"}i.icon.volume.down:before{content:"\f027"}i.icon.volume.off:before{content:"\f026"}i.icon.volume.up:before{content:"\f028"}i.icon.warning:before{content:"\f071"}i.icon.weibo:before{content:"\f18a"}i.icon.windows:before{content:"\f17a"}i.icon.won:before{content:"\f159"}i.icon.wrench:before{content:"\f0ad"}i.icon.xing.sign:before{content:"\f169"}i.icon.xing:before{content:"\f168"}i.icon.yen:before{content:"\f157"}i.icon.youtube.play:before{content:"\f16a"}i.icon.youtube.sign:before{content:"\f166"}i.icon.youtube:before{content:"\f167"}i.icon.yuan:before{content:"\f158"}i.icon.zoom.in:before{content:"\f00e"}i.icon.zoom.out:before{content:"\f010"}i.icon.check:before{content:"\f00c"}i.icon.close:before,i.icon.delete:before{content:"\f00d"}i.icon.like:before{content:"\f004"}i.icon.plus:before{content:"\f067"}i.icon.signup:before{content:"\f044"}i.icon.star{width:auto;margin:0}i.icon.left{width:auto;margin:0 .5em 0 0}i.icon.right,i.icon.search{width:auto;margin:0 0 0 .5em}i.icon.loading{-webkit-animation:icon-loading 2s linear infinite;-moz-animation:icon-loading 2s linear infinite;-ms-animation:icon-loading 2s linear infinite;animation:icon-loading 2s linear infinite}@keyframes icon-loading{from{-webkit-transform:rotate(0deg);-moz-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg)}}@-moz-keyframes icon-loading{from{-moz-transform:rotate(0deg);transform:rotate(0deg)}to{-moz-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes icon-loading{from{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-ms-keyframes icon-loading{from{-ms-transform:rotate(0deg);transform:rotate(0deg)}to{-ms-transform:rotate(360deg);transform:rotate(360deg)}}i.emphasized.icon,i.icon.active,i.icon.hover{opacity:1}i.icon.disabled{opacity:.3}i.link.icon{cursor:pointer;opacity:.7;-webkit-transition:opacity .3s ease-out;-moz-transition:opacity .3s ease-out;transition:opacity .3s ease-out}i.link.icon:hover{opacity:1!important}i.circular.icon{border-radius:500em!important;padding:.5em .35em!important;-webkit-box-shadow:0 0 0 .1em rgba(0,0,0,.1)inset;box-shadow:0 0 0 .1em rgba(0,0,0,.1)inset;line-height:1!important;width:2em!important;height:2em!important}i.circular.inverted.icon{border:none;-webkit-box-shadow:none;box-shadow:none}i.flipped.icon,i.horizontally.flipped.icon{-webkit-transform:scale(-1,1);-moz-transform:scale(-1,1);-ms-transform:scale(-1,1);transform:scale(-1,1)}i.vertically.flipped.icon{-webkit-transform:scale(1,-1);-moz-transform:scale(1,-1);-ms-transform:scale(1,-1);transform:scale(1,-1)}i.clockwise.rotated.icon,i.right.rotated.icon,i.rotated.icon{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}i.counterclockwise.rotated.icon,i.left.rotated.icon{-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}i.square.icon{width:2em;height:2em;padding:.5em .35em!important;-webkit-box-shadow:0 0 0 .1em rgba(0,0,0,.1)inset;box-shadow:0 0 0 .1em rgba(0,0,0,.1)inset;vertical-align:baseline}i.square.inverted.icon{border:none;-webkit-box-shadow:none;box-shadow:none}i.inverted.icon{background-color:#222;color:#FFF;-moz-osx-font-smoothing:grayscale}i.blue.icon{color:#6ECFF5!important}i.black.icon{color:#5C6166!important}i.green.icon{color:#A1CF64!important}i.red.icon{color:#D95C5C!important}i.purple.icon{color:#564F8A!important}i.orange.icon{color:#F05940!important}i.teal.icon{color:#00B5AD!important}i.inverted.black.icon{background-color:#5C6166!important;color:#FFF!important}i.inverted.blue.icon{background-color:#6ECFF5!important;color:#FFF!important}i.inverted.green.icon{background-color:#A1CF64!important;color:#FFF!important}i.inverted.red.icon{background-color:#D95C5C!important;color:#FFF!important}i.inverted.purple.icon{background-color:#564F8A!important;color:#FFF!important}i.inverted.orange.icon{background-color:#F05940!important;color:#FFF!important}i.inverted.teal.icon{background-color:#00B5AD!important;color:#FFF!important}i.small.icon{font-size:.875em}i.icon{font-size:1em}i.large.icon{font-size:1.5em;vertical-align:middle}i.big.icon{font-size:2em;vertical-align:middle}i.huge.icon{font-size:4em;vertical-align:middle}i.massive.icon{font-size:8em;vertical-align:middle}.ui.image{position:relative;display:inline-block;vertical-align:middle;max-width:100%;background-color:rgba(0,0,0,.05)}img.ui.image{display:block;background:0 0}.ui.image img{display:block;max-width:100%;height:auto}.ui.disabled.image{cursor:default;opacity:.3}.ui.rounded.image,.ui.rounded.image img,.ui.rounded.images .image,.ui.rounded.images img{border-radius:.3125em}.ui.circular.image,.ui.circular.image img,.ui.circular.images .image,.ui.circular.images img{border-radius:500rem}.ui.fluid.image,.ui.fluid.image img,.ui.fluid.images,.ui.fluid.images img{display:block;width:100%}.ui.avatar.image,.ui.avatar.image img,.ui.avatar.images .image,.ui.avatar.images img{margin-right:.5em;display:inline-block;width:2em;height:2em;border-radius:500rem}.ui.floated.image,.ui.floated.images{float:left;margin-right:1em;margin-bottom:1em}.ui.right.floated.image,.ui.right.floated.images{float:right;margin-bottom:1em;margin-left:1em}.ui.tiny.image,.ui.tiny.images .image,.ui.tiny.images img{width:20px;font-size:.7rem}.ui.mini.image,.ui.mini.images .image,.ui.mini.images img{width:35px;font-size:.8rem}.ui.small.image,.ui.small.images .image,.ui.small.images img{width:80px;font-size:.9rem}.ui.medium.image,.ui.medium.images .image,.ui.medium.images img{width:300px;font-size:1rem}.ui.large.image,.ui.large.images .image,.ui.large.images img{width:450px;font-size:1.1rem}.ui.huge.image,.ui.huge.images .image,.ui.huge.images img{width:600px;font-size:1.2rem}.ui.images{font-size:0;margin:0 -.25rem 0}.ui.images .image,.ui.images img{display:inline-block;margin:0 .25em .5em}.ui.input{display:inline-block;position:relative;color:rgba(0,0,0,.7)}.ui.input input{width:100%;font-family:"Helvetica Neue",Helvetica,Arial;margin:0;padding:.65em 1em;font-size:1em;background-color:#FFF;border:1px solid rgba(0,0,0,.15);outline:0;color:rgba(0,0,0,.7);border-radius:.3125em;-webkit-transition:background-color .3s ease-out,-webkit-box-shadow .2s ease,border-color .2s ease;-moz-transition:background-color .3s ease-out,box-shadow .2s ease,border-color .2s ease;transition:background-color .3s ease-out,box-shadow .2s ease,border-color .2s ease;-webkit-tap-highlight-color:rgba(255,255,255,0);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.input::-webkit-input-placeholder{color:#BBB}.ui.input::-moz-placeholder{color:#BBB}.ui.input input:active,.ui.input.down input{border-color:rgba(0,0,0,.3);background-color:#FAFAFA}.ui.loading.input>.icon{background:url(../images/loader-mini.gif) no-repeat 50% 50%}.ui.loading.input>.icon:after,.ui.loading.input>.icon:before{display:none}.ui.input input:focus,.ui.input.focus input{border-color:rgba(0,0,0,.2);color:rgba(0,0,0,.85)}.ui.input input:focus input::-webkit-input-placeholder,.ui.input.focus input input::-webkit-input-placeholder{color:#AAA}.ui.input input:focus input::-moz-placeholder,.ui.input.focus input input::-moz-placeholder{color:#AAA}.ui.input.error input{background-color:snow;border-color:#E7BEBE;color:#D95C5C}.ui.input.error input ::-webkit-input-placeholder{color:rgba(255,80,80,.4)}.ui.input.error input ::-moz-placeholder{color:rgba(255,80,80,.4)}.ui.input.error input :focus::-webkit-input-placeholder{color:rgba(255,80,80,.7)}.ui.input.error input :focus::-moz-placeholder{color:rgba(255,80,80,.7)}.ui.transparent.input input{border:none;background-color:transparent}.ui.icon.input>.icon{cursor:default;position:absolute;opacity:.5;top:0;right:0;margin:0;width:2.6em;height:100%;padding-top:.82em;text-align:center;border-radius:0 .3125em .3125em 0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;-webkit-transition:opacity .3s ease-out;-moz-transition:opacity .3s ease-out;transition:opacity .3s ease-out}.ui.icon.input>.link.icon{cursor:pointer}.ui.icon.input input{padding-right:3em!important}.ui.icon.input>.circular.icon{top:.35em;right:.5em}.ui.left.icon.input>.icon{right:auto;left:1px;border-radius:.3125em 0 0 .3125em}.ui.left.icon.input>.circular.icon{right:auto;left:.5em}.ui.left.icon.input>input{padding-left:3em!important;padding-right:1.2em!important}.ui.icon.input>input:focus~.icon{opacity:1}.ui.labeled.input .corner.label{font-size:.7em;border-radius:0 .3125em}.ui.labeled.input .left.corner.label{border-radius:.3125em 0}.ui.labeled.input input{padding-right:2.5em!important}.ui.labeled.icon.input:not(.left)>input{padding-right:3.25em!important}.ui.labeled.icon.input:not(.left)>.icon{margin-right:1.25em}.ui.action.input{display:table}.ui.action.input>input{display:table-cell;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-right:none}.ui.action.input>.button,.ui.action.input>.buttons{display:table-cell;border-top-left-radius:0;border-bottom-left-radius:0;white-space:nowrap}.ui.action.input>.button>.icon,.ui.action.input>.buttons>.button>.icon{display:inline;vertical-align:top}.ui.fluid.action.input{display:table;width:100%}.ui.fluid.action.input>.button{width:.01%}.ui.fluid.input{display:block}.ui.mini.input{font-size:.8125em}.ui.small.input{font-size:.875em}.ui.input{font-size:1em}.ui.large.input{font-size:1.125em}.ui.big.input{font-size:1.25em}.ui.huge.input{font-size:1.375em}.ui.massive.input{font-size:1.5em}.ui.label{display:inline-block;vertical-align:middle;margin:-.25em .25em 0;background-color:#E8E8E8;border-color:#E8E8E8;padding:.5em .8em;color:rgba(0,0,0,.65);text-transform:uppercase;font-weight:400;border-radius:.325em;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;-webkit-transition:background .1s linear;-moz-transition:background .1s linear;transition:background .1s linear}.ui.label:first-child{margin-left:0}.ui.label:last-child{margin-right:0}a.ui.label{cursor:pointer}.ui.label a{cursor:pointer;color:inherit;opacity:.8;-webkit-transition:.2s opacity ease;-moz-transition:.2s opacity ease;transition:.2s opacity ease}.ui.label a:hover{opacity:1}.ui.label .detail{display:inline-block;margin-left:.5em;font-weight:700;opacity:.8}.ui.label .icon{width:auto}.ui.label .delete.icon{cursor:pointer;margin:0 0 0 .5em;opacity:.7;-webkit-transition:background .1s linear;-moz-transition:background .1s linear;transition:background .1s linear}.ui.label .delete.icon:hover{opacity:.99}.ui.segment>.attached.label:first-child+*{margin-top:2.5em}.ui.segment>.bottom.attached.label:first-child~:last-child{margin-top:0;margin-bottom:2.5em}.ui.image.label{width:auto!important;margin-top:0;margin-bottom:0;padding-top:.4em;padding-bottom:.4em;line-height:1.5em;vertical-align:baseline;text-transform:none;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1)inset;box-shadow:0 0 0 1px rgba(0,0,0,.1)inset}.ui.image.label img{display:inline-block;height:2.25em;margin:-.4em .8em -.4em -.8em;vertical-align:top;border-radius:.325em 0 0 .325em}.ui.label.disabled{opacity:.5}a.ui.label:hover,a.ui.labels .label:hover{background-color:#E0E0E0;border-color:#E0E0E0;color:rgba(0,0,0,.7)}.ui.labels a.label:hover:before,a.ui.label:hover:before{background-color:#E0E0E0;color:rgba(0,0,0,.7)}.ui.label.visible,.ui.labels.visible .label{display:inline-block!important}.ui.label.hidden,.ui.labels.hidden .label{display:none!important}.ui.tag.label,.ui.tag.labels .label{margin-left:1em;position:relative;padding:.33em 1.3em .33em 1.4em;border-radius:0 3px 3px 0}.ui.tag.label:before,.ui.tag.labels .label:before{position:absolute;top:.3em;left:.3em;content:'';margin-left:-1em;background-image:none;width:1.5em;height:1.5em;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);-webkit-transition:background .1s linear;-moz-transition:background .1s linear;transition:background .1s linear}.ui.tag.label:after,.ui.tag.labels .label:after{position:absolute;content:'';top:50%;left:-.25em;margin-top:-.3em;background-color:#FFF;width:.55em;height:.55em;-webkit-box-shadow:0 -1px 1px 0 rgba(0,0,0,.3);box-shadow:0 -1px 1px 0 rgba(0,0,0,.3);border-radius:100px}.ui.ribbon.label{position:relative;margin:0 .2em;left:-2rem;padding-left:2rem;border-radius:0 4px 4px 0;border-color:rgba(0,0,0,.15)}.ui.ribbon.label:after{position:absolute;content:"";top:100%;left:0;border-top:0 solid transparent;border-right-width:1em;border-right-color:inherit;border-right-style:solid;border-bottom:1em solid transparent;border-left:0 solid transparent;width:0;height:0}.ui.attached.label,.ui.top.attached.label{width:100%;position:absolute;margin:0;top:0;left:0;padding:.75em 1em;border-radius:4px 4px 0 0}.ui.bottom.attached.label{top:auto;bottom:0;border-radius:0 0 4px 4px}.ui.top.left.attached.label{width:auto;margin-top:0!important;border-radius:4px 0}.ui.top.right.attached.label{width:auto;left:auto;right:0;border-radius:0 4px}.ui.bottom.left.attached.label{width:auto;top:auto;bottom:0;border-radius:4px 0 0 4px}.ui.bottom.right.attached.label{top:auto;bottom:0;left:auto;right:0;width:auto;border-radius:4px 0}.ui.corner.label{background-color:transparent;position:absolute;top:0;right:0;z-index:10;margin:0;width:3em;height:3em;padding:0;text-align:center;-webkit-transition:color .2s ease;-moz-transition:color .2s ease;transition:color .2s ease}.ui.corner.label:after{position:absolute;content:"";right:0;top:0;z-index:-1;width:0;height:0;border-top:0 solid transparent;border-right:3em solid transparent;border-bottom:3em solid transparent;border-left:0 solid transparent;border-right-color:inherit;-webkit-transition:border-color .2s ease;-moz-transition:border-color .2s ease;transition:border-color .2s ease}.ui.corner.label .icon{font-size:.875em;margin:.5em 0 0 1.25em}.ui.corner.label .text{display:inline-block;font-weight:700;margin:.5em 0 0 1em;width:2.5em;font-size:.875em;text-align:center;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.ui.input>.ui.corner.label,.ui.rounded.image>.ui.corner.label,.ui.segment>.ui.corner.label{overflow:hidden}.ui.segment>.ui.corner.label{top:-1px;right:-1px}.ui.segment>.ui.left.corner.label{right:auto;left:-1px}.ui.input>.ui.corner.label{top:1px;right:1px}.ui.input>.ui.right.corner.label{right:auto;left:1px}.ui.left.corner.label,.ui.left.corner.label:after{right:auto;left:0}.ui.left.corner.label:after{border-top:3em solid transparent;border-right:3em solid transparent;border-bottom:0 solid transparent;border-left:0 solid transparent;border-top-color:inherit}.ui.left.corner.label .icon{margin:.5em 0 0 -1em}.ui.left.corner.label .text{margin:.5em 0 0 -1em;-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.ui.corner.label:hover{background-color:transparent}.ui.fluid.labels>.label,.ui.label.fluid{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.inverted.label,.ui.inverted.labels .label{color:#FFF!important}.ui.black.label,.ui.black.labels .label{background-color:#5C6166!important;border-color:#5C6166!important;color:#FFF!important}.ui.black.label:before,.ui.black.labels .label:before,.ui.labels .black.label:before{background-color:#5C6166!important}a.ui.black.label:hover,a.ui.black.labels .label:hover{background-color:#333!important;border-color:#333!important}.ui.black.labels a.label:hover:before,.ui.labels a.black.label:hover:before,a.ui.black.label:hover:before{background-color:#333!important}.ui.black.corner.label,.ui.black.corner.label:hover{background-color:transparent!important}.ui.black.ribbon.label{border-color:#333!important}.ui.green.label,.ui.green.labels .label{background-color:#A1CF64!important;border-color:#A1CF64!important;color:#FFF!important}.ui.green.label:before,.ui.green.labels .label:before,.ui.labels .green.label:before{background-color:#A1CF64!important}a.ui.green.label:hover,a.ui.green.labels .label:hover{background-color:#89B84C!important;border-color:#89B84C!important}.ui.green.labels a.label:hover:before,.ui.labels a.green.label:hover:before,a.ui.green.label:hover:before{background-color:#89B84C!important}.ui.green.corner.label,.ui.green.corner.label:hover{background-color:transparent!important}.ui.green.ribbon.label{border-color:#89B84C!important}.ui.red.label,.ui.red.labels .label{background-color:#D95C5C!important;border-color:#D95C5C!important;color:#FFF!important}.ui.labels .red.label:before,.ui.red.label:before,.ui.red.labels .label:before{background-color:#D95C5C!important}.ui.red.corner.label,.ui.red.corner.label:hover{background-color:transparent!important}a.ui.red.label:hover,a.ui.red.labels .label:hover{background-color:#DE3859!important;border-color:#DE3859!important;color:#FFF!important}.ui.labels a.red.label:hover:before,.ui.red.labels a.label:hover:before,a.ui.red.label:hover:before{background-color:#DE3859!important}.ui.red.ribbon.label{border-color:#DE3859!important}.ui.blue.label,.ui.blue.labels .label{background-color:#6ECFF5!important;border-color:#6ECFF5!important;color:#FFF!important}.ui.blue.label:before,.ui.blue.labels .label:before,.ui.labels .blue.label:before{background-color:#6ECFF5!important}.ui.blue.labels a.label:hover,a.ui.blue.label:hover,a.ui.blue.labels .label:hover{background-color:#1AB8F3!important;border-color:#1AB8F3!important;color:#FFF!important}.ui.blue.labels a.label:hover:before,.ui.labels a.blue.label:hover:before,a.ui.blue.label:hover:before{background-color:#1AB8F3!important}.ui.blue.corner.label,.ui.blue.corner.label:hover{background-color:transparent!important}.ui.blue.ribbon.label{border-color:#1AB8F3!important}.ui.purple.label,.ui.purple.labels .label{background-color:#564F8A!important;border-color:#564F8A!important;color:#FFF!important}.ui.labels .purple.label:before,.ui.purple.label:before,.ui.purple.labels .label:before{background-color:#564F8A!important}.ui.purple.labels a.label:hover,a.ui.purple.label:hover,a.ui.purple.labels .label:hover{background-color:#3E3773!important;border-color:#3E3773!important;color:#FFF!important}.ui.labels a.purple.label:hover:before,.ui.purple.labels a.label:hover:before,a.ui.purple.label:hover:before{background-color:#3E3773!important}.ui.purple.corner.label,.ui.purple.corner.label:hover{background-color:transparent!important}.ui.purple.ribbon.label{border-color:#3E3773!important}.ui.orange.label,.ui.orange.labels .label{background-color:#F05940!important;border-color:#F05940!important;color:#FFF!important}.ui.labels .orange.label:before,.ui.orange.label:before,.ui.orange.labels .label:before{background-color:#F05940!important}.ui.orange.labels a.label:hover,a.ui.orange.label:hover,a.ui.orange.labels .label:hover{background-color:#FF4121!important;border-color:#FF4121!important;color:#FFF!important}.ui.labels a.orange.label:hover:before,.ui.orange.labels a.label:hover:before,a.ui.orange.label:hover:before{background-color:#FF4121!important}.ui.orange.corner.label,.ui.orange.corner.label:hover{background-color:transparent!important}.ui.orange.ribbon.label{border-color:#FF4121!important}.ui.teal.label,.ui.teal.labels .label{background-color:#00B5AD!important;border-color:#00B5AD!important;color:#FFF!important}.ui.labels .teal.label:before,.ui.teal.label:before,.ui.teal.labels .label:before{background-color:#00B5AD!important}.ui.teal.labels a.label:hover,a.ui.teal.label:hover,a.ui.teal.labels .label:hover{background-color:#009A93!important;border-color:#009A93!important;color:#FFF!important}.ui.labels a.teal.label:hover:before,.ui.teal.labels a.label:hover:before,a.ui.teal.label:hover:before{background-color:#009A93!important}.ui.teal.corner.label,.ui.teal.corner.label:hover{background-color:transparent!important}.ui.teal.ribbon.label{border-color:#009A93!important}.ui.horizontal.label,.ui.horizontal.labels .label{margin:-.125em .5em -.125em 0;padding:.35em 1em;min-width:6em;text-align:center}.ui.circular.label,.ui.circular.labels .label{min-height:1em;max-height:2em;padding:.5em!important;line-height:1em;text-align:center;border-radius:500rem}.ui.pointing.label{position:relative}.ui.attached.pointing.label{position:absolute}.ui.pointing.label:before{position:absolute;content:"";width:.6em;height:.6em;background-image:none;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);z-index:2;-webkit-transition:background .1s linear;-moz-transition:background .1s linear;transition:background .1s linear;background-color:#E8E8E8}.ui.pointing.above.label,.ui.pointing.label{margin-top:1em}.ui.pointing.above.label:before,.ui.pointing.label:before{margin-left:-.3em;top:-.3em;left:50%}.ui.pointing.below.label{margin-top:0;margin-bottom:1em}.ui.pointing.below.label:before{margin-left:-.3em;top:auto;right:auto;bottom:-.3em;left:50%}.ui.pointing.left.label{margin-top:0;margin-left:1em}.ui.pointing.left.label:before{margin-top:-.3em;bottom:auto;right:auto;top:50%;left:0}.ui.pointing.right.label{margin-top:0;margin-right:1em}.ui.pointing.right.label:before{margin-top:-.3em;right:-.3em;top:50%;bottom:auto;left:auto}.ui.floating.label{position:absolute;z-index:100;top:-1em;left:100%;margin:0 0 0 -1.5em!important}.ui.small.label,.ui.small.labels .label{font-size:.75rem}.ui.label{font-size:.8125rem}.ui.large.label,.ui.large.labels .label{font-size:.875rem}.ui.huge.label,.ui.huge.labels .label{font-size:1rem}.ui.loader{display:none;position:absolute;top:50%;left:50%;margin:0;z-index:1000;-webkit-transform:translateX(-50%) translateY(-50%);-moz-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.ui.dimmer .loader{display:block}.ui.text.loader{width:auto!important;height:auto!important;text-align:center;font-style:normal}.ui.mini.text.loader{min-width:16px;padding-top:2em;font-size:.875em}.ui.small.text.loader{min-width:24px;padding-top:2.5em;font-size:.875em}.ui.text.loader{min-width:32px;font-size:1em;padding-top:3em}.ui.large.text.loader{min-width:64px;padding-top:5em;font-size:1.2em}.ui.loader.active,.ui.loader.visible{display:block}.ui.loader.disabled,.ui.loader.hidden{display:none}.ui.dimmer .ui.text.loader,.ui.inverted.text.loader{color:rgba(255,255,255,.8)}.ui.inverted.dimmer .ui.text.loader{color:rgba(0,0,0,.8)}.ui.dimmer .mini.ui.loader,.ui.inverted .mini.ui.loader{background-image:url(../images/loader-mini-inverted.gif)}.ui.dimmer .small.ui.loader,.ui.inverted .small.ui.loader{background-image:url(../images/loader-small-inverted.gif)}.ui.dimmer .ui.loader,.ui.inverted.loader{background-image:url(../images/loader-medium-inverted.gif)}.ui.dimmer .large.ui.loader,.ui.inverted .large.ui.loader{background-image:url(../images/loader-large-inverted.gif)}.ui.inverted.dimmer .ui.mini.loader,.ui.mini.loader{width:16px;height:16px;background-image:url(../images/loader-mini.gif)}.ui.inverted.dimmer .ui.small.loader,.ui.small.loader{width:24px;height:24px;background-image:url(../images/loader-small.gif)}.ui.inverted.dimmer .ui.loader,.ui.loader{width:32px;height:32px;background:url(../images/loader-medium.gif) no-repeat;background-position:48% 0}.ui.inverted.dimmer .ui.loader.large,.ui.loader.large{width:64px;height:64px;background-image:url(../images/loader-large.gif)}.ui.inline.loader{position:static;vertical-align:middle;margin:0;-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none}.ui.inline.loader.active,.ui.inline.loader.visible{display:inline-block}.ui.progress{border:1px solid rgba(0,0,0,.1);width:100%;height:35px;background-color:#FAFAFA;padding:5px;border-radius:.3125em;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.progress .bar{display:inline-block;height:100%;background-color:#CCC;border-radius:3px;-webkit-transition:width 1s ease-in-out,background-color 1s ease-out;-moz-transition:width 1s ease-in-out,background-color 1s ease-out;transition:width 1s ease-in-out,background-color 1s ease-out}.ui.successful.progress .bar{background-color:#73E064!important}.ui.successful.progress .bar,.ui.successful.progress .bar::after{-webkit-animation:none!important;-moz-animation:none!important;animation:none!important}.ui.warning.progress .bar{background-color:#E96633!important}.ui.warning.progress .bar,.ui.warning.progress .bar::after{-webkit-animation:none!important;-moz-animation:none!important;animation:none!important}.ui.failed.progress .bar{background-color:#DF9BA4!important}.ui.failed.progress .bar,.ui.failed.progress .bar::after{-webkit-animation:none!important;-moz-animation:none!important;animation:none!important}.ui.active.progress .bar{position:relative}.ui.active.progress .bar::after{content:'';opacity:0;position:absolute;top:0;left:0;right:0;bottom:0;background:#FFF;border-radius:3px;-webkit-animation:progress-active 2s ease-out infinite;-moz-animation:progress-active 2s ease-out infinite;animation:progress-active 2s ease-out infinite}@-webkit-keyframes progress-active{0%{opacity:0;width:0}50%{opacity:.3}100%{opacity:0;width:95%}}@-moz-keyframes progress-active{0%{opacity:0;width:0}50%{opacity:.3}100%{opacity:0;width:100%}}@keyframes progress-active{0%{opacity:0;width:0}50%{opacity:.3}100%{opacity:0;width:100%}}.ui.disabled.progress{opacity:.35}.ui.disabled.progress .bar,.ui.disabled.progress .bar::after{-webkit-animation:none!important;-moz-animation:none!important;animation:none!important}.ui.progress.attached{position:relative;border:none}.ui.progress.attached,.ui.progress.attached .bar{display:block;height:3px;padding:0;overflow:hidden;border-radius:0 0 .3125em .3125em}.ui.progress.attached .bar{border-radius:0}.ui.progress.top.attached,.ui.progress.top.attached .bar{top:-2px;border-radius:.3125em .3125em 0 0}.ui.progress.top.attached .bar{border-radius:0}.ui.blue.progress .bar{background-color:#6ECFF5}.ui.black.progress .bar{background-color:#5C6166}.ui.green.progress .bar{background-color:#A1CF64}.ui.red.progress .bar{background-color:#EF4D6D}.ui.purple.progress .bar{background-color:#564F8A}.ui.teal.progress .bar{background-color:#00B5AD}.ui.progress.striped .bar{-webkit-background-size:30px 30px;background-size:30px 30px;background-image:-webkit-gradient(linear,left top,right bottom,color-stop(0.25,rgba(255,255,255,.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,.15)),color-stop(0.75,rgba(255,255,255,.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(135deg,rgba(255,255,255,.15)25%,transparent 25%,transparent 50%,rgba(255,255,255,.15)50%,rgba(255,255,255,.15)75%,transparent 75%,transparent);background-image:-moz-linear-gradient(135deg,rgba(255,255,255,.15)25%,transparent 25%,transparent 50%,rgba(255,255,255,.15)50%,rgba(255,255,255,.15)75%,transparent 75%,transparent);background-image:-webkit-linear-gradient(315deg,rgba(255,255,255,.15)25%,transparent 25%,transparent 50%,rgba(255,255,255,.15)50%,rgba(255,255,255,.15)75%,transparent 75%,transparent);background-image:-moz-linear-gradient(315deg,rgba(255,255,255,.15)25%,transparent 25%,transparent 50%,rgba(255,255,255,.15)50%,rgba(255,255,255,.15)75%,transparent 75%,transparent);background-image:linear-gradient(135deg,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)}.ui.progress.active.striped .bar:after{-webkit-animation:none;-moz-animation:none;-ms-animation:none;animation:none}.ui.progress.active.striped .bar{-webkit-animation:progress-striped 3s linear infinite;-moz-animation:progress-striped 3s linear infinite;animation:progress-striped 3s linear infinite}@-webkit-keyframes progress-striped{0%{background-position:0 0}100%{background-position:60px 0}}@-moz-keyframes progress-striped{0%{background-position:0 0}100%{background-position:60px 0}}@keyframes progress-striped{0%{background-position:0 0}100%{background-position:60px 0}}.ui.small.progress .bar{height:14px}.ui.reveal{display:inline-block;position:relative!important;z-index:2!important;font-size:0!important}.ui.reveal>.content{font-size:1rem!important}.ui.reveal>.visible.content{position:absolute!important;top:0!important;left:0!important;z-index:4!important;-webkit-transition:all .8s cubic-bezier(0.175,.885,.32,1) .15s;-moz-transition:all .8s cubic-bezier(0.175,.885,.32,1) .15s;transition:all .8s cubic-bezier(0.175,.885,.32,1) .15s}.ui.reveal>.hidden.content{position:relative!important;z-index:3!important}.ui.reveal.button{overflow:hidden}.ui.slide.reveal{position:relative!important;display:block;overflow:hidden!important;white-space:nowrap}.ui.slide.reveal>.content{display:block;float:left;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;margin:0;-webkit-transition:top .8s cubic-bezier(0.175,.885,.32,1) .15s,left .8s cubic-bezier(0.175,.885,.32,1) .15s,right .8s cubic-bezier(0.175,.885,.32,1) .15s,bottom .8s cubic-bezier(0.175,.885,.32,1) .15s;-moz-transition:top .8s cubic-bezier(0.175,.885,.32,1) .15s,left .8s cubic-bezier(0.175,.885,.32,1) .15s,right .8s cubic-bezier(0.175,.885,.32,1) .15s,bottom .8s cubic-bezier(0.175,.885,.32,1) .15s;transition:top .8s cubic-bezier(0.175,.885,.32,1) .15s,left .8s cubic-bezier(0.175,.885,.32,1) .15s,right .8s cubic-bezier(0.175,.885,.32,1) .15s,bottom .8s cubic-bezier(0.175,.885,.32,1) .15s}.ui.slide.reveal>.visible.content{position:relative!important}.ui.slide.reveal>.hidden.content{position:absolute!important;left:100%!important;width:100%!important}.ui.slide.reveal:focus>.visible.content,.ui.slide.reveal:hover>.visible.content{left:-100%!important}.ui.slide.reveal:focus>.hidden.content,.ui.slide.reveal:hover>.hidden.content{left:0!important}.ui.right.slide.reveal>.visible.content{left:0}.ui.right.slide.reveal>.hidden.content{left:auto!important;right:100%!important}.ui.right.slide.reveal:focus>.visible.content,.ui.right.slide.reveal:hover>.visible.content{left:100%!important;right:auto!important}.ui.right.slide.reveal:focus>.hidden.content,.ui.right.slide.reveal:hover>.hidden.content{left:auto!important;right:0!important}.ui.up.slide.reveal>.visible.content{top:0!important;left:0!important;right:auto!important;bottom:auto!important}.ui.up.slide.reveal>.hidden.content{top:100%!important;left:0!important;right:auto!important;bottom:auto!important}.ui.slide.up.reveal:focus>.visible.content,.ui.slide.up.reveal:hover>.visible.content{top:-100%!important;left:0!important}.ui.slide.up.reveal:focus>.hidden.content,.ui.slide.up.reveal:hover>.hidden.content{top:0!important;left:0!important}.ui.down.slide.reveal>.visible.content{top:auto!important;right:auto!important;bottom:auto!important;bottom:0!important}.ui.down.slide.reveal>.hidden.content{top:auto!important;right:auto!important;bottom:100%!important;left:0!important}.ui.slide.down.reveal:focus>.visible.content,.ui.slide.down.reveal:hover>.visible.content{left:0!important;bottom:-100%!important}.ui.slide.down.reveal:focus>.hidden.content,.ui.slide.down.reveal:hover>.hidden.content{left:0!important;bottom:0!important}.ui.fade.reveal>.hidden.content{-webkit-transition:opacity .8s cubic-bezier(0.175,.885,.32,1) .15s;-moz-transition:opacity .8s cubic-bezier(0.175,.885,.32,1) .15s;transition:opacity .8s cubic-bezier(0.175,.885,.32,1) .15s;z-index:5!important;opacity:0}.ui.fade.reveal:hover>.hidden.content{opacity:1}.ui.move.left.reveal>.visible.content,.ui.move.reveal>.visible.content{left:auto!important;top:auto!important;bottom:auto!important;right:0!important}.ui.move.left.reveal:focus>.visible.content,.ui.move.left.reveal:hover>.visible.content,.ui.move.reveal:focus>.visible.content,.ui.move.reveal:hover>.visible.content{right:100%!important}.ui.move.right.reveal>.visible.content{right:auto!important;top:auto!important;bottom:auto!important;left:0!important}.ui.move.right.reveal:focus>.visible.content,.ui.move.right.reveal:hover>.visible.content{left:100%!important}.ui.move.up.reveal>.visible.content{right:auto!important;left:auto!important;top:auto!important;bottom:0!important}.ui.move.up.reveal:focus>.visible.content,.ui.move.up.reveal:hover>.visible.content{bottom:100%!important}.ui.move.down.reveal>.visible.content{right:auto!important;left:auto!important;top:0!important;bottom:auto!important}.ui.move.down.reveal:focus>.visible.content,.ui.move.down.reveal:hover>.visible.content{top:100%!important}.ui.rotate.reveal>.visible.content{-webkit-transition-duration:.8s;-moz-transition-duration:.8s;transition-duration:.8s;-webkit-transform:rotate(0deg);-moz-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}.ui.rotate.reveal>.visible.content,.ui.rotate.right.reveal>.visible.content{-webkit-transform-origin:bottom right;-moz-transform-origin:bottom right;-ms-transform-origin:bottom right;transform-origin:bottom right}.ui.rotate.reveal:focus>.visible.content,.ui.rotate.reveal:hover>.visible.content,.ui.rotate.right.reveal:focus>.visible.content,.ui.rotate.right.reveal:hover>.visible.content{-webkit-transform:rotate(110deg);-moz-transform:rotate(110deg);-ms-transform:rotate(110deg);transform:rotate(110deg)}.ui.rotate.left.reveal>.visible.content{-webkit-transform-origin:bottom left;-moz-transform-origin:bottom left;-ms-transform-origin:bottom left;transform-origin:bottom left}.ui.rotate.left.reveal:focus>.visible.content,.ui.rotate.left.reveal:hover>.visible.content{-webkit-transform:rotate(-110deg);-moz-transform:rotate(-110deg);-ms-transform:rotate(-110deg);transform:rotate(-110deg)}.ui.disabled.reveal{opacity:1!important}.ui.disabled.reveal>.content{-webkit-transition:none!important;-moz-transition:none!important;transition:none!important}.ui.disabled.reveal:focus>.visible.content,.ui.disabled.reveal:hover>.visible.content{position:static!important;display:block!important;opacity:1!important;top:0!important;left:0!important;right:auto!important;bottom:auto!important;-webkit-transform:none!important;-moz-transform:none!important;-ms-transform:none!important;transform:none!important}.ui.disabled.reveal:focus>.hidden.content,.ui.disabled.reveal:hover>.hidden.content{display:none!important}.ui.masked.reveal{overflow:hidden}.ui.instant.reveal>.content{-webkit-transition-delay:0s!important;-moz-transition-delay:0s!important;transition-delay:0s!important}.ui.segment{position:relative;background-color:#FFF;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1);box-shadow:0 0 0 1px rgba(0,0,0,.1);margin:1em 0;padding:1em;border-radius:5px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.segment:first-child{margin-top:0}.ui.segment:last-child{margin-bottom:0}.ui.segment:after{content:'';display:block;height:0;clear:both;visibility:hidden}.ui.vertical.segment{margin:0;padding-left:0;padding-right:0;background-color:transparent;border-radius:0;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.1);box-shadow:0 1px 0 rgba(0,0,0,.1)}.ui.vertical.segment:first-child{padding-top:0}.ui.horizontal.segment{margin:0;padding-top:0;padding-bottom:0;background-color:transparent;border-radius:0;-webkit-box-shadow:1px 0 0 rgba(0,0,0,.1);box-shadow:1px 0 0 rgba(0,0,0,.1)}.ui.horizontal.segment:first-child{padding-left:0}.ui.pointing.menu~.ui.attached.segment{top:1px}.ui.page.grid.segment .ui.grid .ui.segment.column{padding-top:2rem;padding-bottom:2rem}.ui.grid .ui.segment.column,.ui.grid .ui.segment.row,.ui.grid.segment{border-radius:0;-webkit-box-shadow:none;box-shadow:none;border:none}.ui.segment>:first-child{margin-top:0}.ui.segment>:last-child{margin-bottom:0}.ui.piled.segment{margin:2em 0;-webkit-box-shadow:0 0 1px 1px rgba(0,0,0,.15);-ms-box-shadow:0 0 1px 1px rgba(0,0,0,.15);-o-box-shadow:0 0 1px 1px rgba(0,0,0,.15);box-shadow:0 0 1px 1px rgba(0,0,0,.15)}.ui.piled.segment:first-child{margin-top:0}.ui.piled.segment:last-child{margin-bottom:0}.ui.piled.segment:after,.ui.piled.segment:before{background-color:#FFF;visibility:visible;content:"";display:block;height:100%;left:-1px;position:absolute;width:100%;-webkit-box-shadow:0 0 1px 1px rgba(0,0,0,.1);box-shadow:0 0 1px 1px rgba(0,0,0,.1)}.ui.piled.segment:after{-webkit-transform:rotate(1.2deg);-moz-transform:rotate(1.2deg);-ms-transform:rotate(1.2deg);transform:rotate(1.2deg);top:0;z-index:-1}.ui.piled.segment:before{-webkit-transform:rotate(-1.2deg);-moz-transform:rotate(-1.2deg);-ms-transform:rotate(-1.2deg);transform:rotate(-1.2deg);top:0;z-index:-2}.ui.stacked.segment{padding-bottom:1.7em}.ui.stacked.segment:after,.ui.stacked.segment:before{content:'';position:absolute;bottom:-3px;left:0;border-top:1px solid rgba(0,0,0,.1);background-color:rgba(0,0,0,.02);width:100%;height:5px;visibility:visible}.ui.stacked.segment:before{bottom:0}.ui.stacked.inverted.segment:after,.ui.stacked.inverted.segment:before{background-color:rgba(255,255,255,.1);border-top:1px solid rgba(255,255,255,.35)}.ui.circular.segment{display:table-cell;padding:2em;text-align:center;vertical-align:middle;border-radius:500em}.ui.raised.segment{-webkit-box-shadow:0 1px 2px 1px rgba(0,0,0,.1);box-shadow:0 1px 2px 1px rgba(0,0,0,.1)}.ui.disabled.segment{opacity:.8;color:#DDD}.ui.basic.segment{position:relative;background-color:transparent;-webkit-box-shadow:none;box-shadow:none;border-radius:0}.ui.basic.segment:first-child{padding-top:0}.ui.basic.segment:last-child{padding-bottom:0}.ui.fitted.segment{padding:0}.ui.blue.segment{border-top:.2em solid #6ECFF5}.ui.green.segment{border-top:.2em solid #A1CF64}.ui.red.segment{border-top:.2em solid #D95C5C}.ui.orange.segment{border-top:.2em solid #F05940}.ui.purple.segment{border-top:.2em solid #564F8A}.ui.teal.segment{border-top:.2em solid #00B5AD}.ui.inverted.black.segment{background-color:#5C6166!important;color:#FFF!important}.ui.inverted.blue.segment{background-color:#6ECFF5!important;color:#FFF!important}.ui.inverted.green.segment{background-color:#A1CF64!important;color:#FFF!important}.ui.inverted.red.segment{background-color:#D95C5C!important;color:#FFF!important}.ui.inverted.orange.segment{background-color:#F05940!important;color:#FFF!important}.ui.inverted.purple.segment{background-color:#564F8A!important;color:#FFF!important}.ui.inverted.teal.segment{background-color:#00B5AD!important;color:#FFF!important}.ui.left.aligned.segment{text-align:left}.ui.right.aligned.segment{text-align:right}.ui.center.aligned.segment{text-align:center}.ui.justified.segment{text-align:justify;-webkit-hyphens:auto;-moz-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.ui.floated.segment,.ui.left.floated.segment{float:left}.ui.right.floated.segment{float:right}.ui.inverted.segment{border:none;-webkit-box-shadow:none;box-shadow:none}.ui.inverted.segment .segment{color:rgba(0,0,0,.7)}.ui.inverted.segment .inverted.segment{color:#FFF}.ui.inverted.segment,.ui.primary.inverted.segment{background-color:#222;color:#FFF}.ui.primary.segment{background-color:#FFF;color:#555}.ui.secondary.segment{background-color:#FAF9FA;color:#777}.ui.tertiary.segment{background-color:#EBEBEB;color:#B0B0B0}.ui.secondary.inverted.segment{background-color:#555;background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(255,255,255,.3)),to(rgba(255,255,255,.3)));background-image:-webkit-linear-gradient(rgba(255,255,255,.3)0,rgba(255,255,255,.3)100%);background-image:-moz-linear-gradient(rgba(255,255,255,.3)0,rgba(255,255,255,.3)100%);background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(255,255,255,.3)),to(rgba(255,255,255,.3)));background-image:linear-gradient(rgba(255,255,255,.3)0,rgba(255,255,255,.3)100%);color:#FAFAFA}.ui.tertiary.inverted.segment{background-color:#555;background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(255,255,255,.6)),to(rgba(255,255,255,.6)));background-image:-webkit-linear-gradient(rgba(255,255,255,.6)0,rgba(255,255,255,.6)100%);background-image:-moz-linear-gradient(rgba(255,255,255,.6)0,rgba(255,255,255,.6)100%);background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(255,255,255,.6)),to(rgba(255,255,255,.6)));background-image:linear-gradient(rgba(255,255,255,.6)0,rgba(255,255,255,.6)100%);color:#EEE}.ui.segment.attached{top:-1px;bottom:-1px;border-radius:0;margin:0;-webkit-box-shadow:0 0 0 1px #DDD;box-shadow:0 0 0 1px #DDD}.ui.top.attached.segment{top:0;bottom:-1px;margin-top:1em;margin-bottom:0;border-radius:5px 5px 0 0}.ui.segment.top.attached:first-child{margin-top:0}.ui.segment.bottom.attached{top:-1px;bottom:0;margin-top:0;margin-bottom:1em;border-radius:0 0 5px 5px}.ui.segment.bottom.attached:last-child{margin-bottom:0}.ui.step,.ui.steps .step{display:inline-block;position:relative;padding:1em 2em 1em 3em;vertical-align:top;background-color:#FFF;color:#888;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.step:after,.ui.steps .step:after{position:absolute;z-index:2;content:'';top:.42em;right:-1em;border:medium none;background-color:#FFF;width:2.2em;height:2.2em;-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-box-shadow:-1px -1px 0 0 rgba(0,0,0,.15)inset;box-shadow:-1px -1px 0 0 rgba(0,0,0,.15)inset}.ui.step,.ui.steps .step,.ui.steps .step:after{-webkit-transition:background-color .1s ease,opacity .1s ease,color .1s ease,-webkit-box-shadow .1s ease;-moz-transition:background-color .1s ease,opacity .1s ease,color .1s ease,box-shadow .1s ease;transition:background-color .1s ease,opacity .1s ease,color .1s ease,box-shadow .1s ease}.ui.vertical.steps{overflow:visible}.ui.vertical.steps .step{display:block;border-radius:0;padding:1em 2em}.ui.vertical.steps .step:first-child{padding:1em 2em;border-radius:0;border-top-left-radius:.3125rem;border-top-right-radius:.3125rem}.ui.vertical.steps .active.step:first-child{border-top-right-radius:0}.ui.vertical.steps .step:last-child{border-radius:0;border-bottom-left-radius:.3125rem;border-bottom-right-radius:.3125rem}.ui.vertical.steps .active.step:last-child{border-bottom-right-radius:0}.ui.vertical.steps .step:after{display:none}.ui.vertical.steps .active.step:after{display:block}.ui.vertical.steps .two.line.step{line-height:1.3}.ui.vertical.steps .two.line.active.step:after{position:absolute;z-index:2;content:'';top:0;right:-1.45em;background-color:transparent;border-bottom:2.35em solid transparent;border-left:1.55em solid #555;border-top:2.35em solid transparent;width:0;height:0;-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none}.ui.steps{cursor:pointer;display:inline-block;font-size:0;overflow:hidden;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1);box-shadow:0 0 0 1px rgba(0,0,0,.1);line-height:1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;border-radius:.3125rem}.ui.steps .step:first-child{padding-left:1.35em;border-radius:.3125em 0 0 .3125em}.ui.steps .step:last-child{border-radius:0 .3125em .3125em 0}.ui.steps .step:only-child{border-radius:.3125em}.ui.steps .step:last-child{margin-right:0}.ui.steps .step:last-child:after{display:none}.ui.step.hover,.ui.step:hover{background-color:#F7F7F7;color:rgba(0,0,0,.8)}.ui.step.hover::after,.ui.step:hover,.ui.steps .step.hover:after,.ui.steps .step:hover:after{background-color:#F7F7F7}.ui.step.down,.ui.step:active,.ui.steps .step.down,.ui.steps .step.down:after,.ui.steps .step:active,.ui.steps .step:active:after,.ui.steps.down::after,.ui.steps:active::after{background-color:#F0F0F0}.ui.active.step,.ui.steps .step.active{cursor:auto;background-color:#555;color:#FFF;font-weight:700}.ui.active.steps:after,.ui.steps .step.active:after{background-color:#555;-webkit-box-shadow:none;box-shadow:none}.ui.disabled.step,.ui.steps .disabled.step{cursor:auto;background-color:#FFF;color:#CBCBCB}.ui.disabled.step:after,.ui.steps .disabled.step:after{background-color:#FFF}.attached.ui.steps{margin:0;border-radius:.3125em .3125em 0 0}.attached.ui.steps .step:first-child{border-radius:.3125em 0 0}.attached.ui.steps .step:last-child{border-radius:0 .3125em 0 0}.bottom.attached.ui.steps{margin-top:-1px;border-radius:0 0 .3125em .3125em}.bottom.attached.ui.steps .step:first-child{border-radius:0 0 0 .3125em}.bottom.attached.ui.steps .step:last-child{border-radius:0 0 .3125em}.ui.eight.steps,.ui.five.steps,.ui.four.steps,.ui.one.steps,.ui.seven.steps,.ui.six.steps,.ui.three.steps,.ui.two.steps{display:block}.ui.one.steps>.step{width:100%}.ui.two.steps>.step{width:50%}.ui.three.steps>.step{width:33.333%}.ui.four.steps>.step{width:25%}.ui.five.steps>.step{width:20%}.ui.six.steps>.step{width:16.666%}.ui.seven.steps>.step{width:14.285%}.ui.eight.steps>.step{width:12.5%}.ui.small.step,.ui.small.steps .step{font-size:.8rem}.ui.step,.ui.steps .step{font-size:1rem}.ui.large.step,.ui.large.steps .step{font-size:1.25rem}.ui.accordion,.ui.accordion .accordion{width:600px;max-width:100%;font-size:1rem;border-radius:.3125em;background-color:#FFF;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1);box-shadow:0 0 0 1px rgba(0,0,0,.1)}.ui.accordion .accordion .title,.ui.accordion .title{cursor:pointer;margin:0;padding:.75em 1em;color:rgba(0,0,0,.6);border-top:1px solid rgba(0,0,0,.05);-webkit-transition:background-color .2s ease-out;-moz-transition:background-color .2s ease-out;transition:background-color .2s ease-out}.ui.accordion .accordion .title:first-child,.ui.accordion .title:first-child{border-top:none}.ui.accordion .accordion .content,.ui.accordion .content{display:none;margin:0;padding:1.3em 1em}.ui.accordion .accordion .title .dropdown.icon,.ui.accordion .title .dropdown.icon{display:inline-block;float:none;margin:0 .5em 0 0;-webkit-transition:-webkit-transform .2s ease,opacity .2s ease;-moz-transition:-moz-transform .2s ease,opacity .2s ease;transition:transform .2s ease,opacity .2s ease;-webkit-transform:rotate(0deg);-moz-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}.ui.accordion .accordion .title .dropdown.icon:before,.ui.accordion .title .dropdown.icon:before{content:'\f0da'}.ui.basic.accordion.menu{background-color:#FFF;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1);box-shadow:0 0 0 1px rgba(0,0,0,.1)}.ui.basic.accordion.menu .content,.ui.basic.accordion.menu .title{padding:0}.ui.basic.accordion{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.ui.basic.accordion .accordion .title,.ui.basic.accordion .title{background-color:transparent;border-top:none;padding-left:0;padding-right:0}.ui.basic.accordion .accordion .content,.ui.basic.accordion .content{padding:.5em 0}.ui.basic.accordion .accordion .active.title,.ui.basic.accordion .active.title{background-color:transparent}.ui.accordion .accordion .active.title,.ui.accordion .accordion .title:hover,.ui.accordion .active.title,.ui.accordion .title:hover{color:rgba(0,0,0,.8)}.ui.accordion .accordion .active.title,.ui.accordion .active.title{background-color:rgba(0,0,0,.1);color:rgba(0,0,0,.8)}.ui.accordion .accordion .active.title .dropdown.icon,.ui.accordion .active.title .dropdown.icon{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.ui.accordion .accordion .active.content,.ui.accordion .active.content{display:block}.ui.fluid.accordion,.ui.fluid.accordion .accordion{width:100%}.ui.chatroom{background-color:#F8F8F8;padding:0}.ui.chatroom .room{position:relative;background-color:#FFF;overflow:hidden;height:286px;border:1px solid rgba(0,0,0,.1);border-top:none;border-bottom:none}.ui.chatroom .room .loader{display:none;margin:-25px 0 0 -25px}.ui.chatroom .actions{overflow:hidden;background-color:#EEE;padding:4px;border:1px solid rgba(0,0,0,.1);border-radius:5px 5px 0 0}.ui.chatroom .actions .button{float:right;margin-left:3px}.ui.chatroom .actions .message{float:left;margin-left:6px;font-size:11px;color:#AAA;text-shadow:0 -1px 0 rgba(255,255,255,.8);line-height:28px}.ui.chatroom .actions .message .loader{display:inline-block;margin-right:8px}.ui.chatroom .log{float:left;overflow:auto;overflow-x:hidden;overflow-y:auto}.ui.chatroom .log .message{padding:3px 0;border-top:1px dotted #DADADA}.ui.chatroom .log .message:first-child{border-top:none}.ui.chatroom .status{padding:5px 0;color:#AAA;font-size:12px;font-style:italic;line-height:1.33;border-top:1px dotted #DADADA}.ui.chatroom .log .status:first-child{border-top:none}.ui.chatroom .log .flag{float:left}.ui.chatroom .log p{margin-left:0}.ui.chatroom .log .author{font-weight:700;-webkit-transition:color .3s ease-out;-moz-transition:color .3s ease-out;transition:color .3s ease-out}.ui.chatroom .log a.author:hover{opacity:.8}.ui.chatroom .log .message.admin p{font-weight:700;margin:1px 0 0 23px}.ui.chatroom .log .divider{margin:-1px 0;font-size:11px;padding:10px 0;border-top:1px solid #F8F8F8;border-bottom:1px solid #F8F8F8}.ui.chatroom .log .divider .rule{top:50%;width:15%}.ui.chatroom .log .divider .label{color:#777;margin:0}.ui.chatroom .room .list{position:relative;overflow:auto;overflow-x:hidden;overflow-y:auto;float:left;background-color:#EEE;border-left:1px solid #DDD}.ui.chatroom .room .list .user{display:table;padding:3px 7px;border-bottom:1px solid #DDD}.ui.chatroom .room .list .user:hover{background-color:#F8F8F8}.ui.chatroom .room .list .image{display:table-cell;vertical-align:middle;width:20px}.ui.chatroom .room .list .image img{width:20px;height:20px;vertical-align:middle}.ui.chatroom .room .list p{display:table-cell;vertical-align:middle;padding-left:7px;padding-right:14px;font-size:11px;line-height:1.2;font-weight:700}.ui.chatroom .room .list a:hover{opacity:.8}.ui.chatroom .talk{border:1px solid rgba(0,0,0,.1);padding:5px 0 0;background-color:#EEE;border-radius:0 0 5px 5px}.ui.chatroom .talk .avatar,.ui.chatroom .talk .button,.ui.chatroom .talk input{float:left}.ui.chatroom .talk .avatar img{display:block;width:30px;height:30px;margin-right:4px;border-radius:500rem}.ui.chatroom .talk input{border:1px solid #CCC;margin:0;width:196px;height:14px;padding:8px 5px;font-size:12px;color:#555}.ui.chatroom .talk input.focus{border:1px solid #AAA}.ui.chatroom .send{width:80px;height:32px;margin-left:-1px;padding:4px 12px;font-size:12px;line-height:23px;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1)inset;box-shadow:0 0 0 1px rgba(0,0,0,.1)inset;border-radius:0 5px 5px 0}.ui.chatroom .talk .log-in.button{display:block;float:none;margin-top:-6px;height:22px;border-radius:0 0 4px 4px}.ui.chatroom .talk .log-in.button i{vertical-align:text-top}.ui.chatroom .log .team.flag{width:18px}.ui.chatroom.loading .loader{display:block}.ui.chatroom{width:330px;height:370px}.ui.chatroom .room .container{width:3000px}.ui.chatroom .log{width:314px;height:278px;padding:4px 7px}.ui.chatroom .room .list{width:124px;height:278px;padding:4px 0}.ui.chatroom .room .list .user{width:110px}.ui.chatroom .talk{height:40px}.ui.checkbox{position:relative;display:inline-block;min-width:1em;min-height:1.25em;line-height:1em;outline:0;vertical-align:middle}.ui.checkbox input{position:absolute;top:0;left:0;opacity:0;outline:0}.ui.checkbox .box,.ui.checkbox label{cursor:pointer;padding-left:2em;outline:0}.ui.checkbox .box:before,.ui.checkbox label:before{position:absolute;top:0;line-height:1;width:1em;height:1em;left:0;content:'';border-radius:4px;background:#FFF;-webkit-transition:background-color .3s ease,-webkit-box-shadow .3s ease;-moz-transition:background-color .3s ease,box-shadow .3s ease;transition:background-color .3s ease,box-shadow .3s ease;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.2);box-shadow:0 0 0 1px rgba(0,0,0,.2)}.ui.checkbox .box:after,.ui.checkbox label:after{-ms-filter:"alpha(Opacity=0)";filter:alpha(opacity=0);opacity:0;content:'';position:absolute;background:0 0;border:.2em solid #333;border-top:none;border-right:none;-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg);top:.275em;left:.2em;width:.45em;height:.15em}.ui.checkbox label{display:block;color:rgba(0,0,0,.6);-webkit-transition:color .2s ease;-moz-transition:color .2s ease;transition:color .2s ease}.ui.checkbox input:focus~label,.ui.checkbox label:hover{color:rgba(0,0,0,.8)}.ui.checkbox~label{cursor:pointer;opacity:.85;vertical-align:middle}.ui.checkbox~label:hover{opacity:1}.ui.checkbox .box:hover::before,.ui.checkbox label:hover::before{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.3);box-shadow:0 0 0 1px rgba(0,0,0,.3)}.ui.checkbox .box:active::before,.ui.checkbox label:active::before{background-color:#F5F5F5}.ui.checkbox input:focus~.box:before,.ui.checkbox input:focus~label:before{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.3);box-shadow:0 0 0 1px rgba(0,0,0,.3)}.ui.checkbox input:checked~.box:after,.ui.checkbox input:checked~label:after{-ms-filter:"alpha(Opacity=100)";filter:alpha(opacity=100);opacity:1}.ui.checkbox input[disabled]~.box:after,.ui.checkbox input[disabled]~label,.ui.disabled.checkbox label,.ui.disabled.checkbox~.box:after{opacity:.4;color:rgba(0,0,0,.3)}.ui.radio.checkbox .box:before,.ui.radio.checkbox label:before{min-width:1em;height:1em;border-radius:500px;-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none}.ui.radio.checkbox .box:after,.ui.radio.checkbox label:after{border:none;top:.2em;left:.2em;width:.6em;height:.6em;background-color:#555;-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none;border-radius:500px}.ui.slider.checkbox{cursor:pointer;min-width:3em}.ui.slider.checkbox:after{position:absolute;top:.5em;left:0;content:'';width:3em;height:2px;background-color:rgba(0,0,0,.1)}.ui.slider.checkbox .box,.ui.slider.checkbox label{padding-left:4em}.ui.slider.checkbox .box:before,.ui.slider.checkbox label:before{cursor:pointer;display:block;position:absolute;top:-.25em;left:0;z-index:1;width:1.5em;height:1.5em;-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1)inset;box-shadow:0 0 0 1px rgba(0,0,0,.1)inset;border-radius:50rem;-webkit-transition:left .3s ease 0s;-moz-transition:left .3s ease 0s;transition:left .3s ease 0s}.ui.slider.checkbox .box:after,.ui.slider.checkbox label:after{opacity:1;position:absolute;content:'';top:.15em;left:0;z-index:2;margin-left:.375em;border:none;width:.75em;height:.75em;border-radius:50rem;-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none;-webkit-transition:background .3s ease 0s,left .3s ease 0s;-moz-transition:background .3s ease 0s,left .3s ease 0s;transition:background .3s ease 0s,left .3s ease 0s}.ui.slider.checkbox input:checked~.box:after,.ui.slider.checkbox input:checked~.box:before,.ui.slider.checkbox input:checked~label:after,.ui.slider.checkbox input:checked~label:before{left:1.75em}.ui.slider.checkbox .box:after,.ui.slider.checkbox label:after{background-color:#D95C5C}.ui.slider.checkbox input:checked~.box:after,.ui.slider.checkbox input:checked~label:after{background-color:#89B84C}.ui.toggle.checkbox{cursor:pointer}.ui.toggle.checkbox .box,.ui.toggle.checkbox label{padding-left:4em}.ui.toggle.checkbox .box:before,.ui.toggle.checkbox label:before{cursor:pointer;display:block;position:absolute;content:'';top:-.25em;left:0;z-index:1;background-color:#FFF;width:3em;height:1.5em;-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1)inset;box-shadow:0 0 0 1px rgba(0,0,0,.1)inset;border-radius:50rem}.ui.toggle.checkbox .box:after,.ui.toggle.checkbox label:after{opacity:1;-webkit-box-shadow:none;box-shadow:none;content:'';position:absolute;top:.15em;left:.5em;z-index:2;border:none;width:.75em;height:.75em;background-color:#D95C5C;border-radius:50rem;-webkit-transition:background .3s ease 0s,left .3s ease 0s;-moz-transition:background .3s ease 0s,left .3s ease 0s;transition:background .3s ease 0s,left .3s ease 0s}.ui.toggle.checkbox:active .box:before,.ui.toggle.checkbox:active label:before{background-color:#F5F5F5}.ui.toggle.checkbox input:checked~.box:after,.ui.toggle.checkbox input:checked~label:after{left:1.75em;background-color:#89B84C}.ui.checkbox{font-size:1em}.ui.large.checkbox{font-size:1.25em}.ui.huge.checkbox{font-size:1.5em}.ui.dimmable{position:relative}.ui.dimmer{display:none;position:absolute;top:0!important;left:0!important;width:0;height:0;text-align:center;vertical-align:middle;background-color:rgba(0,0,0,.85);opacity:0;line-height:1;-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.5s;-moz-animation-duration:.5s;animation-duration:.5s;-webkit-transition:background-color .5s linear;-moz-transition:background-color .5s linear;transition:background-color .5s linear;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;z-index:1000}.ui.dimmer>.content{width:100%;height:100%;display:table;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.ui.dimmer>.content>div{display:table-cell;vertical-align:middle;color:#FFF}.ui.horizontal.segment>.ui.dimmer,.ui.segment>.ui.dimmer,.ui.vertical.segment>.ui.dimmer{border-radius:5px}.ui.dimmed.dimmable:not(body){overflow:hidden}.ui.active.dimmer,.ui.dimmed.dimmable>.ui.animating.dimmer,.ui.dimmed.dimmable>.ui.visible.dimmer{display:block;width:100%;height:100%;opacity:1}.ui.disabled.dimmer{width:0!important;height:0!important}.ui.page.dimmer{position:fixed;-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-perspective:2000px;-moz-perspective:2000px;-ms-perspective:2000px;perspective:2000px;-webkit-transform-origin:center center;-moz-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center}.ui.scrolling.dimmable>.dimmer,.ui.scrolling.page.dimmer{position:absolute}.ui.dimmer>.top.aligned.content>*{vertical-align:top}.ui.dimmer>.bottom.aligned.content>*{vertical-align:bottom}.ui.inverted.dimmer{background-color:rgba(255,255,255,.85)}.ui.inverted.dimmer>.content>*{color:rgba(0,0,0,.8)}.ui.simple.dimmer{display:block;overflow:hidden;opacity:1;z-index:-100;background-color:rgba(0,0,0,0)}.ui.dimmed.dimmable>.ui.simple.dimmer{overflow:visible;opacity:1;width:100%;height:100%;background-color:rgba(0,0,0,.85);z-index:1}.ui.simple.inverted.dimmer{background-color:rgba(255,255,255,0)}.ui.dimmed.dimmable>.ui.simple.inverted.dimmer{background-color:rgba(255,255,255,.85)}.ui.dropdown{cursor:pointer;position:relative;display:inline-block;line-height:1;-webkit-transition:border-radius .1s ease,width .2s ease;-moz-transition:border-radius .1s ease,width .2s ease;transition:border-radius .1s ease,width .2s ease;-webkit-tap-highlight-color:rgba(0,0,0,0);-moz-tap-highlight-color:rgba(0,0,0,0);tap-highlight-color:rgba(0,0,0,0)}.ui.dropdown .menu{cursor:auto;position:absolute;display:none;top:100%;margin:0;background-color:#FFF;min-width:100%;white-space:nowrap;font-size:.875em;text-shadow:none;-webkit-box-shadow:0 0 1px 1px rgba(0,0,0,.1);box-shadow:0 0 1px 1px rgba(0,0,0,.1);border-radius:0 0 .325em .325em;-webkit-transition:opacity .2s ease;-moz-transition:opacity .2s ease;transition:opacity .2s ease;z-index:11}.ui.dropdown>.dropdown.icon{width:auto;margin:0 0 0 1em}.ui.dropdown>.dropdown.icon:before{content:"\f0d7"}.ui.dropdown .menu .item .dropdown.icon{width:auto;float:right;margin:0 0 0 .5em}.ui.dropdown .menu .item .dropdown.icon:before{content:"\f0da"}.ui.dropdown>.text{display:inline-block;-webkit-transition:color .2s ease;-moz-transition:color .2s ease;transition:color .2s ease}.ui.dropdown .menu{left:0}.ui.dropdown .menu .menu{top:0!important;left:100%!important;margin:0!important;border-radius:0 .325em .325em 0!important}.ui.dropdown .menu .menu:after{display:none}.ui.dropdown .menu .item{cursor:pointer;border:none;border-top:1px solid rgba(0,0,0,.05);height:auto;display:block;color:rgba(0,0,0,.75);padding:.85em 1em!important;font-size:.875rem;text-transform:none;font-weight:400;text-align:left;-webkit-touch-callout:none}.ui.dropdown .menu .item:before{display:none}.ui.dropdown .menu .item .icon{margin-right:.75em}.ui.dropdown .menu .item:first-child{border-top:none}.ui.buttons>.ui.dropdown:last-child .menu,.ui.menu .right.menu .dropdown:last-child .menu{left:auto;right:0}.ui.vertical.menu .dropdown.item>.dropdown.icon:before{content:"\f0da"}.ui.dropdown.icon.button>.dropdown.icon{margin:0}.ui.visible.dropdown>.menu{display:block}.ui.dropdown .menu .item:hover{background-color:rgba(0,0,0,.02);z-index:12}.ui.dropdown .menu .active.item{background-color:rgba(0,0,0,.06)!important;border-left:none;border-color:transparent!important;-moz-shadow:none;-webkit-box-shadow:none;box-shadow:none;z-index:12}.ui.default.dropdown>.text,.ui.dropdown>.default.text{color:rgba(0,0,0,.5)}.ui.default.dropdown:hover>.text,.ui.dropdown:hover>.default.text{color:rgba(0,0,0,.8)}.ui.dropdown.error,.ui.dropdown.error>.default.text,.ui.dropdown.error>.text{color:#D95C5C!important}.ui.selection.dropdown.error{background-color:snow;-webkit-box-shadow:0 0 0 1px #e7bebe!important;box-shadow:0 0 0 1px #e7bebe!important}.ui.selection.dropdown.error:hover{-webkit-box-shadow:0 0 0 1px #e7bebe!important;box-shadow:0 0 0 1px #e7bebe!important}.ui.dropdown.error>.menu,.ui.dropdown.error>.menu .menu{-webkit-box-shadow:0 0 1px 1px #E7BEBE!important;box-shadow:0 0 1px 1px #E7BEBE!important}.ui.dropdown.error>.menu .item{color:#D95C5C!important}.ui.dropdown.error>.menu .item:hover{background-color:#FFF2F2!important}.ui.dropdown.error>.menu .active.item{background-color:#FDCFCF!important}.ui.simple.dropdown .menu:after,.ui.simple.dropdown .menu:before{display:none}.ui.simple.dropdown .menu{display:block;overflow:hidden;top:-9999px!important;position:absolute;opacity:0;width:0;height:0;-webkit-transition:opacity .2s ease-out;-moz-transition:opacity .2s ease-out;transition:opacity .2s ease-out}.ui.simple.active.dropdown,.ui.simple.dropdown:hover{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.ui.simple.active.dropdown>.menu,.ui.simple.dropdown:hover>.menu{overflow:visible;width:auto;height:auto;top:100%!important;opacity:1}.ui.simple.dropdown:hover>.menu .item:hover>.menu,.ui.simple.dropdown>.menu .item:active>.menu{overflow:visible;width:auto;height:auto;top:0!important;left:100%!important;opacity:1}.ui.simple.disabled.dropdown:hover .menu{display:none;height:0;width:0;overflow:hidden}.ui.selection.dropdown{cursor:pointer;display:inline-block;word-wrap:break-word;white-space:normal;background-color:#FFF;padding:.65em 1em;line-height:1.33;color:rgba(0,0,0,.8);-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1)!important;box-shadow:0 0 0 1px rgba(0,0,0,.1)!important;border-radius:.3125em!important}.ui.selection.dropdown select{display:none}.ui.selection.dropdown>.dropdown.icon{opacity:.7;margin:.2em 0 .2em 1.25em;-webkit-transition:opacity .2s ease-out;-moz-transition:opacity .2s ease-out;transition:opacity .2s ease-out}.ui.selection.dropdown,.ui.selection.dropdown .menu{-webkit-transition:-webkit-box-shadow .2s ease-out;-moz-transition:box-shadow .2s ease-out;transition:box-shadow .2s ease-out}.ui.selection.dropdown .menu{top:100%;max-height:312px;overflow-x:hidden;overflow-y:auto;-webkit-box-shadow:0 1px 0 1px #E0E0E0;box-shadow:0 1px 0 1px #E0E0E0;border-radius:0 0 .325em .325em}.ui.selection.dropdown .menu:after,.ui.selection.dropdown .menu:before{display:none}.ui.selection.dropdown .menu img{height:2.5em;display:inline-block;vertical-align:middle;margin-right:.5em}.ui.visible.selection.dropdown{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.ui.active.selection.dropdown{border-radius:.3125em .3125em 0 0!important}.ui.active.selection.dropdown>.dropdown.icon{opacity:1}.ui.fluid.dropdown{display:block}.ui.fluid.dropdown>.dropdown.icon{float:right}.ui.inline.dropdown{cursor:pointer;display:inline-block;color:inherit}.ui.inline.dropdown .dropdown.icon{margin:0 .5em 0 .25em}.ui.inline.dropdown .text{font-weight:700}.ui.inline.dropdown .menu{cursor:auto;margin-top:.25em;border-radius:.325em}.ui.floating.dropdown .menu{left:0;right:auto;margin-top:.5em!important;border-radius:.325em}.ui.pointing.dropdown .menu{top:100%;margin-top:.75em;border-radius:.325em}.ui.pointing.dropdown .menu:after{display:block;position:absolute;pointer-events:none;content:" ";visibility:visible;width:.5em;height:.5em;-webkit-box-shadow:-1px -1px 0 1px rgba(0,0,0,.05);box-shadow:-1px -1px 0 1px rgba(0,0,0,.05);background-image:none;background-color:#FFF;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);z-index:2}.ui.pointing.dropdown .menu .active.item:first-child{background:transparent -webkit-linear-gradient(transparent,rgba(0,0,0,.03));background:transparent -moz-linear-gradient(transparent,rgba(0,0,0,.03));background:transparent linear-gradient(transparent,rgba(0,0,0,.03))}.ui.pointing.dropdown .menu:after{top:-.25em;left:50%;margin:0 0 0 -.25em}.ui.top.left.pointing.dropdown .menu{top:100%;bottom:auto;left:0;right:auto;margin:.75em 0 0}.ui.top.left.pointing.dropdown .menu:after{top:-.25em;left:1.25em;right:auto;margin:0;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.ui.top.right.pointing.dropdown .menu{top:100%;bottom:auto;right:0;left:auto;margin:.75em 0 0}.ui.top.right.pointing.dropdown .menu:after{top:-.25em;left:auto;right:1.25em;margin:0;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.ui.left.pointing.dropdown .menu{top:0;left:100%;right:auto;margin:0 0 0 .75em}.ui.left.pointing.dropdown .menu:after{top:1em;left:-.25em;margin:0;-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.ui.right.pointing.dropdown .menu{top:0;left:auto;right:100%;margin:0 .75em 0 0}.ui.right.pointing.dropdown .menu:after{top:1em;left:auto;right:-.25em;margin:0;-webkit-transform:rotate(135deg);-moz-transform:rotate(135deg);-ms-transform:rotate(135deg);transform:rotate(135deg)}.ui.modal{display:none;position:fixed;z-index:1001;top:50%;left:50%;text-align:left;width:90%;margin-left:-45%;background-color:#FFF;border:1px solid #DDD;border-radius:5px;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.ui.modal>.close{cursor:pointer;position:absolute;z-index:1;opacity:.8;font-size:1.25em;top:-1.75em;right:-1.75em;color:#FFF}.ui.modal>.close:hover{opacity:1}.ui.modal>.header{margin:0;padding:1.5rem 2rem;font-size:1.6em;font-weight:700;border-radius:.325em .325em 0 0}.ui.modal>.content{display:table;width:100%;position:relative;padding:2em;background-color:#F4F4F4;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.modal>.content>.left:not(.ui){display:table-cell;padding-right:1.5%;min-width:25%}.ui.modal>.content>.right:not(.ui){display:table-cell;padding-left:1.5%;vertical-align:top}.ui.modal>.content>.left:not(.ui)>i.icon{font-size:8em;margin:0}.ui.modal>.content p{line-height:1.6}.ui.modal .actions{padding:1rem 2rem;text-align:right}.ui.modal .actions>.button{margin-left:.75em}@media only screen and (max-width:768px){.ui.modal .content>.left:not(.ui){display:block;padding:0 0 1em}.ui.modal .content>.right:not(.ui){display:block;padding:1em 0 0;-webkit-box-shadow:none;box-shadow:none}.ui.modal .content .image{width:auto!important;max-width:100%}.ui.modal .actions{padding-bottom:0}.ui.modal .actions>.button,.ui.modal .actions>.buttons{margin-bottom:1em}}@media only screen and (max-width:998px){.ui.modal{width:92%;margin-left:-46%}.ui.modal>.close{color:rgba(0,0,0,.8);top:1.5rem;right:1rem}}@media only screen and (min-width:998px){.ui.modal{width:74%;margin-left:-37%}}@media only screen and (min-width:1500px){.ui.modal{width:56%;margin-left:-28%}}@media only screen and (min-width:1750px){.ui.modal{width:42%;margin-left:-21%}}@media only screen and (min-width:2000px){.ui.modal{width:36%;margin-left:-18%}}.ui.basic.modal{background-color:transparent;border:none;color:#FFF}.ui.basic.modal>.close{top:1.5rem;right:1rem}.ui.basic.modal .content{background-color:transparent}.ui.modal.scrolling{position:absolute;margin-top:10px}.ui.active.modal{display:block}.ui.small.modal>.header{font-size:1.3em}@media only screen and (min-width:998px){.ui.small.modal{width:58%;margin-left:-29%}}@media only screen and (min-width:1500px){.ui.small.modal{width:40%;margin-left:-20%}}@media only screen and (min-width:1750px){.ui.small.modal{width:26%;margin-left:-13%}}@media only screen and (min-width:2000px){.ui.small.modal{width:20%;margin-left:-10%}}@media only screen and (min-width:998px){.ui.large.modal{width:74%;margin-left:-37%}}@media only screen and (min-width:1500px){.ui.large.modal{width:64%;margin-left:-32%}}@media only screen and (min-width:1750px){.ui.large.modal{width:54%;margin-left:-27%}}@media only screen and (min-width:2000px){.ui.large.modal{width:44%;margin-left:-22%}}.ui.nag{display:none;opacity:.95;position:relative;top:0;left:0;z-index:101;min-height:0;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;margin:0;line-height:3em;padding:0 1em;background-color:#555;-webkit-box-shadow:0 1px 2px 0 rgba(0,0,0,.2);box-shadow:0 1px 2px 0 rgba(0,0,0,.2);font-size:1em;text-align:center;color:rgba(255,255,255,.8);border-radius:0 0 5px 5px;-webkit-transition:.2s background;-moz-transition:.2s background;transition:.2s background}a.ui.nag{cursor:pointer}.ui.nag>.title{display:inline-block;margin:0 .5em;color:#FFF}.ui.nag>.close.icon{cursor:pointer;opacity:.4;position:absolute;top:50%;right:1em;margin-top:-.5em;color:#FFF;-webkit-transition:.1s opacity;-moz-transition:.1s opacity;transition:.1s opacity}.ui.nag .close:hover,.ui.nag:hover{opacity:1}.ui.overlay.nag{position:absolute;display:block}.ui.fixed.nag{position:fixed}.ui.bottom.nag{border-radius:5px 5px 0 0}.ui.fixed.bottom.nag,.ui.fixed.bottom.nags{top:auto;bottom:0}.ui.white.nag,.ui.white.nags .nag{background-color:#F1F1F1;text-shadow:0 1px 0 rgba(255,255,255,.8);color:#ACACAC}.ui.white.nag .close,.ui.white.nag .title,.ui.white.nags .nag .close,.ui.white.nags .nag .title{color:#333}.ui.nags .nag{border-radius:0}.ui.popup{display:none;position:absolute;top:0;right:0;z-index:900;border:1px solid rgba(0,0,0,.1);max-width:250px;background-color:#FFF;padding:.8em 1.2em;font-size:.875rem;font-weight:400;font-style:normal;color:rgba(0,0,0,.7);border-radius:.2em;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.1);box-shadow:0 1px 2px rgba(0,0,0,.1)}.ui.popup .header{padding:0 0 .5em;font-size:1.125em;line-height:1.2;font-weight:700}.ui.popup:before{position:absolute;content:"";width:.75em;height:.75rem;background-image:none;background-color:#FFF;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);z-index:2;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:1px 1px 1px rgba(0,0,0,.1);box-shadow:1px 1px 1px rgba(0,0,0,.1)}.ui.popup .ui.button{width:100%}.ui.popup{margin:0}.ui.popup.bottom{margin:.75em 0 0}.ui.popup.top{margin:0 0 .75em}.ui.popup.left.center{margin:0 .75em 0 0}.ui.popup.right.center{margin:0 0 0 .75em}.ui.popup.center{margin-left:-1.25em}.ui.bottom.center.popup:before{margin-left:-.4em;top:-.4em;left:50%;right:auto;bottom:auto;-webkit-box-shadow:-1px -1px 1px rgba(0,0,0,.2);box-shadow:-1px -1px 1px rgba(0,0,0,.2)}.ui.bottom.left.popup{margin-right:-2em}.ui.bottom.left.popup:before{top:-.4em;right:1em;bottom:auto;left:auto;margin-left:0;-webkit-box-shadow:-1px -1px 1px rgba(0,0,0,.2);box-shadow:-1px -1px 1px rgba(0,0,0,.2)}.ui.bottom.right.popup{margin-left:-2em}.ui.bottom.right.popup:before{top:-.4em;left:1em;right:auto;bottom:auto;margin-left:0;-webkit-box-shadow:-1px -1px 1px rgba(0,0,0,.2);box-shadow:-1px -1px 1px rgba(0,0,0,.2)}.ui.top.center.popup:before{top:auto;right:auto;bottom:-.4em;left:50%;margin-left:-.4em}.ui.top.left.popup{margin-right:-2em}.ui.top.left.popup:before{bottom:-.4em;right:1em;top:auto;left:auto;margin-left:0}.ui.top.right.popup{margin-left:-2em}.ui.top.right.popup:before{bottom:-.4em;left:1em;top:auto;right:auto;margin-left:0}.ui.left.center.popup:before{top:50%;right:-.35em;bottom:auto;left:auto;margin-top:-.4em;-webkit-box-shadow:1px -1px 1px rgba(0,0,0,.2);box-shadow:1px -1px 1px rgba(0,0,0,.2)}.ui.right.center.popup:before{top:50%;left:-.35em;bottom:auto;right:auto;margin-top:-.4em;-webkit-box-shadow:-1px 1px 1px rgba(0,0,0,.2);box-shadow:-1px 1px 1px rgba(0,0,0,.2)}.ui.loading.popup{display:block;visibility:hidden}.ui.animating.popup,.ui.visible.popup{display:block}.ui.small.popup{font-size:.75rem}.ui.large.popup{font-size:1rem}.ui.inverted.popup{background-color:#333;border:none;color:#FFF;-webkit-box-shadow:none;box-shadow:none}.ui.inverted.popup .header{background-color:rgba(0,0,0,.2);color:#FFF}.ui.inverted.popup:before{background-color:#333;-webkit-box-shadow:none;box-shadow:none}.ui.rating{display:inline-block;font-size:0;vertical-align:middle;margin:0 .5rem 0 0}.ui.rating:last-child{margin-right:0}.ui.rating:before{display:block;content:'';visibility:hidden;clear:both;height:0}.ui.rating .icon{cursor:pointer;margin:0;width:1em;height:auto;padding:0;color:rgba(0,0,0,.15);font-weight:400;font-style:normal}.ui.rating .icon:before{content:"\2605"}.ui.star.rating .icon{width:1.2em}.ui.star.rating .icon:before{content:'\f006';font-family:Icons}.ui.star.rating .active.icon:before{content:'\f005';font-family:Icons}.ui.heart.rating .icon{width:1.2em}.ui.heart.rating .icon:before{content:'\f08a';font-family:Icons}.ui.heart.rating .active.icon:before{content:'\f004';font-family:Icons}.ui.heart.rating .active.icon{color:#EF404A!important}.ui.heart.rating .active.hover.icon,.ui.heart.rating .hover.icon{color:#FF2733!important}.ui.disabled.rating .icon{cursor:default}.ui.rating .active.icon{color:#FFCB08!important}.ui.rating.hover .active.icon{opacity:.5}.ui.rating .icon.hover,.ui.rating .icon.hover.active{opacity:1;color:#FFB70A!important}.ui.small.rating .icon{font-size:.75rem}.ui.rating .icon{font-size:1rem}.ui.large.rating .icon{font-size:1.5rem;vertical-align:middle}.ui.huge.rating .icon{font-size:2rem;vertical-align:middle}.ui.search{position:relative;text-shadow:none;font-style:normal;font-weight:400}.ui.search input{border-radius:500rem}.ui.search>.button{position:relative;z-index:2;float:right;margin:0 0 0 -15px;padding:6px 15px 7px;border-radius:0 15px 15px 0;-webkit-box-shadow:none;box-shadow:none}.ui.search .results{display:none;position:absolute;z-index:999;top:100%;left:0;overflow:hidden;background-color:#FFF;margin-top:.5em;width:380px;font-size:.875em;line-height:1.2;color:#555;border-radius:3px;-webkit-box-shadow:0 0 1px 1px rgba(0,0,0,.1),0 -2px 0 0 rgba(0,0,0,.1)inset;box-shadow:0 0 1px 1px rgba(0,0,0,.1),0 -2px 0 0 rgba(0,0,0,.1)inset}.ui.search .result{cursor:pointer;overflow:hidden;padding:.5em 1em}.ui.search .result:first-child{border-top:none}.ui.search .result .image{background:#F0F0F0;margin-right:10px;float:left;overflow:hidden;border-radius:3px;width:38px;height:38px}.ui.search .result .image img{display:block;width:38px;height:38px}.ui.search .result .image~.info{float:none;margin-left:50px}.ui.search .result .info{float:left}.ui.search .result .title{font-weight:700;color:rgba(0,0,0,.8)}.ui.search .result .description{color:rgba(0,0,0,.6)}.ui.search .result .price{float:right;color:#5BBD72;font-weight:700}.ui.search .message{padding:1em}.ui.search .message .text .title{margin:0 0 .5rem;font-size:1.25rem;font-weight:700;color:rgba(0,0,0,.8)}.ui.search .message .text .description{margin:0;font-size:1rem;color:rgba(0,0,0,.5)}.ui.search .results .category{background-color:#FAFAFA;border-top:1px solid rgba(0,0,0,.1);-webkit-transition:background .2s ease-in;-moz-transition:background .2s ease-in;transition:background .2s ease-in}.ui.search .results .category:first-child{border-top:none}.ui.search .results .category>.name{float:left;padding:12px 0 0 8px;font-weight:700;color:#777;text-shadow:0 1px 0 rgba(255,255,255,.8)}.ui.search .results .category .result{background-color:#FFF;margin-left:80px;border-left:1px solid rgba(0,0,0,.1)}.ui.search .all{display:block;border-top:1px solid rgba(0,0,0,.1);background-color:#FAFAFA;height:2em;line-height:2em;color:rgba(0,0,0,.6);font-weight:700;text-align:center}.ui.search .category .result:hover,.ui.search .result:hover{background-color:#F8F8F8}.ui.search .all:hover{background-color:#F0F0F0}.ui.search.loading .input .icon{background:url(../images/loader-mini.gif) no-repeat 50% 50%}.ui.search.loading .input .icon:after,.ui.search.loading .input .icon:before{display:none}.ui.search .results .category.active{background-color:#F1F1F1}.ui.search .results .category.active>.name{color:#333}.ui.search .category .result.active,.ui.search .result.active{background-color:#FBFBFB}.ui.search .result.active .title{color:#000}.ui.search .result.active .description{color:#555}.ui.search .large.result .image,.ui.search .large.result .image img{width:50px;height:50px}.ui.search .large.results .indented.info{margin-left:65px}.ui.search .large.results .info .title{font-size:16px}.ui.search .large.results .info .description{font-size:11px}.ui.shape{display:inline-block;position:relative;-webkit-perspective:2000px;-moz-perspective:2000px;-ms-perspective:2000px;perspective:2000px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.shape .sides{-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;transform-style:preserve-3d}.ui.shape .side{opacity:1;width:100%;margin:0!important;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;backface-visibility:hidden;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;display:none}.ui.cube.shape .side{min-width:15em;height:15em;padding:2em;background-color:#E6E6E6;color:rgba(0,0,0,.6);-webkit-box-shadow:0 0 2px rgba(0,0,0,.3);box-shadow:0 0 2px rgba(0,0,0,.3)}.ui.cube.shape .side>.content{width:100%;height:100%;display:table;text-align:center;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.ui.cube.shape .side>.content>div{display:table-cell;vertical-align:middle;font-size:2em}.ui.text.shape.animating .sides{position:static}.ui.text.shape .side{white-space:nowrap}.ui.text.shape .side>*{white-space:normal}.ui.loading.shape{position:absolute;top:-9999px;left:-9999px}.ui.shape .animating.side{position:absolute;top:0;left:0;z-index:100}.ui.shape .hidden.side{opacity:.4}.ui.shape.animating{-webkit-transition:all .6s ease-in-out;-moz-transition:all .6s ease-in-out;transition:all .6s ease-in-out}.ui.shape.animating .sides{position:absolute;-webkit-transition:all .6s ease-in-out;-moz-transition:all .6s ease-in-out;transition:all .6s ease-in-out}.ui.shape.animating .side{-webkit-transition:opacity .6s ease-in-out;-moz-transition:opacity .6s ease-in-out;transition:opacity .6s ease-in-out}.ui.shape .active.side{display:block}body{-webkit-transition:margin .3s ease,-webkit-transform .3s ease;-moz-transition:margin .3s ease,-moz-transform .3s ease;transition:margin .3s ease,transform .3s ease}.ui.sidebar{position:fixed;margin:0!important;height:100%!important;border-radius:0!important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;-ms-overflow-y:auto;overflow-y:auto;top:0;left:0;z-index:999;-webkit-transition:margin-left .3s ease,margin-top .3s ease;-moz-transition:margin-left .3s ease,margin-top .3s ease;transition:margin-left .3s ease,margin-top .3s ease}body.pushed.scrolling.ui.dimmable{position:static}.ui.right.sidebar,.ui.right.thin.sidebar,.ui.right.very.thin.sidebar,.ui.right.very.wide.sidebar,.ui.right.wide.sidebar{left:100%;margin:0!important}.ui.top.sidebar{width:100%!important}.ui.bottom.sidebar{width:100%!important;top:100%;margin:0!important}.ui.active.bottom.sidebar,.ui.active.top.sidebar{margin-top:0!important}.ui.styled.sidebar{padding:1em 1.5em;background-color:#FFF;-webkit-box-shadow:1px 0 0 rgba(0,0,0,.1);box-shadow:1px 0 0 rgba(0,0,0,.1)}.ui.styled.very.thin.sidebar{padding:.5em}.ui.styled.thin.sidebar{padding:1em}.ui.floating.sidebar{-webkit-box-shadow:2px 0 2px rgba(0,0,0,.2);box-shadow:2px 0 2px rgba(0,0,0,.2)}.ui.right.floating.sidebar{-webkit-box-shadow:-2px 0 2px rgba(0,0,0,.2);box-shadow:-2px 0 2px rgba(0,0,0,.2)}.ui.top.floating.sidebar{-webkit-box-shadow:0 4px 4px rgba(0,0,0,.2);box-shadow:0 4px 4px rgba(0,0,0,.2)}.ui.bottom.floating.sidebar{-webkit-box-shadow:0 -4px 4px rgba(0,0,0,.2);box-shadow:0 -4px 4px rgba(0,0,0,.2)}.ui.very.thin.sidebar{width:60px!important;margin-left:-60px!important}.ui.active.very.thin.sidebar{margin-left:0!important}.ui.active.right.very.thin.sidebar{margin-left:-60px!important}.ui.thin.sidebar{width:200px!important;margin-left:-200px!important}.ui.active.thin.sidebar{margin-left:0!important}.ui.active.right.thin.sidebar{margin-left:-200px!important}.ui.sidebar{width:275px!important;margin-left:-275px!important}.ui.active.sidebar{margin-left:0!important}.ui.active.right.sidebar{margin-left:-275px!important}.ui.wide.sidebar{width:350px!important;margin-left:-350px!important}.ui.active.wide.sidebar{margin-left:0!important}.ui.active.right.wide.sidebar{margin-left:-350px!important}.ui.very.wide.sidebar{width:475px!important;margin-left:-475px!important}.ui.active.very.wide.sidebar{margin-left:0!important}.ui.active.right.very.wide.sidebar{margin-left:-475px!important}.ui.top.sidebar{margin:-40px 0 0 0!important}.ui.bottom.sidebar,.ui.top.sidebar{height:40px!important}.ui.active.bottom.sidebar{margin-top:-40px!important}.ui.tab{display:none}.ui.tab.active,.ui.tab.open{display:block}.ui.tab.loading{position:relative;overflow:hidden;display:block;min-height:250px;text-indent:-10000px}.ui.tab.loading *{position:relative!important;left:-10000px!important}.ui.tab.loading:after{position:absolute;top:50px;left:50%;content:'Loading...';margin-left:-32px;text-indent:5px;color:rgba(0,0,0,.4);width:100%;height:100%;padding-top:75px;background:url(../images/loader-large.gif) no-repeat 0 0;visibility:visible}.ui.transition{-webkit-animation-iteration-count:1;-moz-animation-iteration-count:1;animation-iteration-count:1;-webkit-animation-duration:1s;-moz-animation-duration:1s;animation-duration:1s;-webkit-animation-timing-function:ease;-moz-animation-timing-function:ease;animation-timing-function:ease;-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;animation-fill-mode:both}.ui.animating.transition{display:block;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-ms-transform:translateZ(0);transform:translateZ(0)}.ui.loading.transition{position:absolute;top:-999999px;left:-99999px}.ui.hidden.transition{display:none!important}.ui.visible.transition{display:block;visibility:visible}.ui.disabled.transition{-webkit-animation-play-state:paused;-moz-animation-play-state:paused;animation-play-state:paused}.ui.looping.transition{-webkit-animation-iteration-count:infinite;-moz-animation-iteration-count:infinite;animation-iteration-count:infinite}.ui.flash.transition{-webkit-animation-name:flash;-moz-animation-name:flash;animation-name:flash}.ui.shake.transition{-webkit-animation-name:shake;-moz-animation-name:shake;animation-name:shake}.ui.bounce.transition{-webkit-animation-name:bounce;-moz-animation-name:bounce;animation-name:bounce}.ui.tada.transition{-webkit-animation-name:tada;-moz-animation-name:tada;animation-name:tada}.ui.pulse.transition{-webkit-animation-name:pulse;-moz-animation-name:pulse;animation-name:pulse}.ui.flip.transition.in,.ui.flip.transition.out{-webkit-perspective:2000px;-moz-perspective:2000px;-ms-perspective:2000px;perspective:2000px}.ui.horizontal.flip.transition.in,.ui.horizontal.flip.transition.out{-webkit-animation-name:horizontalFlip;-moz-animation-name:horizontalFlip;animation-name:horizontalFlip}.ui.horizontal.flip.transition.out{-webkit-animation-name:horizontalFlipOut;-moz-animation-name:horizontalFlipOut;animation-name:horizontalFlipOut}.ui.vertical.flip.transition.in,.ui.vertical.flip.transition.out{-webkit-animation-name:verticalFlip;-moz-animation-name:verticalFlip;animation-name:verticalFlip}.ui.vertical.flip.transition.out{-webkit-animation-name:verticalFlipOut;-moz-animation-name:verticalFlipOut;animation-name:verticalFlipOut}.ui.fade.transition.in{-webkit-animation-name:fade;-moz-animation-name:fade;animation-name:fade}.ui.fade.transition.out{-webkit-animation-name:fadeOut;-moz-animation-name:fadeOut;animation-name:fadeOut}.ui.fade.up.transition.in{-webkit-animation-name:fadeUp;-moz-animation-name:fadeUp;animation-name:fadeUp}.ui.fade.up.transition.out{-webkit-animation-name:fadeUpOut;-moz-animation-name:fadeUpOut;animation-name:fadeUpOut}.ui.fade.down.transition.in{-webkit-animation-name:fadeDown;-moz-animation-name:fadeDown;animation-name:fadeDown}.ui.fade.down.transition.out{-webkit-animation-name:fadeDownOut;-moz-animation-name:fadeDownOut;animation-name:fadeDownOut}.ui.scale.transition.in{-webkit-animation-name:scale;-moz-animation-name:scale;animation-name:scale}.ui.scale.transition.out{-webkit-animation-name:scaleOut;-moz-animation-name:scaleOut;animation-name:scaleOut}.ui.slide.down.transition.in{-webkit-animation-name:slide;-moz-animation-name:slide;animation-name:slide;-moz-transform-origin:50% 0;transform-origin:50% 0;-ms-transform-origin:50% 0;-webkit-transform-origin:50% 0}.ui.slide.down.transition.out{-webkit-animation-name:slideOut;-moz-animation-name:slideOut;animation-name:slideOut;-webkit-transform-origin:50% 0;-moz-transform-origin:50% 0;-ms-transform-origin:50% 0;transform-origin:50% 0}.ui.slide.up.transition.in{-webkit-animation-name:slide;-moz-animation-name:slide;animation-name:slide;-webkit-transform-origin:50% 100%;-moz-transform-origin:50% 100%;-ms-transform-origin:50% 100%;transform-origin:50% 100%}.ui.slide.up.transition.out{-webkit-animation-name:slideOut;-moz-animation-name:slideOut;animation-name:slideOut;-webkit-transform-origin:50% 100%;-moz-transform-origin:50% 100%;-ms-transform-origin:50% 100%;transform-origin:50% 100%}@-webkit-keyframes slide{0%{opacity:0;-webkit-transform:scaleY(0);transform:scaleY(0)}100%{opacity:1;-webkit-transform:scaleY(1);transform:scaleY(1)}}@-moz-keyframes slide{0%{opacity:0;-moz-transform:scaleY(0);transform:scaleY(0)}100%{opacity:1;-moz-transform:scaleY(1);transform:scaleY(1)}}@keyframes slide{0%{opacity:0;-webkit-transform:scaleY(0);-moz-transform:scaleY(0);transform:scaleY(0)}100%{opacity:1;-webkit-transform:scaleY(1);-moz-transform:scaleY(1);transform:scaleY(1)}}@-webkit-keyframes slideOut{0%{opacity:1;-webkit-transform:scaleY(1);transform:scaleY(1)}100%{opacity:0;-webkit-transform:scaleY(0);transform:scaleY(0)}}@-moz-keyframes slideOut{0%{opacity:1;-moz-transform:scaleY(1);transform:scaleY(1)}100%{opacity:0;-moz-transform:scaleY(0);transform:scaleY(0)}}@keyframes slideOut{0%{opacity:1;-webkit-transform:scaleY(1);-moz-transform:scaleY(1);transform:scaleY(1)}100%{opacity:0;-webkit-transform:scaleY(0);-moz-transform:scaleY(0);transform:scaleY(0)}}@-webkit-keyframes flash{0%,100%,50%{opacity:1}25%,75%{opacity:0}}@-moz-keyframes flash{0%,100%,50%{opacity:1}25%,75%{opacity:0}}@keyframes flash{0%,100%,50%{opacity:1}25%,75%{opacity:0}}@-webkit-keyframes shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);transform:translateX(10px)}}@-moz-keyframes shake{0%,100%{-moz-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-moz-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-moz-transform:translateX(10px);transform:translateX(10px)}}@keyframes shake{0%,100%{-webkit-transform:translateX(0);-moz-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);-moz-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);-moz-transform:translateX(10px);transform:translateX(10px)}}@-webkit-keyframes bounce{0%,100%,20%,50%,80%{-webkit-transform:translateY(0);transform:translateY(0)}40%{-webkit-transform:translateY(-30px);transform:translateY(-30px)}60%{-webkit-transform:translateY(-15px);transform:translateY(-15px)}}@-moz-keyframes bounce{0%,100%,20%,50%,80%{-moz-transform:translateY(0);transform:translateY(0)}40%{-moz-transform:translateY(-30px);transform:translateY(-30px)}60%{-moz-transform:translateY(-15px);transform:translateY(-15px)}}@keyframes bounce{0%,100%,20%,50%,80%{-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}40%{-webkit-transform:translateY(-30px);-moz-transform:translateY(-30px);transform:translateY(-30px)}60%{-webkit-transform:translateY(-15px);-moz-transform:translateY(-15px);transform:translateY(-15px)}}@-webkit-keyframes tada{0%{-webkit-transform:scale(1);transform:scale(1)}10%,20%{-webkit-transform:scale(0.9) rotate(-3deg);transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-webkit-transform:scale(1.1) rotate(3deg);transform:scale(1.1) rotate(3deg)}40%,60%,80%{-webkit-transform:scale(1.1) rotate(-3deg);transform:scale(1.1) rotate(-3deg)}100%{-webkit-transform:scale(1) rotate(0);transform:scale(1) rotate(0)}}@-moz-keyframes tada{0%{-moz-transform:scale(1);transform:scale(1)}10%,20%{-moz-transform:scale(0.9) rotate(-3deg);transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-moz-transform:scale(1.1) rotate(3deg);transform:scale(1.1) rotate(3deg)}40%,60%,80%{-moz-transform:scale(1.1) rotate(-3deg);transform:scale(1.1) rotate(-3deg)}100%{-moz-transform:scale(1) rotate(0);transform:scale(1) rotate(0)}}@keyframes tada{0%{-webkit-transform:scale(1);-moz-transform:scale(1);transform:scale(1)}10%,20%{-webkit-transform:scale(0.9) rotate(-3deg);-moz-transform:scale(0.9) rotate(-3deg);transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-webkit-transform:scale(1.1) rotate(3deg);-moz-transform:scale(1.1) rotate(3deg);transform:scale(1.1) rotate(3deg)}40%,60%,80%{-webkit-transform:scale(1.1) rotate(-3deg);-moz-transform:scale(1.1) rotate(-3deg);transform:scale(1.1) rotate(-3deg)}100%{-webkit-transform:scale(1) rotate(0);-moz-transform:scale(1) rotate(0);transform:scale(1) rotate(0)}}@-webkit-keyframes pulse{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}50%{-webkit-transform:scale(0.9);transform:scale(0.9);opacity:.7}100%{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@-moz-keyframes pulse{0%{-moz-transform:scale(1);transform:scale(1);opacity:1}50%{-moz-transform:scale(0.9);transform:scale(0.9);opacity:.7}100%{-moz-transform:scale(1);transform:scale(1);opacity:1}}@keyframes pulse{0%{-webkit-transform:scale(1);-moz-transform:scale(1);transform:scale(1);opacity:1}50%{-webkit-transform:scale(0.9);-moz-transform:scale(0.9);transform:scale(0.9);opacity:.7}100%{-webkit-transform:scale(1);-moz-transform:scale(1);transform:scale(1);opacity:1}}@-webkit-keyframes horizontalFlip{0%{-webkit-transform:rotateY(-90deg);transform:rotateY(-90deg);opacity:0}100%{-webkit-transform:rotateY(0deg);transform:rotateY(0deg);opacity:1}}@-moz-keyframes horizontalFlip{0%{-moz-transform:rotateY(-90deg);transform:rotateY(-90deg);opacity:0}100%{-moz-transform:rotateY(0deg);transform:rotateY(0deg);opacity:1}}@keyframes horizontalFlip{0%{-webkit-transform:rotateY(-90deg);-moz-transform:rotateY(-90deg);transform:rotateY(-90deg);opacity:0}100%{-webkit-transform:rotateY(0deg);-moz-transform:rotateY(0deg);transform:rotateY(0deg);opacity:1}}@-webkit-keyframes horizontalFlipOut{0%{-webkit-transform:rotateY(0deg);transform:rotateY(0deg);opacity:1}100%{-webkit-transform:rotateY(90deg);transform:rotateY(90deg);opacity:0}}@-moz-keyframes horizontalFlipOut{0%{-moz-transform:rotateY(0deg);transform:rotateY(0deg);opacity:1}100%{-moz-transform:rotateY(90deg);transform:rotateY(90deg);opacity:0}}@keyframes horizontalFlipOut{0%{-webkit-transform:rotateY(0deg);-moz-transform:rotateY(0deg);transform:rotateY(0deg);opacity:1}100%{-webkit-transform:rotateY(90deg);-moz-transform:rotateY(90deg);transform:rotateY(90deg);opacity:0}}@-webkit-keyframes verticalFlip{0%{-webkit-transform:rotateX(-90deg);transform:rotateX(-90deg);opacity:0}100%{-webkit-transform:rotateX(0deg);transform:rotateX(0deg);opacity:1}}@-moz-keyframes verticalFlip{0%{-moz-transform:rotateX(-90deg);transform:rotateX(-90deg);opacity:0}100%{-moz-transform:rotateX(0deg);transform:rotateX(0deg);opacity:1}}@keyframes verticalFlip{0%{-webkit-transform:rotateX(-90deg);-moz-transform:rotateX(-90deg);transform:rotateX(-90deg);opacity:0}100%{-webkit-transform:rotateX(0deg);-moz-transform:rotateX(0deg);transform:rotateX(0deg);opacity:1}}@-webkit-keyframes verticalFlipOut{0%{-webkit-transform:rotateX(0deg);transform:rotateX(0deg);opacity:1}100%{-webkit-transform:rotateX(-90deg);transform:rotateX(-90deg);opacity:0}}@-moz-keyframes verticalFlipOut{0%{-moz-transform:rotateX(0deg);transform:rotateX(0deg);opacity:1}100%{-moz-transform:rotateX(-90deg);transform:rotateX(-90deg);opacity:0}}@keyframes verticalFlipOut{0%{-webkit-transform:rotateX(0deg);-moz-transform:rotateX(0deg);transform:rotateX(0deg);opacity:1}100%{-webkit-transform:rotateX(-90deg);-moz-transform:rotateX(-90deg);transform:rotateX(-90deg);opacity:0}}@-webkit-keyframes fade{0%{opacity:0}100%{opacity:1}}@-moz-keyframes fade{0%{opacity:0}100%{opacity:1}}@keyframes fade{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@-moz-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@-webkit-keyframes fadeUp{0%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes fadeUp{0%{opacity:0;-moz-transform:translateY(20px);transform:translateY(20px)}100%{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes fadeUp{0%{opacity:0;-webkit-transform:translateY(20px);-moz-transform:translateY(20px);transform:translateY(20px)}100%{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes fadeUpOut{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}}@-moz-keyframes fadeUpOut{0%{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-moz-transform:translateY(20px);transform:translateY(20px)}}@keyframes fadeUpOut{0%{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(20px);-moz-transform:translateY(20px);transform:translateY(20px)}}@-webkit-keyframes fadeDown{0%{opacity:0;-webkit-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-moz-keyframes fadeDown{0%{opacity:0;-moz-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}}@keyframes fadeDown{0%{opacity:0;-webkit-transform:translateY(-20px);-moz-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes fadeDownOut{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-20px);transform:translateY(-20px)}}@-moz-keyframes fadeDownOut{0%{opacity:1;-moz-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-moz-transform:translateY(-20px);transform:translateY(-20px)}}@keyframes fadeDownOut{0%{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-20px);-moz-transform:translateY(-20px);transform:translateY(-20px)}}@-webkit-keyframes scale{0%{opacity:0;-webkit-transform:scale(0.7);transform:scale(0.7)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@-moz-keyframes scale{0%{opacity:0;-moz-transform:scale(0.7);transform:scale(0.7)}100%{opacity:1;-moz-transform:scale(1);transform:scale(1)}}@keyframes scale{0%{opacity:0;-webkit-transform:scale(0.7);-moz-transform:scale(0.7);transform:scale(0.7)}100%{opacity:1;-webkit-transform:scale(1);-moz-transform:scale(1);transform:scale(1)}}@-webkit-keyframes scaleOut{0%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}100%{opacity:0;-webkit-transform:scale(0.7);transform:scale(0.7)}}@-moz-keyframes scaleOut{0%{opacity:1;-moz-transform:scale(1);transform:scale(1)}100%{opacity:0;-moz-transform:scale(0.7);transform:scale(0.7)}}@keyframes scaleOut{0%{opacity:1;-webkit-transform:scale(1);-moz-transform:scale(1);transform:scale(1)}100%{opacity:0;-webkit-transform:scale(0.7);-moz-transform:scale(0.7);transform:scale(0.7)}}.ui.video{position:relative;max-width:100%}.ui.video .placeholder{background-color:#333}.ui.video .play{cursor:pointer;position:absolute;top:0;left:0;z-index:10;width:100%;height:100%;-ms-filter:"alpha(Opacity=60)";filter:alpha(opacity=60);opacity:.6;-webkit-transition:opacity .3s;-moz-transition:opacity .3s;transition:opacity .3s}.ui.video .play.icon:before{position:absolute;top:50%;left:50%;z-index:11;font-size:6rem;margin:-3rem 0 0 -3rem;color:#FFF;text-shadow:0 3px 3px rgba(0,0,0,.4)}.ui.video .placeholder{display:block;width:100%;height:100%}.ui.video .embed{display:none}.ui.video .play:hover{opacity:1}.ui.video.active .placeholder,.ui.video.active .play{display:none}.ui.video.active .embed{display:block}.ui.comments a{cursor:pointer}.ui.comments .comment{position:relative;margin-top:.5em;padding-top:.5em}.ui.comments .comment:first-child{margin-top:0;padding-top:0}.ui.comments .comment .avatar{display:block;float:left;width:4em}.ui.comments .comment .avatar img{display:block;margin:0 auto;width:3em;height:3em;border-radius:500px}.ui.comments .comment>.avatar,.ui.comments .comment>.content{display:block}.ui.comments .comment .avatar~.content{padding:0 1em}.ui.comments .comment>.avatar~.content{padding-top:.25em;margin-left:3.5em}.ui.comments .comment .metadata{display:inline-block;margin-left:.3em;color:rgba(0,0,0,.4)}.ui.comments .comment .metadata>*{display:inline-block;margin:0 .3em 0 0}.ui.comments .comment .text{margin:.25em 0 .5em;word-wrap:break-word}.ui.comments .comment .actions{font-size:.9em}.ui.comments .comment .actions a{display:inline-block;margin:0 .3em 0 0;color:rgba(0,0,0,.3)}.ui.comments .comment .actions a.active,.ui.comments .comment .actions a:hover{color:rgba(0,0,0,.6)}.ui.comments .reply.form{margin-top:.75em;width:100%;max-width:30em}.ui.comments .comment .reply.form{margin-left:2em}.ui.comments>.reply.form{margin-top:1.5em;max-width:40em}.ui.comments .reply.form textarea{height:12em}.ui.comments .comment .comments{margin-top:.5em;padding-top:.5em;padding-bottom:1em}.ui.comments .comment .comments:before{position:absolute;top:0;left:0}.ui.comments>.comment .comments{margin-left:2em}.ui.comments>.comment>.comments>.comment>.comments{margin-left:1.75em}.ui.comments>.comment>.comments>.comment>.comments>.comment>.comments{margin-left:1.5em}.ui.comments>.comment>.comments>.comment>.comments>.comment>.comments>.comment .comments{margin-left:.5em}.ui.threaded.comments .comment .comments{margin-left:2em!important;padding-left:2em!important;-webkit-box-shadow:-1px 0 0 rgba(0,0,0,.05);box-shadow:-1px 0 0 rgba(0,0,0,.05)}.ui.minimal.comments .comment .actions{opacity:0;-webkit-transition:opacity .1s ease-out;-moz-transition:opacity .1s ease-out;transition:opacity .1s ease-out;-webkit-transition-delay:.1s;-moz-transition-delay:.1s;transition-delay:.1s}.ui.minimal.comments .comment>.content:hover>.actions{opacity:1}.ui.small.comments{font-size:.875em}.ui.feed a{cursor:pointer}.ui.feed,.ui.feed .content,.ui.feed .event,.ui.feed .extra,.ui.feed .label{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.feed .event{width:100%;display:table}.ui.feed .event:first-child{border-top:0}.ui.feed .event:last-child{margin-bottom:1em}.ui.feed .label{width:3em;display:table-cell;vertical-align:top;text-align:left}.ui.feed .label .icon{font-size:1.5em;padding:.5em;margin:0}.ui.feed .label img{width:3em;margin:0;border-radius:50em}.ui.feed .label+.content{padding:.75em 1em 0}.ui.feed .content{display:table-cell;vertical-align:top;text-align:left;word-wrap:break-word}.ui.feed .content .date{float:right;padding-left:1em;color:rgba(0,0,0,.4)}.ui.feed .content .summary{color:rgba(0,0,0,.75)}.ui.feed .content .summary img{display:inline-block;margin-right:.25em;width:4em;border-radius:500px}.ui.feed .content .extra{margin:1em 0 0;padding:.5em 0 0;color:rgba(0,0,0,.5)}.ui.feed .content .extra.images img{display:inline-block;margin-right:.25em;width:6em}.ui.feed .content .extra.text{padding:.5em 1em;border-left:.2em solid rgba(0,0,0,.1)}.ui.small.feed{font-size:.875em}.ui.small.feed .label img{width:2.5em}.ui.small.feed .label .icon{font-size:1.25em}.ui.feed .event{padding:.75em 0}.ui.small.feed .label+.content{padding:.5em .5em 0}.ui.small.feed .content .extra.images img{width:5em}.ui.small.feed .content .extra{margin:.5em 0 0}.ui.small.feed .content .extra.text{padding:.25em .5em}.ui.items{margin:1em 0 0}.ui.items:first-child{margin-top:0}.ui.items:last-child{margin-bottom:-1em}.ui.items:after{display:block;content:' ';height:0;clear:both;overflow:hidden;visibility:hidden}.ui.items>.item,.ui.items>.row>.item{display:block;float:left;position:relative;top:0;width:316px;min-height:375px;margin:0 .5em 2.5em;background-color:#FFF;line-height:1.2;font-size:1em;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1);box-shadow:0 0 0 1px rgba(0,0,0,.1);border-bottom:.2em solid rgba(0,0,0,.2);border-radius:.33em;-webkit-transition:-webkit-box-shadow .2s ease;-moz-transition:box-shadow .2s ease;transition:box-shadow .2s ease;padding:.5em}.ui.items .item a,.ui.items a.item{cursor:pointer}.ui.items .item,.ui.items .item>.content,.ui.items .item>.content>.extra,.ui.items .item>.content>.meta,.ui.items .item>.image,.ui.items .item>.image .overlay{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.ui.items .item>.image{display:block;position:relative;background-color:rgba(0,0,0,.05);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;border-radius:.2em}.ui.items .item>.image>img{display:block;width:100%}.ui.items .item>.content{padding:.75em .5em}.ui.items .item>.content>.name{display:block;font-size:1.25em;font-weight:700;margin-bottom:.2em;color:rgba(0,0,0,.7)}.ui.items .item>.content>.description{clear:both;margin:0;color:rgba(0,0,0,.45)}.ui.items .item>.content>.description p{margin:0 0 .2em}.ui.items .item>.content>.description p:last-child{margin-bottom:0}.ui.items .item .meta{float:right;color:rgba(0,0,0,.35)}.ui.items .item>.content>.meta+.name{float:left}.ui.items .item .star.label:hover::after{border-right-color:#F6EFC3;border-top-color:#F6EFC3}.ui.items .item .star.label:hover .icon{color:#ac9400}.ui.items .item .star.label.active::after{border-right-color:#F6EFC3;border-top-color:#F6EFC3}.ui.items .item .star.label.active .icon{color:#ac9400}.ui.items .item .like.label:hover::after{border-right-color:#F5E1E2}.ui.items .item .like.label:hover .icon{color:#ef404a}.ui.items .item .like.label.active::after{border-right-color:#F5E1E2;border-top-color:#F5E1E2}.ui.items .item .like.label.active .icon{color:#ef404a}.ui.items .item .extra{position:absolute;width:100%;padding:0 .5em;bottom:-2em;left:0;height:1.5em;color:rgba(0,0,0,.25);-webkit-transition:color .2s ease;-moz-transition:color .2s ease;transition:color .2s ease}.ui.items .item .extra>img{display:inline-block;border-radius:500px;margin-right:.25em;vertical-align:middle;width:2em}.ui.items .item .extra .left{float:left}.ui.items .item .extra .right{float:right}.ui.items .item:hover{cursor:pointer;z-index:5;-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.2);box-shadow:0 0 0 1px rgba(0,0,0,.2)}.ui.items .item:hover .extra{color:rgba(0,0,0,.5)}.ui.items .item:nth-of-type(6n+1):hover{border-bottom-color:#6ECFF5!important}.ui.items .item:nth-of-type(6n+2):hover{border-bottom-color:#5C6166!important}.ui.items .item:nth-of-type(6n+3):hover{border-bottom-color:#A1CF64!important}.ui.items .item:nth-of-type(6n+4):hover{border-bottom-color:#D95C5C!important}.ui.items .item:nth-of-type(6n+5):hover{border-bottom-color:#00B5AD!important}.ui.items .item:nth-of-type(6n+6):hover{border-bottom-color:#564F8A!important}.ui.connected.items{display:table;width:100%;margin-left:0!important;margin-right:0!important}.ui.connected.items>.item,.ui.connected.items>.row>.item{float:none;display:table-cell;vertical-align:top;height:auto;border-radius:0;margin:0;width:33.33%}.ui.connected.items>.row{display:table;margin:.5em 0}.ui.connected.items>.row:first-child{margin-top:0}.ui.connected.items>.item,.ui.connected.items>.row:last-child>.item{border-bottom:.2em solid rgba(0,0,0,.2)}.ui.connected.items>.item:first-child,.ui.connected.items>.row:last-child>.item:first-child{border-radius:0 0 0 .33em}.ui.connected.items>.item:last-child,.ui.connected.items>.row:last-child>.item:last-child{border-radius:0 0 .33em}.ui.connected.items .item:hover{border-bottom-width:.2em}.ui.one.connected.items>.item,.ui.one.connected.items>.row>.item{width:50%;padding-left:2%;padding-right:2%}.ui.two.connected.items>.item,.ui.two.connected.items>.row>.item{width:50%;padding-left:1%;padding-right:1%}.ui.three.connected.items>.item,.ui.three.connected.items>.row>.item{width:33.333%;padding-left:1%;padding-right:1%}.ui.four.connected.items>.item,.ui.four.connected.items>.row>.item{width:25%;padding-left:.5%;padding-right:.5%}.ui.five.connected.items>.item,.ui.five.connected.items>.row>.item{width:20%;padding-left:.5%;padding-right:.5%}.ui.six.connected.items>.item,.ui.six.connected.items>.row>.item{width:16.66%;padding-left:.5%;padding-right:.5%}.ui.seven.connected.items>.item,.ui.seven.connected.items>.row>.item{width:14.28%;padding-left:.5%;padding-right:.5%}.ui.eight.connected.items>.item,.ui.eight.connected.items>.row>.item{width:12.5%;padding-left:.25%;padding-right:.25%}.ui.nine.connected.items>.item,.ui.nine.connected.items>.row>.item{width:11.11%;padding-left:.25%;padding-right:.25%}.ui.ten.connected.items>.item,.ui.ten.connected.items>.row>.item{width:10%;padding-left:.2%;padding-right:.2%}.ui.eleven.connected.items>.item,.ui.eleven.connected.items>.row>.item{width:9.09%;padding-left:.2%;padding-right:.2%}.ui.twelve.connected.items>.item,.ui.twelve.connected.items>.row>.item{width:8.3333%;padding-left:.1%;padding-right:.1%}@media only screen and (max-width:768px){.ui.stackable.items{display:block!important}.ui.stackable.items>.item,.ui.stackable.items>.row>.item{display:block!important;height:auto!important;width:100%!important;padding:0!important}}.ui.horizontal.items>.item,.ui.items>.horizontal.item{display:table}.ui.horizontal.items>.item>.image,.ui.items>.horizontal.item>.image{display:table-cell;width:50%}.ui.horizontal.items>.item>.image+.content,.ui.items>.horizontal.item>.image+.content{width:50%;display:table-cell}.ui.horizontal.items>.item>.content,.ui.items>.horizontal.item>.content{padding:1% 1.7% 11% 3%;vertical-align:top}.ui.horizontal.items>.item>.meta,.ui.items>.horizontal.item>.meta{position:absolute;padding:0;bottom:7%;left:3%;width:94%}.ui.horizontal.items>.item>.image+.content+.meta,.ui.items>.horizontal.item>.image+.content+.meta{bottom:7%;left:53%;width:44%}.ui.horizontal.items>.item .avatar,.ui.items>.horizontal.item .avatar{width:11.5%}.ui.items>.item .avatar{max-width:25px}.ui.one.items{margin-left:-2%;margin-right:-2%}.ui.one.items>.item{width:100%;margin-left:2%;margin-right:2%}.ui.two.items{margin-left:-1%;margin-right:-1%}.ui.two.items>.item{width:48%;margin-left:1%;margin-right:1%}.ui.two.items>.item:nth-child(2n+1){clear:left}.ui.three.items{margin-left:-1%;margin-right:-1%}.ui.three.items>.item{width:31.333%;margin-left:1%;margin-right:1%}.ui.three.items>.item:nth-child(3n+1){clear:left}.ui.four.items{margin-left:-.5%;margin-right:-.5%}.ui.four.items>.item{width:24%;margin-left:.5%;margin-right:.5%}.ui.four.items>.item:nth-child(4n+1){clear:left}.ui.five.items{margin-left:-.5%;margin-right:-.5%}.ui.five.items>.item{width:19%;margin-left:.5%;margin-right:.5%}.ui.five.items>.item:nth-child(5n+1){clear:left}.ui.six.items{margin-left:-.5%;margin-right:-.5%}.ui.six.items>.item{width:15.66%;margin-left:.5%;margin-right:.5%}.ui.six.items>.item:nth-child(6n+1){clear:left}.ui.seven.items{margin-left:-.5%;margin-right:-.5%}.ui.seven.items>.item{width:13.28%;margin-left:.5%;margin-right:.5%;font-size:11px}.ui.seven.items>.item:nth-child(7n+1){clear:left}.ui.eight.items{margin-left:-.25%;margin-right:-.25%}.ui.eight.items>.item{width:12%;margin-left:.25%;margin-right:.25%;font-size:11px}.ui.eight.items>.item:nth-child(8n+1){clear:left}.ui.nine.items{margin-left:-.25%;margin-right:-.25%}.ui.nine.items>.item{width:10.61%;margin-left:.25%;margin-right:.25%;font-size:10px}.ui.nine.items>.item:nth-child(9n+1){clear:left}.ui.ten.items{margin-left:-.2%;margin-right:-.2%}.ui.ten.items>.item{width:9.6%;margin-left:.2%;margin-right:.2%;font-size:10px}.ui.ten.items>.item:nth-child(10n+1){clear:left}.ui.eleven.items{margin-left:-.2%;margin-right:-.2%}.ui.eleven.items>.item{width:8.69%;margin-left:.2%;margin-right:.2%;font-size:9px}.ui.eleven.items>.item:nth-child(11n+1){clear:left}.ui.twelve.items{margin-left:-.1%;margin-right:-.1%}.ui.twelve.items>.item{width:8.1333%;margin-left:.1%;margin-right:.1%;font-size:9px}.ui.twelve.items>.item:nth-child(12n+1){clear:left}.ui.list,ol.ui.list,ul.ui.list{list-style-type:none;margin:1em 0;padding:0}.ui.list .list,ol.ui.list ol,ul.ui.list ul{margin:0;padding:.5em 0 .5em 1em}.ui.list:first-child,ol.ui.list:first-child,ul.ui.list:first-child{margin-top:0}.ui.list:last-child,ol.ui.list:last-child,ul.ui.list:last-child{margin-bottom:0}.ui.list .item,ol.ui.list li,ul.ui.list li{display:list-item;list-style-type:none;list-style-position:inside;padding:.3em 0;line-height:1.2em}.ui.list .item:after{content:'';display:block;height:0;clear:both;visibility:hidden}.ui.list .list{clear:both}.ui.list .item>.icon{display:block;float:left;margin:0 1em 0 0;padding:.1em 0 0}.ui.list .item>.icon:only-child{display:inline-block}.ui.horizontal.list .item>.icon{margin:0;padding:0 .25em 0 0}.ui.horizontal.list .item>.icon,.ui.horizontal.list .item>.icon+.content{float:none;display:inline-block}.ui.list .item>img{display:block;float:left;margin-right:1em;vertical-align:middle}.ui.list .item>.content{display:inline-block;vertical-align:middle;line-height:1.2em}.ui.list .item>.icon+.content{display:table-cell;vertical-align:top}.ui.list a{cursor:pointer}.ui.list a .icon{color:rgba(0,0,0,.6);-webkit-transition:color .2s ease;-moz-transition:color .2s ease;transition:color .2s ease}.ui.list .header{font-weight:700}.ui.list .description{color:rgba(0,0,0,.5)}.ui.list .item>.left.floated{margin-right:1em;float:left}.ui.list .item>.right.floated{margin-left:1em;float:right}.ui.horizontal.list{display:inline-block;font-size:0}.ui.horizontal.list>.item{display:inline-block;margin-left:1em;font-size:1rem}.ui.horizontal.list>.item:first-child{margin-left:0}.ui.horizontal.list .list{padding-left:0;padding-bottom:0}.ui.list a:hover .icon{color:rgba(0,0,0,.8)}.ui.inverted.list a .icon{color:rgba(255,255,255,.6)}.ui.inverted.list .description{color:rgba(255,255,255,.8)}.ui.inverted.link.list .item{color:rgba(255,255,255,.4)}.ui.link.list .item{color:rgba(0,0,0,.3)}.ui.link.list .item a,.ui.link.list a.item{color:rgba(0,0,0,.5)}.ui.link.list .active.item a,.ui.link.list .item a:active,.ui.link.list .item a:hover,.ui.link.list a.active.item,.ui.link.list a.item:active,.ui.link.list a.item:hover{color:rgba(0,0,0,.8)}.ui.inverted.link.list .item a,.ui.inverted.link.list a.item{color:rgba(255,255,255,.6)}.ui.inverted.link.list .item a:hover,.ui.inverted.link.list a.item:hover{color:rgba(255,255,255,.8)}.ui.inverted.link.list .item a:active,.ui.inverted.link.list a.item:active{color:rgba(255,255,255,.9)}.ui.inverted.link.list .active.item a,.ui.inverted.link.list a.active.item{color:rgba(255,255,255,.8)}.ui.selection.list .item{cursor:pointer;color:rgba(0,0,0,.4);padding:.5em;-webkit-transition:.2s color ease,.2s padding-left ease,.2s background-color ease;-moz-transition:.2s color ease,.2s padding-left ease,.2s background-color ease;transition:.2s color ease,.2s padding-left ease,.2s background-color ease}.ui.selection.list .item:hover{background-color:rgba(0,0,0,.02);color:rgba(0,0,0,.7)}.ui.selection.list .item:active{background-color:rgba(0,0,0,.05);color:rgba(0,0,0,.7)}.ui.selection.list .item.active{background-color:rgba(0,0,0,.04);color:rgba(0,0,0,.7)}.ui.animated.list .item{-webkit-transition:.2s color ease,.2s padding-left ease,.2s background-color ease;-moz-transition:.2s color ease,.2s padding-left ease,.2s background-color ease;transition:.2s color ease,.2s padding-left ease,.2s background-color ease}.ui.animated.list:not(.horizontal) .item:hover{padding-left:1em}.ui.animated.list:not(.horizontal) .item:hover .item:hover{padding-left:.5em}.ui.inverted.selection.list .item{color:rgba(255,255,255,.6)}.ui.inverted.selection.list .item:hover{background-color:rgba(255,255,255,.04);color:rgba(255,255,255,.8)}.ui.inverted.selection.list .item:active{background-color:rgba(255,255,255,.1);color:rgba(255,255,255,.7)}.ui.inverted.selection.list .item.active{background-color:rgba(255,255,255,.08);color:#FFF}.ui.bulleted.list,ul.ui.list{margin-left:1.5em}.ui.bulleted.list .item,ul.ui.list li{position:relative}.ui.bulleted.list .item:before,ul.ui.list li:before{position:absolute;left:-1.5em;content:'•'}.ui.bulleted.list .list,ul.ui.list ul{padding-left:1.5em}.ui.horizontal.bulleted.list,ul.ui.horizontal.bulleted.list{margin-left:0}.ui.horizontal.bulleted.list .item,ul.ui.horizontal.bulleted.list li{margin-left:1.5em}.ui.horizontal.bulleted.list .item:before,ul.ui.horizontal.bulleted.list li:before{left:-.9em}.ui.horizontal.bulleted.list .item:first-child,ul.ui.horizontal.bulleted.list li:first-child{margin-left:0}.ui.horizontal.bulleted.list .item:first-child::before,ul.ui.horizontal.bulleted.list li:first-child::before{display:none}.ui.ordered.list,ol.ui.list{counter-reset:ordered;margin-left:2em;list-style-type:none}.ui.ordered.list .item,ol.ui.list li{list-style-type:none;position:relative}.ui.ordered.list .item:before,ol.ui.list li:before{position:absolute;left:-2em;counter-increment:ordered;content:counters(ordered,".");text-align:right;vertical-align:top;opacity:.75}.ui.ordered.list .list,ol.ui.list ol{counter-reset:ordered;padding-left:2.5em}.ui.ordered.list .list .item:before,ol.ui.list ol li:before{left:-2.5em}.ui.ordered.horizontal.list,ol.ui.horizontal.list{margin-left:0}.ui.ordered.horizontal.list .item:before,ol.ui.horizontal.list li:before{position:static;left:0;margin:0 .5em 0 0}.ui.divided.list:not(.horizontal)>.list,.ui.divided.list>.item{border-top:1px solid rgba(0,0,0,.1);padding-left:.5em;padding-right:.5em}.ui.divided.list .item .menu .item{border-width:0}.ui.divided.list .item:first-child{border-top-width:0}.ui.divided.list:not(.horizontal) .list{margin-left:-.5em;margin-right:-.5em}.ui.divided.list:not(.horizontal) .list .item{padding-left:1em;padding-right:1em}.ui.divided.list:not(.horizontal) .list .item:first-child{border-top-width:1px}.ui.divided.bulleted.list{margin-left:0}.ui.divided.bulleted.list .item{padding-left:1.5em}.ui.divided.bulleted.list .item:before{left:.5em}.ui.divided.ordered.list{margin-left:0}.ui.divided.ordered.list>.item{padding-left:2em;padding-right:2em}.ui.divided.ordered.list>.item:before{left:.5em}.ui.divided.ordered.list .item .list{margin-left:-2em;margin-right:-2em}.ui.divided.horizontal.list{margin-left:0}.ui.divided.horizontal.list>.item{border-top:none;border-left:1px solid rgba(0,0,0,.1);margin:0;padding-left:.75em;padding-right:.75em;line-height:.6em}.ui.horizontal.divided.list>.item:first-child{border-left:none;padding-left:0}.ui.divided.inverted.horizontal.list .item,.ui.divided.inverted.list>.item,.ui.divided.inverted.list>.list{border-color:rgba(255,255,255,.2)}.ui.celled.list>.item,.ui.celled.list>.list{border-top:1px solid rgba(0,0,0,.1);padding-left:.5em;padding-right:.5em}.ui.celled.list>.item:last-child{border-bottom:1px solid rgba(0,0,0,.1)}.ui.celled.list .item .list{margin-left:-.5em;margin-right:-.5em}.ui.celled.list .item .list .item{border-width:0}.ui.celled.list .list .item:first-child{border-top-width:0}.ui.celled.bulleted.list{margin-left:0}.ui.celled.bulleted.list>.item{padding-left:1.5em}.ui.celled.bulleted.list>.item:before{left:.5em}.ui.celled.ordered.list{margin-left:0}.ui.celled.ordered.list .item{padding-left:2em;padding-right:2em}.ui.celled.ordered.list .item:before{left:.5em}.ui.celled.ordered.list .item .list{margin-left:-2em;margin-right:-2em}.ui.horizontal.celled.list{margin-left:0}.ui.horizontal.celled.list .item{border-top:none;border-left:1px solid rgba(0,0,0,.1);margin:0;padding-left:.75em;padding-right:.75em;line-height:.6em}.ui.horizontal.celled.list .item:last-child{border-bottom:none;border-right:1px solid rgba(0,0,0,.1)}.ui.celled.inverted.horizontal.list .item,.ui.celled.inverted.list>.item,.ui.celled.inverted.list>.list{border-color:rgba(255,255,255,.2)}.ui.relaxed.list:not(.horizontal) .item{padding-top:.5em;padding-bottom:.5em}.ui.relaxed.list .header{margin-bottom:.25em}.ui.horizontal.relaxed.list .item{padding-left:1.25em;padding-right:1.25em}.ui.very.relaxed.list:not(.horizontal) .item{padding-top:1em;padding-bottom:1em}.ui.very.relaxed.list .header{margin-bottom:.5em}.ui.horizontal.very.relaxed.list .item{padding-left:2em;padding-right:2em}.ui.mini.list .item{font-size:.7rem}.ui.tiny.list .item{font-size:.8125rem}.ui.small.list .item{font-size:.875rem}.ui.list .item{font-size:1em}.ui.large.list .item{font-size:1.125rem}.ui.big.list .item{font-size:1.25rem}.ui.huge.list .item{font-size:1.375rem}.ui.massive.list .item{font-size:1.5rem}.ui.statistic{text-align:center}.ui.statistic>.number{font-size:4em;font-weight:700;color:rgba(0,0,0,.7)}.ui.statistic>.description{opacity:.8} \ No newline at end of file diff --git a/ajax/libs/semantic-ui/0.16.1/fonts/basic.icons.eot b/ajax/libs/semantic-ui/0.16.1/fonts/basic.icons.eot new file mode 100644 index 0000000000000000000000000000000000000000..25066de069a62374b39f220581d1314fa60a5f45 GIT binary patch literal 40166 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 + + + +Created by FontForge 20100429 at Thu Sep 20 22:09:47 2012 + By root +Copyright (C) 2012 by original authors @ fontello.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ajax/libs/semantic-ui/0.16.1/fonts/basic.icons.ttf b/ajax/libs/semantic-ui/0.16.1/fonts/basic.icons.ttf new file mode 100644 index 0000000000000000000000000000000000000000..318a2643d3af55fe51b472e7769b99caf74ff7b0 GIT binary patch literal 39924 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 J*(!_){|Uh81M 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�-A&iY%khEsGVMaq&$BJA^QAs8x>7-g_ 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 k3oQ661F8F$xZIP$lY?c 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 literal 0 HcmV?d00001 diff --git a/ajax/libs/semantic-ui/0.16.1/fonts/icons.svg b/ajax/libs/semantic-ui/0.16.1/fonts/icons.svg new file mode 100644 index 000000000..2edb4ec34 --- /dev/null +++ b/ajax/libs/semantic-ui/0.16.1/fonts/icons.svg @@ -0,0 +1,399 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ajax/libs/semantic-ui/0.16.1/fonts/icons.ttf b/ajax/libs/semantic-ui/0.16.1/fonts/icons.ttf new file mode 100644 index 0000000000000000000000000000000000000000..d3659246915cacb0c9204271f1f9fc5f77049eac GIT binary patch literal 79076 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 literal 0 HcmV?d00001 diff --git a/ajax/libs/semantic-ui/0.16.1/images/loader-large-inverted.gif b/ajax/libs/semantic-ui/0.16.1/images/loader-large-inverted.gif new file mode 100644 index 0000000000000000000000000000000000000000..ee5283f10fc717f8a2335f8b8092e1adae642f92 GIT binary patch literal 10168 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 CvRK0a literal 0 HcmV?d00001 diff --git a/ajax/libs/semantic-ui/0.16.1/images/loader-large.gif b/ajax/libs/semantic-ui/0.16.1/images/loader-large.gif new file mode 100644 index 0000000000000000000000000000000000000000..519621ccde30027bee14c18a2c552def9f39f9e7 GIT binary patch literal 8492 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 literal 0 HcmV?d00001 diff --git a/ajax/libs/semantic-ui/0.16.1/images/loader-mini-inverted.gif b/ajax/libs/semantic-ui/0.16.1/images/loader-mini-inverted.gif new file mode 100644 index 0000000000000000000000000000000000000000..c7c95b948d30a5a8ee87741d663b2e05c77db59b GIT binary patch literal 2722 zcmcJQe^8Ql9LFED zrgJ;b7M3NImX#|jYeJb>wz1}Z+MQ zu9PGt@`Fh5P4q*QLP0Qu=lS0AEP_tO<;zX8Rt=oC;h{ZSwCg_9?LSy}^NgPN{^Zfm zsgFN5r_N2S-ddfzBDecww^$?|yfO$doku!LHkJ&2Irwi9G+HT_xVUT3q4tAkd zzeC$X_dNe;$!kB99vm)3M^z>Us1O_i=2ENFZTs6mv8l1Cu&D5y>l_hBsF$ick9C4* z%dQr`9LnqHKjspywIs(=Lst_vCyR82QR$YOR7hP~cSP+_+3=$tyI#hdx=p6_2~G+W zj3ZzIMTP>T1kVXTmY2wbLA9@H6`2Z<0>QR}ZD4u*_Ii*-=Zy3php|8qt2Psqt9;T> zlt-}Gk!8n+2f5DA=?A|PD|M+f*Oa9G!nr%$j*^UaRm|wHVS(BlqATleMwYwfqE(JeB|a>slX|;O*bLdT z&{sk({rGhX4HxW#qj>KtuxJwuiAc zUb?;Mpu!1^FRpmJrQiq#we><073mK z#iaoVuz^c@qbtQWl!h@)GtGMpx9Ewc8(N1iqjK#t{wy z0H6r#1^}=FzyLhnOu!Dv2Ot4>6ei0p?-RXLfF{LbFRtcRt`9aWXh z1Y7_GL;wOrV49aDNT$oDC+|j&-8MGFCA&bnNq%b zyaI)_f+B%K0|jVL5P|TZOrdPXFHnv$@c9;PPU{lF$ft>FS{Mcvx}J?NNaJ18*an50 zf@XW7LE*^#C5rOgfimiJjfEdwv1_R*4=KqYVmW3GsRB z6Xx|?ZiWIH8$$HgC!~hX>+lcDB$t|(HCAXteqh#JAhgPK5 zq(zaX7dd<(H-z*JK_1_1e}BR$`1=#qbNv1k`OJPhHf=MX5>J<$i0#$u`*3E{WL~v> zM^ywDr8VOAXH{KI{CO?S*_BK>oBzBkrUPGzSD}s$-4bRMSwqHH z)Ufij5=^mkZ!c+Wy+4pKBv79sF~C3?-Vk8h0l;I3R17ds6<`!BKS06-qso6s80=J| zBKQxq|E$m~6pA@k)wO3wHelyfGo@#yQK#N|rqrozrLXNRCFm$EJ$n;^Qe)TH@lwKI zS)kA16>UBDzKDAtwf*8x>8bitt?ZZIM6sOMPIO^jjZ%RdOyGJKWr zp9*v#6lj5|n<0Jciyt|0Ga9o=ACe6N?)Rv(1XE5Kn!2&xg5&0stsg}t;zxtYi8h5j gW_w1fQu2_QnZPn3bFlfE(=lJv_)g~k=+Ak71CD7&bN~PV literal 0 HcmV?d00001 diff --git a/ajax/libs/semantic-ui/0.16.1/images/loader-mini.gif b/ajax/libs/semantic-ui/0.16.1/images/loader-mini.gif new file mode 100644 index 0000000000000000000000000000000000000000..7f3e27c704155e5c2d5c4b7c776fd8f499f8e04f GIT binary patch literal 2548 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 literal 0 HcmV?d00001 diff --git a/ajax/libs/semantic-ui/0.16.1/images/loader-small.gif b/ajax/libs/semantic-ui/0.16.1/images/loader-small.gif new file mode 100644 index 0000000000000000000000000000000000000000..8c9f60ee2944554b57e0c79b6ad70e515c2a257b GIT binary patch literal 3447 zcmchZc~nzp8i#Lg?!6=sAfaIq0TT=mAchF25nNcpBHKw26kMaC1Ox>|i&knvKo(hL zQE0|O1Pln4sf<;jPQb_*mx>zehKgvN;xeK#bz@4u0D*MIcIKR(Gx>*e63+KN@9%!^ z``n;Kf!w)ktRO4sAq16ImOpy@sO@;$&`(3MgECpQ?Abq_4gWk`US0m|$+O}2!*%ky zk&zKd_o0s%MFd1G_V?unxU)HU9QdC84j~dD62#K}kM>vynNgy4E{svID2kDSOd2AA zh>DOrxlPD7-=!trPe1x%*NYKlO-eA!y7*k28$5o3>EsDgP*wB22B37D>d-nRz$$!Th$%~E#!`GkTH zBv0jfnibuaTk_|c%s)pb5|nnZ(%tJl#qI{qvJxu3{A1hBOPkv751!Z+@ztFdZ#!1m z>RK?FY(WZ`K~5kr00~+E*dR*~DxhsU)du3!lD{7Y4UWMhOMBD%M`>vWkPZlP$ zuCHRPW;)lWdXh3ZXDP0mgm$F;(o_!WV}r|u-ZOP!m|(3!oL{cE zMW_(XQXw&rCi&cU98Fbg;k&mXZC3v5fYMv4AI!YOJ|`ZU6JydxL38u+_Z9?wjCO2f zv|xZ1%!n>rE$!ov(WV00Kr(F_1^d@E@p@%yiBG>IG6lxu7yV0RK}sxE-de#64DyX5 zEBj}*g+-?4RB#?3;jZ=3+vHqhQe%sGAVgJ7JJdJi?~$7PMt&r(ePGo|p1|eHed_VSTQh}hBdhcFP!N$Bpr(o9 zhy**PIYU7Dn}CYNDmu3-&XwZ!m>QisM8eaK*UjDVJq4mdA>7t`3C2^SDxP) zUZXa19VobW^vWl1%-N~&-6^!qXO?-g_Z|y=@a_v`B5m?u#ov z?Dx~-T$!M7U8{X(+p2a*^SY<}y& z1>cRQo!vsG&;E;$?i3qUe}?C_KDn=9?Ow2w*(`P4F{_I5K6PgwUvYQd&RIn}IHq#wvv24;5sy}e8NZHpnZM25 zF)4nyMZ8?(dbM!TN|S1I=DRC?74GbocNV&;#*P1Js zFl0Pu{Z*^A)m05xuiz?-sS4Bqn^#+^K`SyK5@3{xC=l5 z`_xWhnTZ*=Duji}e0^FGGGeH3(5+Mbh9_*L?fH1yn54AA0(u-(6#xO7Y_j2?k2UOV zbx;yzgk#EJf`>T-b;HMm5Z=<3*2!U6l_db2wa=Un0!Vz6qp!&sNd72-f!p%V9tq0l)}0^_D10}-Lth@O4|vM zIQTxgwGBkDgj1{v8ghO#e5omd#nT5hd>D3OU+)t!sm7TPs=|%!E)UX8W9Bux;&DVY z10~|b4)pPc^j>D9`mWNx5RB>y^f4wXpeWGCM6v)Bi7WZHhs(62<)tHgAyz+3zzK6P zG70f}T1JB~QkF>_FIb$Fc^IP695hTP*ZM~UR+!&FJ3>XW*OYQ?%#5V++uxGT1)|pc zfEBawIM^35|Fw3C{bbaf+BrwMCuu*>}n`sh%616hxx)5PVNT|3ZnGPX4AP>$Syzs3zzu$mioZ%ID znd4oT(z29!+=hUIo`yZ~YEuW=NdO&w4^WxBjH0fhBE^(P+rm3^kA% zED&UvqnzjhggtdZtYBraxsLjO^3$iHQ@uZLP~L(|qp~can~NVvLf;7Tx4E3jt+aE5 zx-O*gsCPn*NZfnR{UK@=$B!aSGT$Bi{cE%9xXS4GmsV%DCEhJAPIzq_FTBT!cc@KS zAypewT7;hN>p1QA55g#3ibpe$G!hzOx3thMiix_E5uZ~&=93`TV${;A>W&Z)H zhY4%R{#aSM%vwJC?t8&4v^bP@gJi<2-SinQw!C*x`N5WQ_WY|JmTfA0yDWa?s`N

xA+D)|B@z|0K+C literal 0 HcmV?d00001 diff --git a/ajax/libs/semantic-ui/0.16.1/javascript/semantic.js b/ajax/libs/semantic-ui/0.16.1/javascript/semantic.js new file mode 100644 index 000000000..6719b4408 --- /dev/null +++ b/ajax/libs/semantic-ui/0.16.1/javascript/semantic.js @@ -0,0 +1,12055 @@ +/* + * # Semantic - Accordion + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ($, window, document, undefined) { + +$.fn.accordion = function(parameters) { + var + $allModules = $(this), + + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + returnedValue + ; + $allModules + .each(function() { + var + settings = ( $.isPlainObject(parameters) ) + ? $.extend(true, {}, $.fn.accordion.settings, parameters) + : $.extend({}, $.fn.accordion.settings), + + className = settings.className, + namespace = settings.namespace, + selector = settings.selector, + error = settings.error, + + eventNamespace = '.' + namespace, + moduleNamespace = 'module-' + namespace, + moduleSelector = $allModules.selector || '', + + $module = $(this), + $title = $module.find(selector.title), + $content = $module.find(selector.content), + + element = this, + instance = $module.data(moduleNamespace), + module + ; + + module = { + + initialize: function() { + module.debug('Initializing accordion with bound events', $module); + // initializing + $title + .on('click' + eventNamespace, module.event.click) + ; + module.instantiate(); + }, + + instantiate: function() { + instance = module; + $module + .data(moduleNamespace, module) + ; + }, + + destroy: function() { + module.debug('Destroying previous accordion for', $module); + $module + .removeData(moduleNamespace) + ; + $title + .off(eventNamespace) + ; + }, + + event: { + click: function() { + module.verbose('Title clicked', this); + var + $activeTitle = $(this), + index = $title.index($activeTitle) + ; + module.toggle(index); + }, + resetDisplay: function() { + $(this).css('display', ''); + if( $(this).attr('style') == '') { + $(this) + .attr('style', '') + .removeAttr('style') + ; + } + }, + resetOpacity: function() { + $(this).css('opacity', ''); + if( $(this).attr('style') == '') { + $(this) + .attr('style', '') + .removeAttr('style') + ; + } + } + }, + + toggle: function(index) { + module.debug('Toggling content content at index', index); + var + $activeTitle = $title.eq(index), + $activeContent = $activeTitle.next($content), + contentIsOpen = $activeContent.is(':visible') + ; + if(contentIsOpen) { + if(settings.collapsible) { + module.close(index); + } + else { + module.debug('Cannot close accordion content collapsing is disabled'); + } + } + else { + module.open(index); + } + }, + + open: function(index) { + var + $activeTitle = $title.eq(index), + $activeContent = $activeTitle.next($content), + $previousTitle = $activeTitle.siblings(selector.title).filter('.' + className.active), + $previousContent = $previousTitle.next($title), + contentIsOpen = ($previousTitle.size() > 0) + ; + if( !$activeContent.is(':animated') ) { + module.debug('Opening accordion content', $activeTitle); + if(settings.exclusive && contentIsOpen) { + $previousTitle + .removeClass(className.active) + ; + $previousContent + .stop() + .children() + .stop() + .animate({ + opacity: 0 + }, settings.duration, module.event.resetOpacity) + .end() + .slideUp(settings.duration , settings.easing, function() { + $previousContent + .removeClass(className.active) + .children() + ; + $.proxy(module.event.resetDisplay, this)(); + }) + ; + } + $activeTitle + .addClass(className.active) + ; + $activeContent + .stop() + .children() + .stop() + .animate({ + opacity: 1 + }, settings.duration) + .end() + .slideDown(settings.duration, settings.easing, function() { + $activeContent + .addClass(className.active) + ; + $.proxy(module.event.resetDisplay, this)(); + $.proxy(settings.onOpen, $activeContent)(); + $.proxy(settings.onChange, $activeContent)(); + }) + ; + } + }, + + close: function(index) { + var + $activeTitle = $title.eq(index), + $activeContent = $activeTitle.next($content) + ; + module.debug('Closing accordion content', $activeContent); + $activeTitle + .removeClass(className.active) + ; + $activeContent + .removeClass(className.active) + .show() + .stop() + .children() + .stop() + .animate({ + opacity: 0 + }, settings.duration, module.event.resetOpacity) + .end() + .slideUp(settings.duration, settings.easing, function(){ + $.proxy(module.event.resetDisplay, this)(); + $.proxy(settings.onClose, $activeContent)(); + $.proxy(settings.onChange, $activeContent)(); + }) + ; + }, + + setting: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + module.debug('Changing internal', name, value); + if(value !== undefined) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else { + module[name] = value; + } + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + }) + ; + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + +$.fn.accordion.settings = { + name : 'Accordion', + namespace : 'accordion', + + debug : false, + verbose : true, + performance : true, + + exclusive : true, + collapsible : true, + + duration : 500, + easing : 'easeInOutQuint', + + onOpen : function(){}, + onClose : function(){}, + onChange : function(){}, + + error: { + method : 'The method you called is not defined' + }, + + className : { + active : 'active' + }, + + selector : { + title : '.title', + content : '.content' + } + + +}; + +// Adds easing +$.extend( $.easing, { + easeInOutQuint: function (x, t, b, c, d) { + if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b; + return c/2*((t-=2)*t*t*t*t + 2) + b; + } +}); + +})( jQuery, window , document ); + + +/* + * # Semantic - API + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ( $, window, document, undefined ) { + + $.api = $.fn.api = function(parameters) { + + var + settings = $.extend(true, {}, $.api.settings, parameters), + + // if this keyword isn't a jQuery object, create one + context = (typeof this != 'function') + ? this + : $('

'), + // context defines the element used for loading/error state + $context = (settings.stateContext) + ? $(settings.stateContext) + : $(context), + // module is the thing that initiates the api action, can be independent of context + $module = typeof this == 'object' + ? $(context) + : $context, + + element = this, + time = new Date().getTime(), + performance = [], + + moduleSelector = $module.selector || '', + moduleNamespace = settings.namespace + '-module', + + className = settings.className, + metadata = settings.metadata, + error = settings.error, + + instance = $module.data(moduleNamespace), + + query = arguments[0], + methodInvoked = (instance !== undefined && typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + + module, + returnedValue + ; + + module = { + initialize: function() { + var + runSettings, + + loadingTimer = new Date().getTime(), + loadingDelay, + + promise, + url, + + formData = {}, + data, + + ajaxSettings = {}, + xhr + ; + + // serialize parent form if requested! + if(settings.serializeForm && $(this).toJSON() !== undefined) { + formData = module.get.formData(); + module.debug('Adding form data to API Request', formData); + $.extend(true, settings.data, formData); + } + + // let beforeSend change settings object + runSettings = $.proxy(settings.beforeSend, $module)(settings); + + // check for exit conditions + if(runSettings !== undefined && !runSettings) { + module.error(error.beforeSend); + module.reset(); + return; + } + + // get real url from template + url = module.get.url( module.get.templateURL() ); + + // exit conditions reached from missing url parameters + if( !url ) { + module.error(error.missingURL); + module.reset(); + return; + } + + // promise handles notification on api request, so loading min. delay can occur for all notifications + promise = + $.Deferred() + .always(function() { + if(settings.stateContext) { + $context + .removeClass(className.loading) + ; + } + $.proxy(settings.complete, $module)(); + }) + .done(function(response) { + module.debug('API request successful'); + // take a stab at finding success state if json + if(settings.dataType == 'json') { + if (response.error !== undefined) { + $.proxy(settings.failure, $context)(response.error, settings, $module); + } + else if ($.isArray(response.errors)) { + $.proxy(settings.failure, $context)(response.errors[0], settings, $module); + } + else { + $.proxy(settings.success, $context)(response, settings, $module); + } + } + // otherwise + else { + $.proxy(settings.success, $context)(response, settings, $module); + } + }) + .fail(function(xhr, status, httpMessage) { + var + errorMessage = (settings.error[status] !== undefined) + ? settings.error[status] + : httpMessage, + response + ; + // let em know unless request aborted + if(xhr !== undefined) { + // readyState 4 = done, anything less is not really sent + if(xhr.readyState !== undefined && xhr.readyState == 4) { + + // if http status code returned and json returned error, look for it + if( xhr.status != 200 && httpMessage !== undefined && httpMessage !== '') { + module.error(error.statusMessage + httpMessage); + } + else { + if(status == 'error' && settings.dataType == 'json') { + try { + response = $.parseJSON(xhr.responseText); + if(response && response.error !== undefined) { + errorMessage = response.error; + } + } + catch(error) { + module.error(error.JSONParse); + } + } + } + $context + .removeClass(className.loading) + .addClass(className.error) + ; + // show error state only for duration specified in settings + if(settings.errorLength > 0) { + setTimeout(function(){ + $context + .removeClass(className.error) + ; + }, settings.errorLength); + } + module.debug('API Request error:', errorMessage); + $.proxy(settings.failure, $context)(errorMessage, settings, this); + } + else { + module.debug('Request Aborted (Most likely caused by page change)'); + } + } + }) + ; + + // look for params in data + $.extend(true, ajaxSettings, settings, { + success : function(){}, + failure : function(){}, + complete : function(){}, + type : settings.method || settings.type, + data : data, + url : url, + beforeSend : settings.beforeXHR + }); + + if(settings.stateContext) { + $context + .addClass(className.loading) + ; + } + + if(settings.progress) { + module.verbose('Adding progress events'); + $.extend(true, ajaxSettings, { + xhr: function() { + var + xhr = new window.XMLHttpRequest() + ; + xhr.upload.addEventListener('progress', function(event) { + var + percentComplete + ; + if (event.lengthComputable) { + percentComplete = Math.round(event.loaded / event.total * 10000) / 100 + '%'; + $.proxy(settings.progress, $context)(percentComplete, event); + } + }, false); + xhr.addEventListener('progress', function(event) { + var + percentComplete + ; + if (event.lengthComputable) { + percentComplete = Math.round(event.loaded / event.total * 10000) / 100 + '%'; + $.proxy(settings.progress, $context)(percentComplete, event); + } + }, false); + return xhr; + } + }); + } + + module.verbose('Creating AJAX request with settings: ', ajaxSettings); + xhr = + $.ajax(ajaxSettings) + .always(function() { + // calculate if loading time was below minimum threshold + loadingDelay = ( settings.loadingLength - (new Date().getTime() - loadingTimer) ); + settings.loadingDelay = loadingDelay < 0 + ? 0 + : loadingDelay + ; + }) + .done(function(response) { + var + context = this + ; + setTimeout(function(){ + promise.resolveWith(context, [response]); + }, settings.loadingDelay); + }) + .fail(function(xhr, status, httpMessage) { + var + context = this + ; + // page triggers abort on navigation, dont show error + if(status != 'abort') { + setTimeout(function(){ + promise.rejectWith(context, [xhr, status, httpMessage]); + }, settings.loadingDelay); + } + else { + $context + .removeClass(className.error) + .removeClass(className.loading) + ; + } + }) + ; + if(settings.stateContext) { + $module + .data(metadata.promise, promise) + .data(metadata.xhr, xhr) + ; + } + }, + + get: { + formData: function() { + return $module + .closest('form') + .toJSON() + ; + }, + templateURL: function() { + var + action = $module.data(settings.metadata.action) || settings.action || false, + url + ; + if(action) { + module.debug('Creating url for: ', action); + if(settings.api[action] !== undefined) { + url = settings.api[action]; + } + else { + module.error(error.missingAction); + } + } + // override with url if specified + if(settings.url) { + url = settings.url; + module.debug('Getting url', url); + } + return url; + }, + url: function(url, urlData) { + var + urlVariables + ; + if(url) { + urlVariables = url.match(settings.regExpTemplate); + urlData = urlData || settings.urlData; + + if(urlVariables) { + module.debug('Looking for URL variables', urlVariables); + $.each(urlVariables, function(index, templateValue){ + var + term = templateValue.substr( 2, templateValue.length - 3), + termValue = ($.isPlainObject(urlData) && urlData[term] !== undefined) + ? urlData[term] + : ($module.data(term) !== undefined) + ? $module.data(term) + : urlData[term] + ; + module.verbose('Looking for variable', term, $module, $module.data(term), urlData[term]); + // remove optional value + if(termValue === false) { + module.debug('Removing variable from URL', urlVariables); + url = url.replace('/' + templateValue, ''); + } + // undefined condition + else if(termValue === undefined || !termValue) { + module.error(error.missingParameter + term); + url = false; + return false; + } + else { + url = url.replace(templateValue, termValue); + } + }); + } + } + return url; + } + }, + + // reset api request + reset: function() { + $module + .data(metadata.promise, false) + .data(metadata.xhr, false) + ; + $context + .removeClass(className.error) + .removeClass(className.loading) + ; + }, + + setting: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + + return (returnedValue !== undefined) + ? returnedValue + : this + ; + }; + + // handle DOM attachment to API functionality + $.fn.apiButton = function(parameters) { + $(this) + .each(function(){ + var + // if only function passed it is success callback + $module = $(this), + selector = $(this).selector || '', + + settings = ( $.isFunction(parameters) ) + ? $.extend(true, {}, $.api.settings, $.fn.apiButton.settings, { stateContext: this, success: parameters }) + : $.extend(true, {}, $.api.settings, $.fn.apiButton.settings, { stateContext: this}, parameters), + module + ; + module = { + initialize: function() { + if(settings.context && selector !== '') { + $(settings.context) + .on(selector, 'click.' + settings.namespace, module.click) + ; + } + else { + $module + .on('click.' + settings.namespace, module.click) + ; + } + }, + click: function() { + if(!settings.filter || $(this).filter(settings.filter).size() === 0) { + $.proxy( $.api, this )(settings); + } + } + }; + module.initialize(); + }) + ; + return this; + }; + + $.api.settings = { + + name : 'API', + namespace : 'api', + + debug : true, + verbose : true, + performance : true, + + api : {}, + + beforeSend : function(settings) { + return settings; + }, + beforeXHR : function(xhr) {}, + success : function(response) {}, + complete : function(response) {}, + failure : function(errorCode) {}, + progress : false, + + error : { + missingAction : 'API action used but no url was defined', + missingURL : 'URL not specified for the API action', + missingParameter : 'Missing an essential URL parameter: ', + + timeout : 'Your request timed out', + error : 'There was an error with your request', + parseError : 'There was an error parsing your request', + JSONParse : 'JSON could not be parsed during error handling', + statusMessage : 'Server gave an error: ', + beforeSend : 'The before send function has aborted the request', + exitConditions : 'API Request Aborted. Exit conditions met' + }, + + className: { + loading : 'loading', + error : 'error' + }, + + metadata: { + action : 'action', + promise : 'promise', + xhr : 'xhr' + }, + + regExpTemplate: /\{\$([A-z]+)\}/g, + + action : false, + url : false, + urlData : false, + serializeForm : false, + + stateContext : false, + + method : 'get', + data : {}, + dataType : 'json', + cache : true, + + loadingLength : 200, + errorLength : 2000 + + }; + + $.fn.apiButton.settings = { + filter : '.disabled, .loading', + context : false, + stateContext : false + }; + +})( jQuery, window , document ); +/* + * # Semantic - Colorize + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ( $, window, document, undefined ) { + + $.fn.colorize = function(parameters) { + var + settings = $.extend(true, {}, $.fn.colorize.settings, parameters), + // hoist arguments + moduleArguments = arguments || false + ; + $(this) + .each(function(instanceIndex) { + + var + $module = $(this), + + mainCanvas = $('')[0], + imageCanvas = $('')[0], + overlayCanvas = $('')[0], + + backgroundImage = new Image(), + + // defs + mainContext, + imageContext, + overlayContext, + + image, + imageName, + + width, + height, + + // shortucts + colors = settings.colors, + paths = settings.paths, + namespace = settings.namespace, + error = settings.error, + + // boilerplate + instance = $module.data('module-' + namespace), + module + ; + + module = { + + checkPreconditions: function() { + module.debug('Checking pre-conditions'); + + if( !$.isPlainObject(colors) || $.isEmptyObject(colors) ) { + module.error(error.undefinedColors); + return false; + } + return true; + }, + + async: function(callback) { + if(settings.async) { + setTimeout(callback, 0); + } + else { + callback(); + } + }, + + getMetadata: function() { + module.debug('Grabbing metadata'); + image = $module.data('image') || settings.image || undefined; + imageName = $module.data('name') || settings.name || instanceIndex; + width = settings.width || $module.width(); + height = settings.height || $module.height(); + if(width === 0 || height === 0) { + module.error(error.undefinedSize); + } + }, + + initialize: function() { + module.debug('Initializing with colors', colors); + if( module.checkPreconditions() ) { + + module.async(function() { + module.getMetadata(); + module.canvas.create(); + + module.draw.image(function() { + module.draw.colors(); + module.canvas.merge(); + }); + $module + .data('module-' + namespace, module) + ; + }); + } + }, + + redraw: function() { + module.debug('Redrawing image'); + module.async(function() { + module.canvas.clear(); + module.draw.colors(); + module.canvas.merge(); + }); + }, + + change: { + color: function(colorName, color) { + module.debug('Changing color', colorName); + if(colors[colorName] === undefined) { + module.error(error.missingColor); + return false; + } + colors[colorName] = color; + module.redraw(); + } + }, + + canvas: { + create: function() { + module.debug('Creating canvases'); + + mainCanvas.width = width; + mainCanvas.height = height; + imageCanvas.width = width; + imageCanvas.height = height; + overlayCanvas.width = width; + overlayCanvas.height = height; + + mainContext = mainCanvas.getContext('2d'); + imageContext = imageCanvas.getContext('2d'); + overlayContext = overlayCanvas.getContext('2d'); + + $module + .append( mainCanvas ) + ; + mainContext = $module.children('canvas')[0].getContext('2d'); + }, + clear: function(context) { + module.debug('Clearing canvas'); + overlayContext.fillStyle = '#FFFFFF'; + overlayContext.fillRect(0, 0, width, height); + }, + merge: function() { + if( !$.isFunction(mainContext.blendOnto) ) { + module.error(error.missingPlugin); + return; + } + mainContext.putImageData( imageContext.getImageData(0, 0, width, height), 0, 0); + overlayContext.blendOnto(mainContext, 'multiply'); + } + }, + + draw: { + + image: function(callback) { + module.debug('Drawing image'); + callback = callback || function(){}; + if(image) { + backgroundImage.src = image; + backgroundImage.onload = function() { + imageContext.drawImage(backgroundImage, 0, 0); + callback(); + }; + } + else { + module.error(error.noImage); + callback(); + } + }, + + colors: function() { + module.debug('Drawing color overlays', colors); + $.each(colors, function(colorName, color) { + settings.onDraw(overlayContext, imageName, colorName, color); + }); + } + + }, + + debug: function(message, variableName) { + if(settings.debug) { + if(variableName !== undefined) { + console.info(settings.name + ': ' + message, variableName); + } + else { + console.info(settings.name + ': ' + message); + } + } + }, + error: function(errorMessage) { + console.warn(settings.name + ': ' + errorMessage); + }, + invoke: function(methodName, context, methodArguments) { + var + method + ; + methodArguments = methodArguments || Array.prototype.slice.call( arguments, 2 ); + + if(typeof methodName == 'string' && instance !== undefined) { + methodName = methodName.split('.'); + $.each(methodName, function(index, name) { + if( $.isPlainObject( instance[name] ) ) { + instance = instance[name]; + return true; + } + else if( $.isFunction( instance[name] ) ) { + method = instance[name]; + return true; + } + module.error(settings.error.method); + return false; + }); + } + return ( $.isFunction( method ) ) + ? method.apply(context, methodArguments) + : false + ; + } + + }; + if(instance !== undefined && moduleArguments) { + // simpler than invoke realizing to invoke itself (and losing scope due prototype.call() + if(moduleArguments[0] == 'invoke') { + moduleArguments = Array.prototype.slice.call( moduleArguments, 1 ); + } + return module.invoke(moduleArguments[0], this, Array.prototype.slice.call( moduleArguments, 1 ) ); + } + // initializing + module.initialize(); + }) + ; + return this; + }; + + $.fn.colorize.settings = { + name : 'Image Colorizer', + debug : true, + namespace : 'colorize', + + onDraw : function(overlayContext, imageName, colorName, color) {}, + + // whether to block execution while updating canvas + async : true, + // object containing names and default values of color regions + colors : {}, + + metadata: { + image : 'image', + name : 'name' + }, + + error: { + noImage : 'No tracing image specified', + undefinedColors : 'No default colors specified.', + missingColor : 'Attempted to change color that does not exist', + missingPlugin : 'Blend onto plug-in must be included', + undefinedHeight : 'The width or height of image canvas could not be automatically determined. Please specify a height.' + } + + }; + +})( jQuery, window , document ); + +/* + * # Semantic - Form Validation + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ( $, window, document, undefined ) { + +$.fn.form = function(fields, parameters) { + var + $allModules = $(this), + + settings = $.extend(true, {}, $.fn.form.settings, parameters), + validation = $.extend({}, $.fn.form.settings.defaults, fields), + + namespace = settings.namespace, + metadata = settings.metadata, + selector = settings.selector, + className = settings.className, + error = settings.error, + + eventNamespace = '.' + namespace, + moduleNamespace = 'module-' + namespace, + + moduleSelector = $allModules.selector || '', + + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + returnedValue + ; + $allModules + .each(function() { + var + $module = $(this), + $field = $(this).find(selector.field), + $group = $(this).find(selector.group), + $message = $(this).find(selector.message), + $prompt = $(this).find(selector.prompt), + $submit = $(this).find(selector.submit), + + formErrors = [], + + element = this, + instance = $module.data(moduleNamespace), + module + ; + + module = { + + initialize: function() { + module.verbose('Initializing form validation', $module, validation, settings); + module.bindEvents(); + module.instantiate(); + }, + + instantiate: function() { + module.verbose('Storing instance of module', module); + instance = module; + $module + .data(moduleNamespace, module) + ; + }, + + destroy: function() { + module.verbose('Destroying previous module', instance); + module.removeEvents(); + $module + .removeData(moduleNamespace) + ; + }, + + refresh: function() { + module.verbose('Refreshing selector cache'); + $field = $module.find(selector.field); + }, + + submit: function() { + module.verbose('Submitting form', $module); + $module + .submit() + ; + }, + + bindEvents: function() { + if(settings.keyboardShortcuts) { + $field + .on('keydown' + eventNamespace, module.event.field.keydown) + ; + } + $module + .on('submit' + eventNamespace, module.validate.form) + ; + $field + .on('blur' + eventNamespace, module.event.field.blur) + ; + $submit + .on('click' + eventNamespace, module.submit) + ; + $field + .each(function() { + var + type = $(this).prop('type'), + inputEvent = module.get.changeEvent(type) + ; + $(this) + .on(inputEvent + eventNamespace, module.event.field.change) + ; + }) + ; + }, + + removeEvents: function() { + $module + .off(eventNamespace) + ; + $field + .off(eventNamespace) + ; + $submit + .off(eventNamespace) + ; + $field + .off(eventNamespace) + ; + }, + + event: { + field: { + keydown: function(event) { + var + $field = $(this), + key = event.which, + keyCode = { + enter : 13, + escape : 27 + } + ; + if( key == keyCode.escape) { + module.verbose('Escape key pressed blurring field'); + $field + .blur() + ; + } + if(!event.ctrlKey && key == keyCode.enter && $field.is(selector.input) ) { + module.debug('Enter key pressed, submitting form'); + $submit + .addClass(className.down) + ; + $field + .one('keyup' + eventNamespace, module.event.field.keyup) + ; + event.preventDefault(); + return false; + } + }, + keyup: function() { + module.verbose('Doing keyboard shortcut form submit'); + $submit.removeClass(className.down); + module.submit(); + }, + blur: function() { + var + $field = $(this), + $fieldGroup = $field.closest($group) + ; + if( $fieldGroup.hasClass(className.error) ) { + module.debug('Revalidating field', $field, module.get.validation($field)); + module.validate.field( module.get.validation($field) ); + } + else if(settings.on == 'blur' || settings.on == 'change') { + module.validate.field( module.get.validation($field) ); + } + }, + change: function() { + var + $field = $(this), + $fieldGroup = $field.closest($group) + ; + if(settings.on == 'change' || ( $fieldGroup.hasClass(className.error) && settings.revalidate) ) { + clearTimeout(module.timer); + module.timer = setTimeout(function() { + module.debug('Revalidating field', $field, module.get.validation($field)); + module.validate.field( module.get.validation($field) ); + }, settings.delay); + } + } + } + + }, + + get: { + changeEvent: function(type) { + if(type == 'checkbox' || type == 'radio' || type == 'hidden') { + return 'change'; + } + else { + return (document.createElement('input').oninput !== undefined) + ? 'input' + : (document.createElement('input').onpropertychange !== undefined) + ? 'propertychange' + : 'keyup' + ; + } + }, + field: function(identifier) { + module.verbose('Finding field with identifier', identifier); + if( $field.filter('#' + identifier).size() > 0 ) { + return $field.filter('#' + identifier); + } + else if( $field.filter('[name="' + identifier +'"]').size() > 0 ) { + return $field.filter('[name="' + identifier +'"]'); + } + else if( $field.filter('[data-' + metadata.validate + '="'+ identifier +'"]').size() > 0 ) { + return $field.filter('[data-' + metadata.validate + '="'+ identifier +'"]'); + } + return $(''); + }, + validation: function($field) { + var + rules + ; + $.each(validation, function(fieldName, field) { + if( module.get.field(field.identifier).get(0) == $field.get(0) ) { + rules = field; + } + }); + return rules || false; + } + }, + + has: { + + field: function(identifier) { + module.verbose('Checking for existence of a field with identifier', identifier); + if( $field.filter('#' + identifier).size() > 0 ) { + return true; + } + else if( $field.filter('[name="' + identifier +'"]').size() > 0 ) { + return true; + } + else if( $field.filter('[data-' + metadata.validate + '="'+ identifier +'"]').size() > 0 ) { + return true; + } + return false; + } + + }, + + add: { + prompt: function(identifier, errors) { + var + $field = module.get.field(identifier), + $fieldGroup = $field.closest($group), + $prompt = $fieldGroup.find(selector.prompt), + promptExists = ($prompt.size() !== 0) + ; + errors = (typeof errors == 'string') + ? [errors] + : errors + ; + module.verbose('Adding field error state', identifier); + $fieldGroup + .addClass(className.error) + ; + if(settings.inline) { + if(!promptExists) { + $prompt = settings.templates.prompt(errors); + $prompt + .appendTo($fieldGroup) + ; + } + $prompt + .html(errors[0]) + ; + if(!promptExists) { + if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) { + module.verbose('Displaying error with css transition', settings.transition); + $prompt.transition(settings.transition + ' in', settings.duration); + } + else { + module.verbose('Displaying error with fallback javascript animation'); + $prompt + .fadeIn(settings.duration) + ; + } + } + else { + module.verbose('Inline errors are disabled, no inline error added', identifier); + } + } + }, + errors: function(errors) { + module.debug('Adding form error messages', errors); + $message + .html( settings.templates.error(errors) ) + ; + } + }, + + remove: { + prompt: function(field) { + var + $field = module.get.field(field.identifier), + $fieldGroup = $field.closest($group), + $prompt = $fieldGroup.find(selector.prompt) + ; + $fieldGroup + .removeClass(className.error) + ; + if(settings.inline && $prompt.is(':visible')) { + module.verbose('Removing prompt for field', field); + if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) { + $prompt.transition(settings.transition + ' out', settings.duration, function() { + $prompt.remove(); + }); + } + else { + $prompt + .fadeOut(settings.duration, function(){ + $prompt.remove(); + }) + ; + } + } + } + }, + + validate: { + + form: function(event) { + var + allValid = true + ; + // reset errors + formErrors = []; + $.each(validation, function(fieldName, field) { + if( !( module.validate.field(field) ) ) { + allValid = false; + } + }); + if(allValid) { + module.debug('Form has no validation errors, submitting'); + $module + .removeClass(className.error) + .addClass(className.success) + ; + return $.proxy(settings.onSuccess, this)(event); + } + else { + module.debug('Form has errors'); + $module.addClass(className.error); + if(!settings.inline) { + module.add.errors(formErrors); + } + return $.proxy(settings.onFailure, this)(formErrors); + } + }, + + // takes a validation object and returns whether field passes validation + field: function(field) { + var + $field = module.get.field(field.identifier), + fieldValid = true, + fieldErrors = [] + ; + if(field.rules !== undefined) { + $.each(field.rules, function(index, rule) { + if( module.has.field(field.identifier) && !( module.validate.rule(field, rule) ) ) { + module.debug('Field is invalid', field.identifier, rule.type); + fieldErrors.push(rule.prompt); + fieldValid = false; + } + }); + } + if(fieldValid) { + module.remove.prompt(field, fieldErrors); + $.proxy(settings.onValid, $field)(); + } + else { + formErrors = formErrors.concat(fieldErrors); + module.add.prompt(field.identifier, fieldErrors); + $.proxy(settings.onInvalid, $field)(fieldErrors); + return false; + } + return true; + }, + + // takes validation rule and returns whether field passes rule + rule: function(field, validation) { + var + $field = module.get.field(field.identifier), + type = validation.type, + value = $.trim($field.val() + ''), + + bracketRegExp = /\[(.*)\]/i, + bracket = bracketRegExp.exec(type), + isValid = true, + ancillary, + functionType + ; + // if bracket notation is used, pass in extra parameters + if(bracket !== undefined && bracket !== null) { + ancillary = '' + bracket[1]; + functionType = type.replace(bracket[0], ''); + isValid = $.proxy(settings.rules[functionType], $module)(value, ancillary); + } + // normal notation + else { + isValid = $.proxy(settings.rules[type], $field)(value); + } + return isValid; + } + }, + + setting: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if($allModules.size() > 1) { + title += ' ' + '(' + $allModules.size() + ')'; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + + }) + ; + + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + +$.fn.form.settings = { + + name : 'Form', + namespace : 'form', + + debug : true, + verbose : true, + performance : true, + + + keyboardShortcuts : true, + on : 'submit', + inline : false, + + delay : 200, + revalidate : true, + + transition : 'scale', + duration : 150, + + + onValid : function() {}, + onInvalid : function() {}, + onSuccess : function() { return true; }, + onFailure : function() { return false; }, + + metadata : { + validate: 'validate' + }, + + selector : { + message : '.error.message', + field : 'input, textarea, select', + group : '.field', + input : 'input', + prompt : '.prompt', + submit : '.submit' + }, + + className : { + error : 'error', + success : 'success', + down : 'down', + label : 'ui label prompt' + }, + + // errors + error: { + method : 'The method you called is not defined.' + }, + + + templates: { + error: function(errors) { + var + html = '
    ' + ; + $.each(errors, function(index, value) { + html += '
  • ' + value + '
  • '; + }); + html += '
'; + return $(html); + }, + prompt: function(errors) { + return $('
') + .addClass('ui red pointing prompt label') + .html(errors[0]) + ; + } + }, + + rules: { + checked: function() { + return ($(this).filter(':checked').size() > 0); + }, + empty: function(value) { + return !(value === undefined || '' === value); + }, + email: function(value){ + var + emailRegExp = new RegExp("[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?", "i") + ; + return emailRegExp.test(value); + }, + length: function(value, requiredLength) { + return (value !== undefined) + ? (value.length >= requiredLength) + : false + ; + }, + not: function(value, notValue) { + return (value != notValue); + }, + contains: function(value, text) { + text = text.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&"); + return (value.search(text) !== -1); + }, + is: function(value, text) { + return (value == text); + }, + maxLength: function(value, maxLength) { + return (value !== undefined) + ? (value.length <= maxLength) + : false + ; + }, + match: function(value, fieldIdentifier) { + // use either id or name of field + var + $form = $(this), + matchingValue + ; + if($form.find('#' + fieldIdentifier).size() > 0) { + matchingValue = $form.find('#' + fieldIdentifier).val(); + } + else if($form.find('[name=' + fieldIdentifier +']').size() > 0) { + matchingValue = $form.find('[name=' + fieldIdentifier + ']').val(); + } + else if( $form.find('[data-validate="'+ fieldIdentifier +'"]').size() > 0 ) { + matchingValue = $form.find('[data-validate="'+ fieldIdentifier +'"]').val(); + } + return (matchingValue !== undefined) + ? ( value.toString() == matchingValue.toString() ) + : false + ; + }, + url: function(value) { + var + urlRegExp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/ + ; + return urlRegExp.test(value); + } + } + +}; + +})( jQuery, window , document ); + +/* + * # Semantic - State + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ( $, window, document, undefined ) { + +$.fn.state = function(parameters) { + var + $allModules = $(this), + settings = $.extend(true, {}, $.fn.state.settings, parameters), + + moduleSelector = $allModules.selector || '', + + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + + // shortcuts + error = settings.error, + metadata = settings.metadata, + className = settings.className, + namespace = settings.namespace, + states = settings.states, + text = settings.text, + + eventNamespace = '.' + namespace, + moduleNamespace = namespace + '-module', + + + returnedValue + ; + $allModules + .each(function() { + var + $module = $(this), + + element = this, + instance = $module.data(moduleNamespace), + + module + ; + module = { + + initialize: function() { + module.verbose('Initializing module'); + + // allow module to guess desired state based on element + if(settings.automatic) { + module.add.defaults(); + } + + // bind events with delegated events + if(settings.context && moduleSelector !== '') { + if( module.allows('hover') ) { + $(element, settings.context) + .on(moduleSelector, 'mouseenter' + eventNamespace, module.enable.hover) + .on(moduleSelector, 'mouseleave' + eventNamespace, module.disable.hover) + ; + } + if( module.allows('down') ) { + $(element, settings.context) + .on(moduleSelector, 'mousedown' + eventNamespace, module.enable.down) + .on(moduleSelector, 'mouseup' + eventNamespace, module.disable.down) + ; + } + if( module.allows('focus') ) { + $(element, settings.context) + .on(moduleSelector, 'focus' + eventNamespace, module.enable.focus) + .on(moduleSelector, 'blur' + eventNamespace, module.disable.focus) + ; + } + $(settings.context) + .on(moduleSelector, 'mouseenter' + eventNamespace, module.change.text) + .on(moduleSelector, 'mouseleave' + eventNamespace, module.reset.text) + .on(moduleSelector, 'click' + eventNamespace, module.toggle.state) + ; + } + else { + if( module.allows('hover') ) { + $module + .on('mouseenter' + eventNamespace, module.enable.hover) + .on('mouseleave' + eventNamespace, module.disable.hover) + ; + } + if( module.allows('down') ) { + $module + .on('mousedown' + eventNamespace, module.enable.down) + .on('mouseup' + eventNamespace, module.disable.down) + ; + } + if( module.allows('focus') ) { + $module + .on('focus' + eventNamespace, module.enable.focus) + .on('blur' + eventNamespace, module.disable.focus) + ; + } + $module + .on('mouseenter' + eventNamespace, module.change.text) + .on('mouseleave' + eventNamespace, module.reset.text) + .on('click' + eventNamespace, module.toggle.state) + ; + } + module.instantiate(); + }, + + instantiate: function() { + module.verbose('Storing instance of module', module); + instance = module; + $module + .data(moduleNamespace, module) + ; + }, + + destroy: function() { + module.verbose('Destroying previous module', instance); + $module + .off(eventNamespace) + .removeData(moduleNamespace) + ; + }, + + refresh: function() { + module.verbose('Refreshing selector cache'); + $module = $(element); + }, + + add: { + defaults: function() { + var + userStates = parameters && $.isPlainObject(parameters.states) + ? parameters.states + : {} + ; + $.each(settings.defaults, function(type, typeStates) { + if( module.is[type] !== undefined && module.is[type]() ) { + module.verbose('Adding default states', type, element); + $.extend(settings.states, typeStates, userStates); + } + }); + } + }, + + is: { + + active: function() { + return $module.hasClass(className.active); + }, + loading: function() { + return $module.hasClass(className.loading); + }, + inactive: function() { + return !( $module.hasClass(className.active) ); + }, + + enabled: function() { + return !( $module.is(settings.filter.active) ); + }, + disabled: function() { + return ( $module.is(settings.filter.active) ); + }, + textEnabled: function() { + return !( $module.is(settings.filter.text) ); + }, + + // definitions for automatic type detection + button: function() { + return $module.is('.button:not(a, .submit)'); + }, + input: function() { + return $module.is('input'); + } + }, + + allow: function(state) { + module.debug('Now allowing state', state); + states[state] = true; + }, + disallow: function(state) { + module.debug('No longer allowing', state); + states[state] = false; + }, + + allows: function(state) { + return states[state] || false; + }, + + enable: { + state: function(state) { + if(module.allows(state)) { + $module.addClass( className[state] ); + } + }, + // convenience + focus: function() { + $module.addClass(className.focus); + }, + hover: function() { + $module.addClass(className.hover); + }, + down: function() { + $module.addClass(className.down); + }, + }, + + disable: { + state: function(state) { + if(module.allows(state)) { + $module.removeClass( className[state] ); + } + }, + // convenience + focus: function() { + $module.removeClass(className.focus); + }, + hover: function() { + $module.removeClass(className.hover); + }, + down: function() { + $module.removeClass(className.down); + }, + }, + + toggle: { + state: function() { + var + apiRequest = $module.data(metadata.promise) + ; + if( module.allows('active') && module.is.enabled() ) { + module.refresh(); + if(apiRequest !== undefined) { + module.listenTo(apiRequest); + } + else { + module.change.state(); + } + } + } + }, + + listenTo: function(apiRequest) { + module.debug('API request detected, waiting for state signal', apiRequest); + if(apiRequest) { + if(text.loading) { + module.update.text(text.loading); + } + $.when(apiRequest) + .then(function() { + if(apiRequest.state() == 'resolved') { + module.debug('API request succeeded'); + settings.activateTest = function(){ return true; }; + settings.deactivateTest = function(){ return true; }; + } + else { + module.debug('API request failed'); + settings.activateTest = function(){ return false; }; + settings.deactivateTest = function(){ return false; }; + } + module.change.state(); + }) + ; + } + // xhr exists but set to false, beforeSend killed the xhr + else { + settings.activateTest = function(){ return false; }; + settings.deactivateTest = function(){ return false; }; + } + }, + + // checks whether active/inactive state can be given + change: { + + state: function() { + module.debug('Determining state change direction'); + // inactive to active change + if( module.is.inactive() ) { + module.activate(); + } + else { + module.deactivate(); + } + if(settings.sync) { + module.sync(); + } + $.proxy(settings.onChange, element)(); + }, + + text: function() { + if( module.is.textEnabled() ) { + if( module.is.active() ) { + if(text.hover) { + module.verbose('Changing text to hover text', text.hover); + module.update.text(text.hover); + } + else if(text.disable) { + module.verbose('Changing text to disable text', text.disable); + module.update.text(text.disable); + } + } + else { + if(text.hover) { + module.verbose('Changing text to hover text', text.disable); + module.update.text(text.hover); + } + else if(text.enable){ + module.verbose('Changing text to enable text', text.enable); + module.update.text(text.enable); + } + } + } + } + + }, + + activate: function() { + if( $.proxy(settings.activateTest, element)() ) { + module.debug('Setting state to active'); + $module + .addClass(className.active) + ; + module.update.text(text.active); + } + $.proxy(settings.onActivate, element)(); + }, + + deactivate: function() { + if($.proxy(settings.deactivateTest, element)() ) { + module.debug('Setting state to inactive'); + $module + .removeClass(className.active) + ; + module.update.text(text.inactive); + } + $.proxy(settings.onDeactivate, element)(); + }, + + sync: function() { + module.verbose('Syncing other buttons to current state'); + if( module.is.active() ) { + $allModules + .not($module) + .state('activate'); + } + else { + $allModules + .not($module) + .state('deactivate') + ; + } + }, + + get: { + text: function() { + return (settings.selector.text) + ? $module.find(settings.selector.text).text() + : $module.html() + ; + }, + textFor: function(state) { + return text[state] || false; + } + }, + + flash: { + text: function(text, duration) { + var + previousText = module.get.text() + ; + module.debug('Flashing text message', text, duration); + text = text || settings.text.flash; + duration = duration || settings.flashDuration; + module.update.text(text); + setTimeout(function(){ + module.update.text(previousText); + }, duration); + } + }, + + reset: { + // on mouseout sets text to previous value + text: function() { + var + activeText = text.active || $module.data(metadata.storedText), + inactiveText = text.inactive || $module.data(metadata.storedText) + ; + if( module.is.textEnabled() ) { + if( module.is.active() && activeText) { + module.verbose('Resetting active text', activeText); + module.update.text(activeText); + } + else if(inactiveText) { + module.verbose('Resetting inactive text', activeText); + module.update.text(inactiveText); + } + } + } + }, + + update: { + text: function(text) { + var + currentText = module.get.text() + ; + if(text && text !== currentText) { + module.debug('Updating text', text); + if(settings.selector.text) { + $module + .data(metadata.storedText, text) + .find(settings.selector.text) + .text(text) + ; + } + else { + $module + .data(metadata.storedText, text) + .html(text) + ; + } + } + else { + module.debug('Text is already sane, ignoring update', text); + } + } + }, + + setting: function(name, value) { + module.debug('Changing setting', name, value); + if(value !== undefined) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else { + settings[name] = value; + } + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + module.debug('Changing internal', name, value); + if(value !== undefined) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else { + module[name] = value; + } + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if($allModules.size() > 1) { + title += ' ' + '(' + $allModules.size() + ')'; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + + }) + ; + + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + +$.fn.state.settings = { + + // module info + name : 'State', + + // debug output + debug : true, + + // verbose debug output + verbose : true, + + // namespace for events + namespace : 'state', + + // debug data includes performance + performance: true, + + // callback occurs on state change + onActivate : function() {}, + onDeactivate : function() {}, + onChange : function() {}, + + // state test functions + activateTest : function() { return true; }, + deactivateTest : function() { return true; }, + + // whether to automatically map default states + automatic : true, + + // activate / deactivate changes all elements instantiated at same time + sync : false, + + // default flash text duration, used for temporarily changing text of an element + flashDuration : 3000, + + // selector filter + filter : { + text : '.loading, .disabled', + active : '.disabled' + }, + + context : false, + + // error + error: { + method : 'The method you called is not defined.' + }, + + // metadata + metadata: { + promise : 'promise', + storedText : 'stored-text' + }, + + // change class on state + className: { + focus : 'focus', + hover : 'hover', + down : 'down', + active : 'active', + loading : 'loading' + }, + + selector: { + // selector for text node + text: false + }, + + defaults : { + input: { + hover : true, + focus : true, + down : true, + loading : false, + active : false + }, + button: { + hover : true, + focus : false, + down : true, + active : true, + loading : true + } + }, + + states : { + hover : true, + focus : true, + down : true, + loading : false, + active : false + }, + + text : { + flash : false, + hover : false, + active : false, + inactive : false, + enable : false, + disable : false + } + +}; + + + +})( jQuery, window , document ); + +/* + * # Semantic - Chatroom + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ($, window, document, undefined) { + +$.fn.chatroom = function(parameters) { + var + $allModules = $(this), + moduleSelector = $allModules.selector || '', + + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + returnedValue + ; + $(this) + .each(function() { + var + settings = $.extend(true, {}, $.fn.chatroom.settings, parameters), + + className = settings.className, + namespace = settings.namespace, + selector = settings.selector, + error = settings.error, + + $module = $(this), + + $expandButton = $module.find(selector.expandButton), + $userListButton = $module.find(selector.userListButton), + + $userList = $module.find(selector.userList), + $room = $module.find(selector.room), + $userCount = $module.find(selector.userCount), + + $log = $module.find(selector.log), + $message = $module.find(selector.message), + + $messageInput = $module.find(selector.messageInput), + $messageButton = $module.find(selector.messageButton), + + instance = $module.data('module'), + element = this, + + html = '', + users = {}, + + channel, + loggedInUser, + + message, + count, + + height, + + pusher, + module + ; + + module = { + + width: { + log : $log.width(), + userList : $userList.outerWidth() + }, + + initialize: function() { + + // check error conditions + if(Pusher === undefined) { + module.error(error.pusher); + } + if(settings.key === undefined || settings.channelName === undefined) { + module.error(error.key); + return false; + } + else if( !(settings.endpoint.message || settings.endpoint.authentication) ) { + module.error(error.endpoint); + return false; + } + + // define pusher + pusher = new Pusher(settings.key); + Pusher.channel_auth_endpoint = settings.endpoint.authentication; + + channel = pusher.subscribe(settings.channelName); + + channel.bind('pusher:subscription_succeeded', module.user.list.create); + channel.bind('pusher:subscription_error', module.error); + channel.bind('pusher:member_added', module.user.joined); + channel.bind('pusher:member_removed', module.user.left); + channel.bind('update_messages', module.message.receive); + + $.each(settings.customEvents, function(label, value) { + channel.bind(label, value); + }); + + // bind module events + $userListButton + .on('click.' + namespace, module.event.toggleUserList) + ; + $expandButton + .on('click.' + namespace, module.event.toggleExpand) + ; + $messageInput + .on('keydown.' + namespace, module.event.input.keydown) + .on('keyup.' + namespace, module.event.input.keyup) + ; + $messageButton + .on('mouseenter.' + namespace, module.event.hover) + .on('mouseleave.' + namespace, module.event.hover) + .on('click.' + namespace, module.event.submit) + ; + // scroll to bottom of chat log + $log + .animate({ + scrollTop: $log.prop('scrollHeight') + }, 400) + ; + $module + .data('module', module) + .addClass(className.loading) + ; + + }, + + // refresh module + refresh: function() { + // reset width calculations + $userListButton + .removeClass(className.active) + ; + module.width = { + log : $log.width(), + userList : $userList.outerWidth() + }; + if( $userListButton.hasClass(className.active) ) { + module.user.list.hide(); + } + $module.data('module', module); + }, + + user: { + + updateCount: function() { + if(settings.userCount) { + users = $module.data('users'); + count = 0; + $.each(users, function() { + count++; + }); + $userCount + .html( settings.templates.userCount(count) ) + ; + } + }, + + // add user to user list + joined: function(member) { + users = $module.data('users'); + if(member.id != 'anonymous' && users[ member.id ] === undefined ) { + users[ member.id ] = member.info; + if(settings.randomColor && member.info.color === undefined) { + member.info.color = settings.templates.color(member.id); + } + html = settings.templates.userList(member.info); + if(member.info.isAdmin) { + $(html) + .prependTo($userList) + ; + } + else { + $(html) + .appendTo($userList) + ; + } + if(settings.partingMessages) { + $log + .append( settings.templates.joined(member.info) ) + ; + module.message.scroll.test(); + } + module.user.updateCount(); + } + }, + + // remove user from user list + left: function(member) { + users = $module.data('users'); + if(member !== undefined && member.id !== 'anonymous') { + delete users[ member.id ]; + $module + .data('users', users) + ; + $userList + .find('[data-id='+ member.id + ']') + .remove() + ; + if(settings.partingMessages) { + $log + .append( settings.templates.left(member.info) ) + ; + module.message.scroll.test(); + } + module.user.updateCount(); + } + }, + + list: { + + // receives list of members and generates user list + create: function(members) { + users = {}; + members.each(function(member) { + if(member.id !== 'anonymous' && member.id !== 'undefined') { + if(settings.randomColor && member.info.color === undefined) { + member.info.color = settings.templates.color(member.id); + } + // sort list with admin first + html = (member.info.isAdmin) + ? settings.templates.userList(member.info) + html + : html + settings.templates.userList(member.info) + ; + users[ member.id ] = member.info; + } + }); + $module + .data('users', users) + .data('user', users[members.me.id] ) + .removeClass(className.loading) + ; + $userList + .html(html) + ; + module.user.updateCount(); + $.proxy(settings.onJoin, $userList.children())(); + }, + + // shows user list + show: function() { + $log + .animate({ + width: (module.width.log - module.width.userList) + }, { + duration : settings.speed, + easing : settings.easing, + complete : module.message.scroll.move + }) + ; + }, + + // hides user list + hide: function() { + $log + .stop() + .animate({ + width: (module.width.log) + }, { + duration : settings.speed, + easing : settings.easing, + complete : module.message.scroll.move + }) + ; + } + + } + + }, + + message: { + + // handles scrolling of chat log + scroll: { + test: function() { + height = $log.prop('scrollHeight') - $log.height(); + if( Math.abs($log.scrollTop() - height) < settings.scrollArea) { + module.message.scroll.move(); + } + }, + + move: function() { + height = $log.prop('scrollHeight') - $log.height(); + $log + .scrollTop(height) + ; + } + }, + + // sends chat message + send: function(message) { + if( !module.utils.emptyString(message) ) { + $.api({ + url : settings.endpoint.message, + method : 'POST', + data : { + 'message': { + content : message, + timestamp : new Date().getTime() + } + } + }); + } + }, + + // receives chat response and processes + receive: function(response) { + message = response.data; + users = $module.data('users'); + loggedInUser = $module.data('user'); + if(users[ message.userID] !== undefined) { + // logged in user's messages already pushed instantly + if(loggedInUser === undefined || loggedInUser.id != message.userID) { + message.user = users[ message.userID ]; + module.message.display(message); + } + } + }, + + // displays message in chat log + display: function(message) { + $log + .append( settings.templates.message(message) ) + ; + module.message.scroll.test(); + $.proxy(settings.onMessage, $log.children().last() )(); + } + + }, + + expand: function() { + $module + .addClass(className.expand) + ; + $.proxy(settings.onExpand, $module )(); + module.refresh(); + }, + + contract: function() { + $module + .removeClass(className.expand) + ; + $.proxy(settings.onContract, $module )(); + module.refresh(); + }, + + event: { + + input: { + + keydown: function(event) { + if(event.which == 13) { + $messageButton + .addClass(className.down) + ; + } + }, + + keyup: function(event) { + if(event.which == 13) { + $messageButton + .removeClass(className.down) + ; + module.event.submit(); + } + } + + }, + + // handles message form submit + submit: function() { + var + message = $messageInput.val(), + loggedInUser = $module.data('user') + ; + if(loggedInUser !== undefined && !module.utils.emptyString(message)) { + module.message.send(message); + // display immediately + module.message.display({ + user: loggedInUser, + text: message + }); + module.message.scroll.move(); + $messageInput + .val('') + ; + + } + }, + + // handles button click on expand button + toggleExpand: function() { + if( !$module.hasClass(className.expand) ) { + $expandButton + .addClass(className.active) + ; + module.expand(); + } + else { + $expandButton + .removeClass(className.active) + ; + module.contract(); + } + }, + + // handles button click on user list button + toggleUserList: function() { + if( !$log.is(':animated') ) { + if( !$userListButton.hasClass(className.active) ) { + $userListButton + .addClass(className.active) + ; + module.user.list.show(); + } + else { + $userListButton + .removeClass('active') + ; + module.user.list.hide(); + } + } + + } + }, + + utils: { + + emptyString: function(string) { + if(typeof string == 'string') { + return (string.search(/\S/) == -1); + } + return false; + } + + }, + + setting: function(name, value) { + if(value !== undefined) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else { + settings[name] = value; + } + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + maxDepth, + found + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && instance !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + if( $.isPlainObject( instance[value] ) && (depth != maxDepth) ) { + instance = instance[value]; + } + else if( instance[value] !== undefined ) { + found = instance[value]; + } + else { + module.error(error.method, query); + } + }); + } + if ( $.isFunction( found ) ) { + return found.apply(context, passedArguments); + } + return found || false; + } + }; + + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + }) +; + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + + $.fn.chatroom.settings = { + + name : 'Chat', + debug : false, + namespace : 'chat', + + channel : 'present-chat', + + onJoin : function(){}, + onMessage : function(){}, + onExpand : function(){}, + onContract : function(){}, + + customEvents : {}, + + partingMessages : false, + userCount : true, + randomColor : true, + + speed : 300, + easing : 'easeOutQuint', + + // pixels from bottom of chat log that should trigger auto scroll to bottom + scrollArea : 9999, + + endpoint : { + message : false, + authentication : false + }, + + error: { + method : 'The method you called is not defined', + endpoint : 'Please define a message and authentication endpoint.', + key : 'You must specify a pusher key and channel.', + pusher : 'You must include the Pusher library.' + }, + + className : { + expand : 'expand', + active : 'active', + hover : 'hover', + down : 'down', + loading : 'loading' + }, + + selector : { + userCount : '.actions .message', + userListButton : '.actions .list.button', + expandButton : '.actions .expand.button', + room : '.room', + userList : '.room .list', + log : '.room .log', + message : '.room .log .message', + author : '.room log .message .author', + messageInput : '.talk input', + messageButton : '.talk .send.button' + }, + + templates: { + + userCount: function(number) { + return number + ' users in chat'; + }, + + color: function(userID) { + var + colors = [ + '#000000', + '#333333', + '#666666', + '#999999', + '#CC9999', + '#CC6666', + '#CC3333', + '#993333', + '#663333', + '#CC6633', + '#CC9966', + '#CC9933', + '#999966', + '#CCCC66', + '#99CC66', + '#669933', + '#669966', + '#33A3CC', + '#336633', + '#33CCCC', + '#339999', + '#336666', + '#336699', + '#6666CC', + '#9966CC', + '#333399', + '#663366', + '#996699', + '#993366', + '#CC6699' + ] + ; + return colors[ Math.floor( Math.random() * colors.length) ]; + }, + + message: function(message) { + var + html = '' + ; + if(message.user.isAdmin) { + message.user.color = '#55356A'; + html += '
'; + html += ''; + } + /* + else if(message.user.isPro) { + html += '
'; + html += ''; + } + */ + else { + html += '
'; + } + html += '

'; + if(message.user.color !== undefined) { + html += '' + message.user.name + ': '; + } + else { + html += '' + message.user.name + ': '; + } + html += '' + + message.text + + '

' + + '
' + ; + return html; + }, + + joined: function(member) { + return (typeof member.name !== undefined) + ? '
' + member.name + ' has joined the chat.
' + : false + ; + }, + left: function(member) { + return (typeof member.name !== undefined) + ? '
' + member.name + ' has left the chat.
' + : false + ; + }, + + userList: function(member) { + var + html = '' + ; + if(member.isAdmin) { + member.color = '#55356A'; + } + html += '' + + '
'; + return html; + } + + } + + }; + +})( jQuery, window , document ); + +/* + * # Semantic - Checkbox + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ( $, window, document, undefined ) { + +$.fn.checkbox = function(parameters) { + var + $allModules = $(this), + moduleSelector = $allModules.selector || '', + + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + returnedValue + ; + + $allModules + .each(function() { + var + settings = $.extend(true, {}, $.fn.checkbox.settings, parameters), + + className = settings.className, + namespace = settings.namespace, + error = settings.error, + + eventNamespace = '.' + namespace, + moduleNamespace = 'module-' + namespace, + + $module = $(this), + $label = $(this).next(settings.selector.label).first(), + $input = $(this).find(settings.selector.input), + + selector = $module.selector || '', + instance = $module.data(moduleNamespace), + + element = this, + module + ; + + module = { + + initialize: function() { + module.verbose('Initializing checkbox', settings); + if(settings.context && selector !== '') { + module.verbose('Adding delegated events'); + $(element, settings.context) + .on(selector, 'click' + eventNamespace, module.toggle) + .on(selector + ' + ' + settings.selector.label, 'click' + eventNamespace, module.toggle) + ; + } + else { + $module + .on('click' + eventNamespace, module.toggle) + .data(moduleNamespace, module) + ; + $label + .on('click' + eventNamespace, module.toggle) + ; + } + module.instantiate(); + }, + + instantiate: function() { + module.verbose('Storing instance of module', module); + instance = module; + $module + .data(moduleNamespace, module) + ; + }, + + destroy: function() { + module.verbose('Destroying previous module'); + $module + .off(eventNamespace) + .removeData(moduleNamespace) + ; + }, + + is: { + radio: function() { + return $module.hasClass(className.radio); + }, + enabled: function() { + return $input.prop('checked') !== undefined && $input.prop('checked'); + }, + disabled: function() { + return !module.is.enabled(); + } + }, + + can: { + disable: function() { + return (typeof settings.required === 'boolean') + ? settings.required + : !module.is.radio() + ; + } + }, + + enable: function() { + module.debug('Enabling checkbox', $input); + $input + .prop('checked', true) + .trigger('change') + ; + $.proxy(settings.onChange, $input.get())(); + $.proxy(settings.onEnable, $input.get())(); + }, + + disable: function() { + module.debug('Disabling checkbox'); + $input + .prop('checked', false) + .trigger('change') + ; + $.proxy(settings.onChange, $input.get())(); + $.proxy(settings.onDisable, $input.get())(); + }, + + toggle: function(event) { + module.verbose('Determining new checkbox state'); + if( !$input.prop('disabled') ) { + if( module.is.disabled() ) { + module.enable(); + } + else if( module.is.enabled() && module.can.disable() ) { + module.disable(); + } + } + }, + setting: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + }) + ; + + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + +$.fn.checkbox.settings = { + + name : 'Checkbox', + namespace : 'checkbox', + + debug : false, + verbose : true, + performance : true, + + // delegated event context + context : false, + required : 'auto', + + onChange : function(){}, + onEnable : function(){}, + onDisable : function(){}, + + error : { + method : 'The method you called is not defined.' + }, + + selector : { + input : 'input[type=checkbox], input[type=radio]', + label : 'label' + }, + + className : { + radio : 'radio' + } + +}; + +})( jQuery, window , document ); + +/* + * # Semantic - Dimmer + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ( $, window, document, undefined ) { + +$.fn.dimmer = function(parameters) { + var + $allModules = $(this), + + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + + returnedValue + ; + + $allModules + .each(function() { + var + settings = ( $.isPlainObject(parameters) ) + ? $.extend(true, {}, $.fn.dimmer.settings, parameters) + : $.extend({}, $.fn.dimmer.settings), + + selector = settings.selector, + namespace = settings.namespace, + className = settings.className, + error = settings.error, + + eventNamespace = '.' + namespace, + moduleNamespace = 'module-' + namespace, + moduleSelector = $allModules.selector || '', + + clickEvent = ('ontouchstart' in document.documentElement) + ? 'touchstart' + : 'click', + + $module = $(this), + $dimmer, + $dimmable, + + element = this, + instance = $module.data(moduleNamespace), + module + ; + + module = { + + preinitialize: function() { + if( module.is.dimmer() ) { + $dimmable = $module.parent(); + $dimmer = $module; + } + else { + $dimmable = $module; + if( module.has.dimmer() ) { + $dimmer = $dimmable.children(selector.dimmer).first(); + } + else { + $dimmer = module.create(); + } + } + }, + + initialize: function() { + module.debug('Initializing dimmer', settings); + if(settings.on == 'hover') { + $dimmable + .on('mouseenter' + eventNamespace, module.show) + .on('mouseleave' + eventNamespace, module.hide) + ; + } + else if(settings.on == 'click') { + $dimmable + .on(clickEvent + eventNamespace, module.toggle) + ; + } + + if( module.is.page() ) { + module.debug('Setting as a page dimmer', $dimmable); + module.set.pageDimmer(); + } + + if(settings.closable) { + module.verbose('Adding dimmer close event', $dimmer); + $dimmer + .on(clickEvent + eventNamespace, module.event.click) + ; + } + module.set.dimmable(); + module.instantiate(); + }, + + instantiate: function() { + module.verbose('Storing instance of module', module); + instance = module; + $module + .data(moduleNamespace, instance) + ; + }, + + destroy: function() { + module.verbose('Destroying previous module', $dimmer); + $module + .removeData(moduleNamespace) + ; + $dimmable + .off(eventNamespace) + ; + $dimmer + .off(eventNamespace) + ; + }, + + event: { + + click: function(event) { + module.verbose('Determining if event occured on dimmer', event); + if( $dimmer.find(event.target).size() === 0 || $(event.target).is(selector.content) ) { + module.hide(); + event.stopImmediatePropagation(); + } + } + + }, + + addContent: function(element) { + var + $content = $(element) + ; + module.debug('Add content to dimmer', $content); + if($content.parent()[0] !== $dimmer[0]) { + $content.detach().appendTo($dimmer); + } + }, + + create: function() { + return $( settings.template.dimmer() ).appendTo($dimmable); + }, + + animate: { + show: function(callback) { + callback = $.isFunction(callback) + ? callback + : function(){} + ; + module.set.dimmed(); + if(settings.on != 'hover' && settings.useCSS && $.fn.transition !== undefined && $dimmer.transition('is supported')) { + $dimmer + .transition({ + animation : settings.transition + ' in', + queue : true, + duration : module.get.duration(), + complete : function() { + module.set.active(); + callback(); + } + }) + ; + } + else { + module.verbose('Showing dimmer animation with javascript'); + $dimmer + .stop() + .css({ + opacity : 0, + width : '100%', + height : '100%' + }) + .fadeTo(module.get.duration(), 1, function() { + $dimmer.removeAttr('style'); + module.set.active(); + callback(); + }) + ; + } + }, + hide: function(callback) { + callback = $.isFunction(callback) + ? callback + : function(){} + ; + if(settings.on != 'hover' && settings.useCSS && $.fn.transition !== undefined && $dimmer.transition('is supported')) { + module.verbose('Hiding dimmer with css'); + $dimmer + .transition({ + animation : settings.transition + ' out', + duration : module.get.duration(), + queue : true, + complete : function() { + module.remove.dimmed(); + module.remove.active(); + callback(); + } + }) + ; + } + else { + module.verbose('Hiding dimmer with javascript'); + $dimmer + .stop() + .fadeOut(module.get.duration(), function() { + $dimmer.removeAttr('style'); + module.remove.dimmed(); + module.remove.active(); + callback(); + }) + ; + } + } + }, + + get: { + dimmer: function() { + return $dimmer; + }, + duration: function() { + if(typeof settings.duration == 'object') { + if( module.is.active() ) { + return settings.duration.hide; + } + else { + return settings.duration.show; + } + } + return settings.duration; + } + }, + + has: { + dimmer: function() { + return ( $module.children(selector.dimmer).size() > 0 ); + } + }, + + is: { + active: function() { + return $dimmer.hasClass(className.active); + }, + animating: function() { + return ( $dimmer.is(':animated') || $dimmer.hasClass(className.transition) ); + }, + dimmer: function() { + return $module.is(selector.dimmer); + }, + dimmable: function() { + return $module.is(selector.dimmable); + }, + dimmed: function() { + return $dimmable.hasClass(className.dimmed); + }, + disabled: function() { + return $dimmable.hasClass(className.disabled); + }, + enabled: function() { + return !module.is.disabled(); + }, + page: function () { + return $dimmable.is('body'); + }, + pageDimmer: function() { + return $dimmer.hasClass(className.pageDimmer); + } + }, + + can: { + show: function() { + return !$dimmer.hasClass(className.disabled); + } + }, + + set: { + active: function() { + module.set.dimmed(); + $dimmer + .removeClass(className.transition) + .addClass(className.active) + ; + }, + dimmable: function() { + $dimmable.addClass(className.dimmable); + }, + dimmed: function() { + $dimmable.addClass(className.dimmed); + }, + pageDimmer: function() { + $dimmer.addClass(className.pageDimmer); + }, + disabled: function() { + $dimmer.addClass(className.disabled); + } + }, + + remove: { + active: function() { + $dimmer + .removeClass(className.transition) + .removeClass(className.active) + ; + }, + dimmed: function() { + $dimmable.removeClass(className.dimmed); + }, + disabled: function() { + $dimmer.removeClass(className.disabled); + } + }, + + show: function(callback) { + callback = $.isFunction(callback) + ? callback + : function(){} + ; + module.debug('Showing dimmer', $dimmer, settings); + if( !module.is.active() && module.is.enabled() ) { + module.animate.show(callback); + $.proxy(settings.onShow, element)(); + $.proxy(settings.onChange, element)(); + } + else { + module.debug('Dimmer is already shown or disabled'); + } + }, + + hide: function(callback) { + callback = $.isFunction(callback) + ? callback + : function(){} + ; + if( module.is.active() || module.is.animating() ) { + module.debug('Hiding dimmer', $dimmer); + module.animate.hide(callback); + $.proxy(settings.onHide, element)(); + $.proxy(settings.onChange, element)(); + } + else { + module.debug('Dimmer is not visible'); + } + }, + + toggle: function() { + module.verbose('Toggling dimmer visibility', $dimmer); + if( !module.is.dimmed() ) { + module.show(); + } + else { + module.hide(); + } + }, + + setting: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if($allModules.size() > 1) { + title += ' ' + '(' + $allModules.size() + ')'; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + + module.preinitialize(); + + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + }) + ; + + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + +$.fn.dimmer.settings = { + + name : 'Dimmer', + namespace : 'dimmer', + + debug : false, + verbose : true, + performance : true, + + transition : 'fade', + useCSS : true, + on : false, + closable : true, + + duration : { + show : 500, + hide : 500 + }, + + onChange : function(){}, + onShow : function(){}, + onHide : function(){}, + + error : { + method : 'The method you called is not defined.' + }, + + selector: { + dimmable : '.ui.dimmable', + dimmer : '.ui.dimmer', + content : '.ui.dimmer > .content, .ui.dimmer > .content > .center' + }, + + template: { + dimmer: function() { + return $('
').attr('class', 'ui dimmer'); + } + }, + + className : { + active : 'active', + dimmable : 'ui dimmable', + dimmed : 'dimmed', + disabled : 'disabled', + pageDimmer : 'page', + hide : 'hide', + show : 'show', + transition : 'transition' + } + +}; + +})( jQuery, window , document ); +/* + * # Semantic - Dropdown + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ +;(function ( $, window, document, undefined ) { + +$.fn.dropdown = function(parameters) { + var + $allModules = $(this), + $document = $(document), + + moduleSelector = $allModules.selector || '', + + hasTouch = ('ontouchstart' in document.documentElement), + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + returnedValue + ; + + $allModules + .each(function() { + var + settings = ( $.isPlainObject(parameters) ) + ? $.extend(true, {}, $.fn.dropdown.settings, parameters) + : $.extend({}, $.fn.dropdown.settings), + + className = settings.className, + metadata = settings.metadata, + namespace = settings.namespace, + selector = settings.selector, + error = settings.error, + + eventNamespace = '.' + namespace, + moduleNamespace = 'module-' + namespace, + + $module = $(this), + $item = $module.find(selector.item), + $text = $module.find(selector.text), + $input = $module.find(selector.input), + + $menu = $module.children(selector.menu), + + + element = this, + instance = $module.data(moduleNamespace), + module + ; + + module = { + + initialize: function() { + module.debug('Initializing dropdown', settings); + + module.save.defaults(); + module.set.selected(); + + if(hasTouch) { + module.bind.touchEvents(); + } + module.bind.mouseEvents(); + module.instantiate(); + }, + + instantiate: function() { + module.verbose('Storing instance of dropdown', module); + instance = module; + $module + .data(moduleNamespace, module) + ; + }, + + destroy: function() { + module.verbose('Destroying previous dropdown for', $module); + $item + .off(eventNamespace) + ; + $module + .off(eventNamespace) + .removeData(moduleNamespace) + ; + }, + + bind: { + touchEvents: function() { + module.debug('Touch device detected binding touch events'); + $module + .on('touchstart' + eventNamespace, module.event.test.toggle) + ; + $item + .on('touchstart' + eventNamespace, module.event.item.mouseenter) + .on('touchstart' + eventNamespace, module.event.item.click) + ; + }, + mouseEvents: function() { + module.verbose('Mouse detected binding mouse events'); + if(settings.on == 'click') { + $module + .on('click' + eventNamespace, module.event.test.toggle) + ; + } + else if(settings.on == 'hover') { + $module + .on('mouseenter' + eventNamespace, module.delay.show) + .on('mouseleave' + eventNamespace, module.delay.hide) + ; + } + else { + $module + .on(settings.on + eventNamespace, module.toggle) + ; + } + $item + .on('mouseenter' + eventNamespace, module.event.item.mouseenter) + .on('mouseleave' + eventNamespace, module.event.item.mouseleave) + .on('click' + eventNamespace, module.event.item.click) + ; + }, + intent: function() { + module.verbose('Binding hide intent event to document'); + if(hasTouch) { + $document + .on('touchstart' + eventNamespace, module.event.test.touch) + .on('touchmove' + eventNamespace, module.event.test.touch) + ; + } + $document + .on('click' + eventNamespace, module.event.test.hide) + ; + } + }, + + unbind: { + intent: function() { + module.verbose('Removing hide intent event from document'); + if(hasTouch) { + $document + .off('touchstart' + eventNamespace) + .off('touchmove' + eventNamespace) + ; + } + $document + .off('click' + eventNamespace) + ; + } + }, + + event: { + test: { + toggle: function(event) { + if( module.determine.intent(event, module.toggle) ) { + event.preventDefault(); + } + }, + touch: function(event) { + module.determine.intent(event, function() { + if(event.type == 'touchstart') { + module.timer = setTimeout(module.hide, settings.delay.touch); + } + else if(event.type == 'touchmove') { + clearTimeout(module.timer); + } + }); + event.stopPropagation(); + }, + hide: function(event) { + module.determine.intent(event, module.hide); + } + }, + + item: { + + mouseenter: function(event) { + var + $currentMenu = $(this).find(selector.submenu), + $otherMenus = $(this).siblings(selector.item).children(selector.menu) + ; + if($currentMenu.length > 0 || $otherMenus.length > 0) { + clearTimeout(module.itemTimer); + module.itemTimer = setTimeout(function() { + if($otherMenus.length > 0) { + module.animate.hide(false, $otherMenus.filter(':visible')); + } + if($currentMenu.length > 0) { + module.verbose('Showing sub-menu', $currentMenu); + module.animate.show(false, $currentMenu); + } + }, settings.delay.show * 2); + event.preventDefault(); + event.stopPropagation(); + } + }, + + mouseleave: function(event) { + var + $currentMenu = $(this).find(selector.menu) + ; + if($currentMenu.size() > 0) { + clearTimeout(module.itemTimer); + module.itemTimer = setTimeout(function() { + module.verbose('Hiding sub-menu', $currentMenu); + module.animate.hide(false, $currentMenu); + }, settings.delay.hide); + } + }, + + click: function (event) { + var + $choice = $(this), + text = ( $choice.data(metadata.text) !== undefined ) + ? $choice.data(metadata.text) + : $choice.text(), + value = ( $choice.data(metadata.value) !== undefined) + ? $choice.data(metadata.value) + : (typeof text === 'string') + ? text.toLowerCase() + : text, + callback = function() { + module.determine.selectAction(text, value); + $.proxy(settings.onChange, element)(value, text); + } + ; + if( $choice.find(selector.menu).size() === 0 ) { + if(event.type == 'touchstart') { + $choice.one('click', callback); + } + else { + callback(); + } + } + } + + }, + + resetStyle: function() { + $(this).removeAttr('style'); + } + + }, + + determine: { + selectAction: function(text, value) { + module.verbose('Determining action', settings.action); + if( $.isFunction( module.action[settings.action] ) ) { + module.verbose('Triggering preset action', settings.action, text, value); + module.action[ settings.action ](text, value); + } + else if( $.isFunction(settings.action) ) { + module.verbose('Triggering user action', settings.action, text, value); + settings.action(text, value); + } + else { + module.error(error.action, settings.action); + } + }, + intent: function(event, callback) { + module.debug('Determining whether event occurred in dropdown', event.target); + callback = callback || function(){}; + if( $(event.target).closest($menu).size() === 0 ) { + module.verbose('Triggering event', callback); + callback(); + return true; + } + else { + module.verbose('Event occurred in dropdown, canceling callback'); + return false; + } + } + }, + + action: { + + nothing: function() {}, + + hide: function() { + module.hide(); + }, + + activate: function(text, value) { + value = (value !== undefined) + ? value + : text + ; + module.set.selected(value); + module.set.value(value); + module.hide(); + }, + + /* Deprecated */ + auto: function(text, value) { + value = (value !== undefined) + ? value + : text + ; + module.set.selected(value); + module.set.value(value); + module.hide(); + }, + + /* Deprecated */ + changeText: function(text, value) { + value = (value !== undefined) + ? value + : text + ; + module.set.selected(value); + module.hide(); + }, + + /* Deprecated */ + updateForm: function(text, value) { + value = (value !== undefined) + ? value + : text + ; + module.set.selected(value); + module.set.value(value); + module.hide(); + } + + }, + + get: { + text: function() { + return $text.text(); + }, + value: function() { + return ($input.size() > 0) + ? $input.val() + : $module.data(metadata.value) + ; + }, + item: function(value, strict) { + var + $selectedItem = false + ; + value = (value !== undefined) + ? value + : ( module.get.value() !== undefined) + ? module.get.value() + : module.get.text() + ; + if(strict === undefined && value === '') { + module.debug('Ambiguous dropdown value using strict type check', value); + strict = true; + } + else { + strict = strict || false; + } + if(value !== undefined) { + $item + .each(function() { + var + $choice = $(this), + optionText = ( $choice.data(metadata.text) !== undefined ) + ? $choice.data(metadata.text) + : $choice.text(), + optionValue = ( $choice.data(metadata.value) !== undefined ) + ? $choice.data(metadata.value) + : (typeof optionText === 'string') + ? optionText.toLowerCase() + : optionText + ; + if(strict) { + if( optionValue === value ) { + $selectedItem = $(this); + } + else if( !$selectedItem && optionText === value ) { + $selectedItem = $(this); + } + } + else { + if( optionValue == value ) { + $selectedItem = $(this); + } + else if( !$selectedItem && optionText == value ) { + $selectedItem = $(this); + } + } + }) + ; + } + else { + value = module.get.text(); + } + return $selectedItem || false; + } + }, + + restore: { + defaults: function() { + module.restore.defaultText(); + module.restore.defaultValue(); + }, + defaultText: function() { + var + defaultText = $module.data(metadata.defaultText) + ; + module.debug('Restoring default text', defaultText); + module.set.text(defaultText); + }, + defaultValue: function() { + var + defaultValue = $module.data(metadata.defaultValue) + ; + if(defaultValue !== undefined) { + module.debug('Restoring default value', defaultValue); + module.set.selected(defaultValue); + module.set.value(defaultValue); + } + } + }, + + save: { + defaults: function() { + module.save.defaultText(); + module.save.defaultValue(); + }, + defaultValue: function() { + $module.data(metadata.defaultValue, module.get.value() ); + }, + defaultText: function() { + $module.data(metadata.defaultText, $text.text() ); + } + }, + + set: { + text: function(text) { + module.debug('Changing text', text, $text); + $text.removeClass(className.placeholder); + $text.text(text); + }, + value: function(value) { + module.debug('Adding selected value to hidden input', value, $input); + if($input.size() > 0) { + $input + .val(value) + .trigger('change') + ; + } + else { + $module.data(metadata.value, value); + } + }, + active: function() { + $module.addClass(className.active); + }, + visible: function() { + $module.addClass(className.visible); + }, + selected: function(value) { + var + $selectedItem = module.get.item(value), + selectedText + ; + if($selectedItem) { + module.debug('Setting selected menu item to', $selectedItem); + selectedText = ($selectedItem.data(metadata.text) !== undefined) + ? $selectedItem.data(metadata.text) + : $selectedItem.text() + ; + $item + .removeClass(className.active) + ; + $selectedItem + .addClass(className.active) + ; + module.set.text(selectedText); + } + } + }, + + remove: { + active: function() { + $module.removeClass(className.active); + }, + visible: function() { + $module.removeClass(className.visible); + } + }, + + is: { + selection: function() { + return $module.hasClass(className.selection); + }, + animated: function($subMenu) { + return ($subMenu) + ? $subMenu.is(':animated') || $subMenu.transition('is animating') + : $menu.is(':animated') || $menu.transition('is animating') + ; + }, + visible: function($subMenu) { + return ($subMenu) + ? $subMenu.is(':visible') + : $menu.is(':visible') + ; + }, + hidden: function($subMenu) { + return ($subMenu) + ? $subMenu.is(':not(:visible)') + : $menu.is(':not(:visible)') + ; + } + }, + + can: { + click: function() { + return (hasTouch || settings.on == 'click'); + }, + show: function() { + return !$module.hasClass(className.disabled); + } + }, + + animate: { + show: function(callback, $subMenu) { + var + $currentMenu = $subMenu || $menu + ; + callback = callback || function(){}; + if( module.is.hidden($currentMenu) ) { + module.verbose('Doing menu show animation', $currentMenu); + if(settings.transition == 'none') { + callback(); + } + else if($.fn.transition !== undefined && $module.transition('is supported')) { + $currentMenu + .transition({ + animation : settings.transition + ' in', + duration : settings.duration, + complete : callback, + queue : false + }) + ; + } + else if(settings.transition == 'slide down') { + $currentMenu + .hide() + .clearQueue() + .children() + .clearQueue() + .css('opacity', 0) + .delay(50) + .animate({ + opacity : 1 + }, settings.duration, 'easeOutQuad', module.event.resetStyle) + .end() + .slideDown(100, 'easeOutQuad', function() { + $.proxy(module.event.resetStyle, this)(); + callback(); + }) + ; + } + else if(settings.transition == 'fade') { + $currentMenu + .hide() + .clearQueue() + .fadeIn(settings.duration, function() { + $.proxy(module.event.resetStyle, this)(); + callback(); + }) + ; + } + else { + module.error(error.transition, settings.transition); + } + } + }, + hide: function(callback, $subMenu) { + var + $currentMenu = $subMenu || $menu + ; + callback = callback || function(){}; + if(module.is.visible($currentMenu) ) { + module.verbose('Doing menu hide animation', $currentMenu); + if($.fn.transition !== undefined && $module.transition('is supported')) { + $currentMenu + .transition({ + animation : settings.transition + ' out', + duration : settings.duration, + complete : callback, + queue : false + }) + ; + } + else if(settings.transition == 'none') { + callback(); + } + else if(settings.transition == 'slide down') { + $currentMenu + .show() + .clearQueue() + .children() + .clearQueue() + .css('opacity', 1) + .animate({ + opacity : 0 + }, 100, 'easeOutQuad', module.event.resetStyle) + .end() + .delay(50) + .slideUp(100, 'easeOutQuad', function() { + $.proxy(module.event.resetStyle, this)(); + callback(); + }) + ; + } + else if(settings.transition == 'fade') { + $currentMenu + .show() + .clearQueue() + .fadeOut(150, function() { + $.proxy(module.event.resetStyle, this)(); + callback(); + }) + ; + } + else { + module.error(error.transition); + } + } + } + }, + + show: function() { + module.debug('Checking if dropdown can show'); + if( module.is.hidden() ) { + module.hideOthers(); + module.set.active(); + module.animate.show(function() { + if( module.can.click() ) { + module.bind.intent(); + } + module.set.visible(); + }); + $.proxy(settings.onShow, element)(); + } + }, + + hide: function() { + if( !module.is.animated() && module.is.visible() ) { + module.debug('Hiding dropdown'); + if( module.can.click() ) { + module.unbind.intent(); + } + module.remove.active(); + module.animate.hide(module.remove.visible); + $.proxy(settings.onHide, element)(); + } + }, + + delay: { + show: function() { + module.verbose('Delaying show event to ensure user intent'); + clearTimeout(module.timer); + module.timer = setTimeout(module.show, settings.delay.show); + }, + hide: function() { + module.verbose('Delaying hide event to ensure user intent'); + clearTimeout(module.timer); + module.timer = setTimeout(module.hide, settings.delay.hide); + } + }, + + hideOthers: function() { + module.verbose('Finding other dropdowns to hide'); + $allModules + .not($module) + .has(selector.menu + ':visible') + .dropdown('hide') + ; + }, + + toggle: function() { + module.verbose('Toggling menu visibility'); + if( module.is.hidden() ) { + module.show(); + } + else { + module.hide(); + } + }, + + setting: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + module.error(error.method, query); + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + }) + ; + + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + +$.fn.dropdown.settings = { + + name : 'Dropdown', + namespace : 'dropdown', + + debug : false, + verbose : true, + performance : true, + + on : 'click', + action : 'activate', + + delay: { + show : 200, + hide : 300, + touch : 50 + }, + + transition : 'slide down', + duration : 250, + + onChange : function(value, text){}, + onShow : function(){}, + onHide : function(){}, + + error : { + action : 'You called a dropdown action that was not defined', + method : 'The method you called is not defined.', + transition : 'The requested transition was not found' + }, + + metadata: { + defaultText : 'defaultText', + defaultValue : 'defaultValue', + text : 'text', + value : 'value' + }, + + selector : { + menu : '.menu', + submenu : '> .menu', + item : '.menu > .item', + text : '> .text', + input : '> input[type="hidden"]' + }, + + className : { + active : 'active', + placeholder : 'default', + disabled : 'disabled', + visible : 'visible', + selection : 'selection' + } + +}; + +// Adds easing +$.extend( $.easing, { + easeOutQuad: function (x, t, b, c, d) { + return -c *(t/=d)*(t-2) + b; + }, +}); + + +})( jQuery, window , document ); +/* + * # Semantic - Modal + * http://github.com/semantic-org/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ( $, window, document, undefined ) { + +$.fn.modal = function(parameters) { + var + $allModules = $(this), + $window = $(window), + $document = $(document), + $body = $('body'), + + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + + requestAnimationFrame = window.requestAnimationFrame + || window.mozRequestAnimationFrame + || window.webkitRequestAnimationFrame + || window.msRequestAnimationFrame + || function(callback) { setTimeout(callback, 0); }, + + returnedValue + ; + + + $allModules + .each(function() { + var + settings = ( $.isPlainObject(parameters) ) + ? $.extend(true, {}, $.fn.modal.settings, parameters) + : $.extend({}, $.fn.modal.settings), + + selector = settings.selector, + className = settings.className, + namespace = settings.namespace, + error = settings.error, + + eventNamespace = '.' + namespace, + moduleNamespace = 'module-' + namespace, + moduleSelector = $allModules.selector || '', + + $module = $(this), + $context = $(settings.context), + $close = $module.find(selector.close), + + $allModals, + $otherModals, + $focusedElement, + $dimmable, + $dimmer, + + element = this, + instance = $module.data(moduleNamespace), + module + ; + + module = { + + initialize: function() { + module.verbose('Initializing dimmer', $context); + + if($.fn.dimmer === undefined) { + module.error(error.dimmer); + return; + } + $dimmable = $context + .dimmer({ + closable : false, + useCSS : true, + duration : { + show : settings.duration * 0.9, + hide : settings.duration * 1.1 + } + }) + ; + + if(settings.detachable) { + $dimmable.dimmer('add content', $module); + } + + $dimmer = $dimmable + .dimmer('get dimmer') + ; + + $otherModals = $module.siblings(selector.modal); + $allModals = $otherModals.add($module); + + module.verbose('Attaching close events', $close); + $close + .on('click' + eventNamespace, module.event.close) + ; + $window + .on('resize' + eventNamespace, module.event.resize) + ; + module.instantiate(); + }, + + instantiate: function() { + module.verbose('Storing instance of modal'); + instance = module; + $module + .data(moduleNamespace, instance) + ; + }, + + destroy: function() { + module.verbose('Destroying previous modal'); + $module + .removeData(moduleNamespace) + .off(eventNamespace) + ; + $close + .off(eventNamespace) + ; + $context + .dimmer('destroy') + ; + }, + + refresh: function() { + module.remove.scrolling(); + module.cacheSizes(); + module.set.screenHeight(); + module.set.type(); + module.set.position(); + }, + + attachEvents: function(selector, event) { + var + $toggle = $(selector) + ; + event = $.isFunction(module[event]) + ? module[event] + : module.toggle + ; + if($toggle.size() > 0) { + module.debug('Attaching modal events to element', selector, event); + $toggle + .off(eventNamespace) + .on('click' + eventNamespace, event) + ; + } + else { + module.error(error.notFound); + } + }, + + event: { + close: function() { + module.verbose('Closing element pressed'); + if( $(this).is(selector.approve) ) { + if($.proxy(settings.onApprove, element)() !== false) { + module.hide(); + } + else { + module.verbose('Approve callback returned false cancelling hide'); + } + } + else if( $(this).is(selector.deny) ) { + if($.proxy(settings.onDeny, element)() !== false) { + module.hide(); + } + else { + module.verbose('Deny callback returned false cancelling hide'); + } + } + else { + module.hide(); + } + }, + click: function(event) { + if( $(event.target).closest(selector.modal).size() === 0 ) { + module.debug('Dimmer clicked, hiding all modals'); + if(settings.allowMultiple) { + module.hide(); + } + else { + module.hideAll(); + } + event.stopImmediatePropagation(); + } + }, + debounce: function(method, delay) { + clearTimeout(module.timer); + module.timer = setTimeout(method, delay); + }, + keyboard: function(event) { + var + keyCode = event.which, + escapeKey = 27 + ; + if(keyCode == escapeKey) { + if(settings.closable) { + module.debug('Escape key pressed hiding modal'); + module.hide(); + } + else { + module.debug('Escape key pressed, but closable is set to false'); + } + event.preventDefault(); + } + }, + resize: function() { + if( $dimmable.dimmer('is active') ) { + requestAnimationFrame(module.refresh); + } + } + }, + + toggle: function() { + if( module.is.active() ) { + module.hide(); + } + else { + module.show(); + } + }, + + show: function(callback) { + callback = $.isFunction(callback) + ? callback + : function(){} + ; + module.showDimmer(); + module.showModal(callback); + }, + + showModal: function(callback) { + callback = $.isFunction(callback) + ? callback + : function(){} + ; + if( !module.is.active() ) { + if(module.cache === undefined) { + module.cacheSizes(); + } + module.set.position(); + module.set.screenHeight(); + module.set.type(); + + if( $otherModals.filter(':visible').size() > 0 && !settings.allowMultiple) { + module.debug('Other modals visible, queueing show animation'); + module.hideOthers(module.showModal); + } + else { + $.proxy(settings.onShow, element)(); + if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) { + module.debug('Showing modal with css animations'); + $module + .transition(settings.transition + ' in', settings.duration, function() { + $.proxy(settings.onVisible, element)(); + module.set.active(); + callback(); + }) + ; + } + else { + module.debug('Showing modal with javascript'); + $module + .fadeIn(settings.duration, settings.easing, function() { + $.proxy(settings.onVisible, element)(); + module.set.active(); + callback(); + }) + ; + } + } + } + else { + module.debug('Modal is already visible'); + } + }, + + showDimmer: function() { + if( !$dimmable.dimmer('is active') ) { + module.debug('Showing dimmer'); + $dimmable.dimmer('show'); + } + else { + module.debug('Dimmer already visible'); + } + }, + + hide: function(callback) { + callback = $.isFunction(callback) + ? callback + : function(){} + ; + if($allModals.filter(':visible').size() <= 1) { + module.hideDimmer(); + } + module.hideModal(callback); + }, + + hideDimmer: function() { + if( !module.is.active() ) { + module.debug('Dimmer is not visible cannot hide'); + return; + } + module.debug('Hiding dimmer'); + if(settings.closable) { + $dimmer + .off('click' + eventNamespace) + ; + } + $dimmable.dimmer('hide', function() { + if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) { + $module + .transition('reset') + ; + module.remove.screenHeight(); + } + module.remove.active(); + }); + }, + + hideModal: function(callback) { + callback = $.isFunction(callback) + ? callback + : function(){} + ; + if( !module.is.active() ) { + module.debug('Cannot hide modal it is not active'); + return; + } + module.debug('Hiding modal'); + module.remove.keyboardShortcuts(); + $.proxy(settings.onHide, element)(); + if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) { + $module + .transition(settings.transition + ' out', settings.duration, function() { + $.proxy(settings.onHidden, element)(); + module.remove.active(); + module.restore.focus(); + callback(); + }) + ; + } + else { + $module + .fadeOut(settings.duration, settings.easing, function() { + $.proxy(settings.onHidden, element)(); + module.remove.active(); + module.restore.focus(); + callback(); + }) + ; + } + }, + + hideAll: function(callback) { + callback = $.isFunction(callback) + ? callback + : function(){} + ; + if( $allModals.is(':visible') ) { + module.debug('Hiding all visible modals'); + module.hideDimmer(); + $allModals + .filter(':visible') + .modal('hide modal', callback) + ; + } + }, + + hideOthers: function(callback) { + callback = $.isFunction(callback) + ? callback + : function(){} + ; + if( $otherModals.is(':visible') ) { + module.debug('Hiding other modals'); + $otherModals + .filter(':visible') + .modal('hide modal', callback) + ; + } + }, + + add: { + keyboardShortcuts: function() { + module.verbose('Adding keyboard shortcuts'); + $document + .on('keyup' + eventNamespace, module.event.keyboard) + ; + } + }, + + save: { + focus: function() { + $focusedElement = $(document.activeElement).blur(); + } + }, + + restore: { + focus: function() { + if($focusedElement && $focusedElement.size() > 0) { + $focusedElement.focus(); + } + } + }, + + remove: { + active: function() { + $module.removeClass(className.active); + }, + screenHeight: function() { + if(module.cache.height > module.cache.pageHeight) { + module.debug('Removing page height'); + $body + .css('height', '') + ; + } + }, + keyboardShortcuts: function() { + module.verbose('Removing keyboard shortcuts'); + $document + .off('keyup' + eventNamespace) + ; + }, + scrolling: function() { + $dimmable.removeClass(className.scrolling); + $module.removeClass(className.scrolling); + } + }, + + cacheSizes: function() { + module.cache = { + pageHeight : $body.outerHeight(), + height : $module.outerHeight() + settings.offset, + contextHeight : (settings.context == 'body') + ? $(window).height() + : $dimmable.height() + }; + module.debug('Caching modal and container sizes', module.cache); + }, + + can: { + fit: function() { + return (module.cache.height < module.cache.contextHeight); + } + }, + + is: { + active: function() { + return $module.hasClass(className.active); + }, + modernBrowser: function() { + // appName for IE11 reports 'Netscape' can no longer use + return !(window.ActiveXObject || "ActiveXObject" in window); + } + }, + + set: { + screenHeight: function() { + if(module.cache.height > module.cache.pageHeight) { + module.debug('Modal is taller than page content, resizing page height'); + $body + .css('height', module.cache.height + settings.padding) + ; + } + }, + active: function() { + module.add.keyboardShortcuts(); + module.save.focus(); + $module + .addClass(className.active) + ; + if(settings.closable) { + $dimmer + .off('click' + eventNamespace) + .on('click' + eventNamespace, module.event.click) + ; + } + }, + scrolling: function() { + $dimmable.addClass(className.scrolling); + $module.addClass(className.scrolling); + }, + type: function() { + if(module.can.fit()) { + module.verbose('Modal fits on screen'); + module.remove.scrolling(); + } + else { + module.verbose('Modal cannot fit on screen setting to scrolling'); + module.set.scrolling(); + } + }, + position: function() { + module.verbose('Centering modal on page', module.cache); + if(module.can.fit()) { + $module + .css({ + top: '', + marginTop: -(module.cache.height / 2) + }) + ; + } + else { + $module + .css({ + marginTop : '1em', + top : $document.scrollTop() + }) + ; + } + } + }, + + setting: function(name, value) { + module.debug('Changing setting', name, value); + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + }) + ; + + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + +$.fn.modal.settings = { + + name : 'Modal', + namespace : 'modal', + + debug : false, + verbose : true, + performance : true, + + allowMultiple : true, + detachable : true, + closable : true, + context : 'body', + + duration : 500, + easing : 'easeOutExpo', + offset : 0, + transition : 'scale', + + padding : 30, + + onShow : function(){}, + onHide : function(){}, + + onVisible : function(){}, + onHidden : function(){}, + + onApprove : function(){ return true; }, + onDeny : function(){ return true; }, + + selector : { + close : '.close, .actions .button', + approve : '.actions .positive, .actions .approve, .actions .ok', + deny : '.actions .negative, .actions .deny, .actions .cancel', + modal : '.ui.modal' + }, + error : { + dimmer : 'UI Dimmer, a required component is not included in this page', + method : 'The method you called is not defined.' + }, + className : { + active : 'active', + scrolling : 'scrolling' + } +}; + + +})( jQuery, window , document ); +/* + * # Semantic - Nag + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ($, window, document, undefined) { + +$.fn.nag = function(parameters) { + var + $allModules = $(this), + moduleSelector = $allModules.selector || '', + + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + returnedValue + ; + $(this) + .each(function() { + var + settings = $.extend(true, {}, $.fn.nag.settings, parameters), + + className = settings.className, + selector = settings.selector, + error = settings.error, + namespace = settings.namespace, + + eventNamespace = '.' + namespace, + moduleNamespace = namespace + '-module', + + $module = $(this), + + $close = $module.find(selector.close), + $context = $(settings.context), + + + element = this, + instance = $module.data(moduleNamespace), + + moduleOffset, + moduleHeight, + + contextWidth, + contextHeight, + contextOffset, + + yOffset, + yPosition, + + timer, + module, + + requestAnimationFrame = window.requestAnimationFrame + || window.mozRequestAnimationFrame + || window.webkitRequestAnimationFrame + || window.msRequestAnimationFrame + || function(callback) { setTimeout(callback, 0); } + ; + module = { + + initialize: function() { + module.verbose('Initializing element'); + // calculate module offset once + moduleOffset = $module.offset(); + moduleHeight = $module.outerHeight(); + contextWidth = $context.outerWidth(); + contextHeight = $context.outerHeight(); + contextOffset = $context.offset(); + + $module + .data(moduleNamespace, module) + ; + $close + .on('click' + eventNamespace, module.dismiss) + ; + // lets avoid javascript if we dont need to reposition + if(settings.context == window && settings.position == 'fixed') { + $module + .addClass(className.fixed) + ; + } + if(settings.sticky) { + module.verbose('Adding scroll events'); + // retrigger on scroll for absolute + if(settings.position == 'absolute') { + $context + .on('scroll' + eventNamespace, module.event.scroll) + .on('resize' + eventNamespace, module.event.scroll) + ; + } + // fixed is always relative to window + else { + $(window) + .on('scroll' + eventNamespace, module.event.scroll) + .on('resize' + eventNamespace, module.event.scroll) + ; + } + // fire once to position on init + $.proxy(module.event.scroll, this)(); + } + + if(settings.displayTime > 0) { + setTimeout(module.hide, settings.displayTime); + } + if(module.should.show()) { + if( !$module.is(':visible') ) { + module.show(); + } + } + else { + module.hide(); + } + }, + + destroy: function() { + module.verbose('Destroying instance'); + $module + .removeData(moduleNamespace) + .off(eventNamespace) + ; + if(settings.sticky) { + $context + .off(eventNamespace) + ; + } + }, + + refresh: function() { + module.debug('Refreshing cached calculations'); + moduleOffset = $module.offset(); + moduleHeight = $module.outerHeight(); + contextWidth = $context.outerWidth(); + contextHeight = $context.outerHeight(); + contextOffset = $context.offset(); + }, + + show: function() { + module.debug('Showing nag', settings.animation.show); + if(settings.animation.show == 'fade') { + $module + .fadeIn(settings.duration, settings.easing) + ; + } + else { + $module + .slideDown(settings.duration, settings.easing) + ; + } + }, + + hide: function() { + module.debug('Showing nag', settings.animation.hide); + if(settings.animation.show == 'fade') { + $module + .fadeIn(settings.duration, settings.easing) + ; + } + else { + $module + .slideUp(settings.duration, settings.easing) + ; + } + }, + + onHide: function() { + module.debug('Removing nag', settings.animation.hide); + $module.remove(); + if (settings.onHide) { + settings.onHide(); + } + }, + + stick: function() { + module.refresh(); + + if(settings.position == 'fixed') { + var + windowScroll = $(window).prop('pageYOffset') || $(window).scrollTop(), + fixedOffset = ( $module.hasClass(className.bottom) ) + ? contextOffset.top + (contextHeight - moduleHeight) - windowScroll + : contextOffset.top - windowScroll + ; + $module + .css({ + position : 'fixed', + top : fixedOffset, + left : contextOffset.left, + width : contextWidth - settings.scrollBarWidth + }) + ; + } + else { + $module + .css({ + top : yPosition + }) + ; + } + }, + unStick: function() { + $module + .css({ + top : '' + }) + ; + }, + dismiss: function(event) { + if(settings.storageMethod) { + module.storage.set(settings.storedKey, settings.storedValue); + } + module.hide(); + event.stopImmediatePropagation(); + event.preventDefault(); + }, + + should: { + show: function() { + if(settings.persist) { + module.debug('Persistent nag is set, can show nag'); + return true; + } + if(module.storage.get(settings.storedKey) != settings.storedValue) { + module.debug('Stored value is not set, can show nag', module.storage.get(settings.storedKey)); + return true; + } + module.debug('Stored value is set, cannot show nag', module.storage.get(settings.storedKey)); + return false; + }, + stick: function() { + yOffset = $context.prop('pageYOffset') || $context.scrollTop(); + yPosition = ( $module.hasClass(className.bottom) ) + ? (contextHeight - $module.outerHeight() ) + yOffset + : yOffset + ; + // absolute position calculated when y offset met + if(yPosition > moduleOffset.top) { + return true; + } + else if(settings.position == 'fixed') { + return true; + } + return false; + } + }, + + storage: { + + set: function(key, value) { + module.debug('Setting stored value', key, value, settings.storageMethod); + if(settings.storageMethod == 'local' && window.store !== undefined) { + window.store.set(key, value); + } + // store by cookie + else if($.cookie !== undefined) { + $.cookie(key, value); + } + else { + module.error(error.noStorage); + } + }, + get: function(key) { + module.debug('Getting stored value', key, settings.storageMethod); + if(settings.storageMethod == 'local' && window.store !== undefined) { + return window.store.get(key); + } + // get by cookie + else if($.cookie !== undefined) { + return $.cookie(key); + } + else { + module.error(error.noStorage); + } + } + + }, + + event: { + scroll: function() { + if(timer !== undefined) { + clearTimeout(timer); + } + timer = setTimeout(function() { + if(module.should.stick() ) { + requestAnimationFrame(module.stick); + } + else { + module.unStick(); + } + }, settings.lag); + } + }, + setting: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + module.debug('Changing internal', name, value); + if(value !== undefined) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else { + module[name] = value; + } + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if($allModules.size() > 1) { + title += ' ' + '(' + $allModules.size() + ')'; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + + }) + ; + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + +$.fn.nag.settings = { + + name : 'Nag', + + debug : false, + verbose : true, + performance : true, + + namespace : 'Nag', + + // allows cookie to be overriden + persist : false, + + // set to zero to manually dismiss, otherwise hides on its own + displayTime : 0, + + animation : { + show: 'slide', + hide: 'slide' + }, + + // method of stickyness + position : 'fixed', + scrollBarWidth : 18, + + // type of storage to use + storageMethod : 'cookie', + + // value to store in dismissed localstorage/cookie + storedKey : 'nag', + storedValue : 'dismiss', + + // need to calculate stickyness on scroll + sticky : false, + + // how often to check scroll event + lag : 0, + + // context for scroll event + context : window, + + error: { + noStorage : 'Neither $.cookie or store is defined. A storage solution is required for storing state', + method : 'The method you called is not defined.' + }, + + className : { + bottom : 'bottom', + fixed : 'fixed' + }, + + selector : { + close: '.icon.close' + }, + + speed : 500, + easing : 'easeOutQuad', + + onHide: function() {} + +}; + +})( jQuery, window , document ); + +/* + * # Semantic - Popup + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ($, window, document, undefined) { + +$.fn.popup = function(parameters) { + var + $allModules = $(this), + $document = $(document), + + moduleSelector = $allModules.selector || '', + + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + + returnedValue + ; + $allModules + .each(function() { + var + settings = ( $.isPlainObject(parameters) ) + ? $.extend(true, {}, $.fn.popup.settings, parameters) + : $.extend({}, $.fn.popup.settings), + + selector = settings.selector, + className = settings.className, + error = settings.error, + metadata = settings.metadata, + namespace = settings.namespace, + + eventNamespace = '.' + settings.namespace, + moduleNamespace = 'module-' + namespace, + + $module = $(this), + $context = $(settings.context), + $target = (settings.target) + ? $(settings.target) + : $module, + + $window = $(window), + + $offsetParent = (settings.inline) + ? $target.offsetParent() + : $window, + $popup = (settings.inline) + ? $target.next(settings.selector.popup) + : $window.children(settings.selector.popup).last(), + + searchDepth = 0, + + element = this, + instance = $module.data(moduleNamespace), + module + ; + + module = { + + // binds events + initialize: function() { + module.debug('Initializing module', $module); + if(settings.on == 'click') { + $module + .on('click', module.toggle) + ; + } + else { + $module + .on(module.get.startEvent() + eventNamespace, module.event.start) + .on(module.get.endEvent() + eventNamespace, module.event.end) + ; + } + if(settings.target) { + module.debug('Target set to element', $target); + } + $window + .on('resize' + eventNamespace, module.event.resize) + ; + module.instantiate(); + }, + + instantiate: function() { + module.verbose('Storing instance of module', module); + instance = module; + $module + .data(moduleNamespace, instance) + ; + }, + + refresh: function() { + if(settings.inline) { + $popup = $target.next(selector.popup); + $offsetParent = $target.offsetParent(); + } + else { + $popup = $window.children(selector.popup).last(); + } + }, + + destroy: function() { + module.debug('Destroying previous module'); + $window + .off(eventNamespace) + ; + $popup + .remove() + ; + $module + .off(eventNamespace) + .removeData(moduleNamespace) + ; + }, + + event: { + start: function(event) { + module.timer = setTimeout(function() { + if( module.is.hidden() ) { + module.show(); + } + }, settings.delay); + }, + end: function() { + clearTimeout(module.timer); + if( module.is.visible() ) { + module.hide(); + } + }, + resize: function() { + if( module.is.visible() ) { + module.set.position(); + } + } + }, + + // generates popup html from metadata + create: function() { + module.debug('Creating pop-up html'); + var + html = $module.data(metadata.html) || settings.html, + variation = $module.data(metadata.variation) || settings.variation, + title = $module.data(metadata.title) || settings.title, + content = $module.data(metadata.content) || $module.attr('title') || settings.content + ; + if(html || content || title) { + if(!html) { + html = settings.template({ + title : title, + content : content + }); + } + $popup = $('
') + .addClass(className.popup) + .addClass(variation) + .html(html) + ; + if(settings.inline) { + module.verbose('Inserting popup element inline', $popup); + $popup + .data(moduleNamespace, instance) + .insertAfter($module) + ; + } + else { + module.verbose('Appending popup element to body', $popup); + $popup + .data(moduleNamespace, instance) + .appendTo( $context ) + ; + } + $.proxy(settings.onCreate, $popup)(); + } + else { + module.error(error.content); + } + }, + + // determines popup state + toggle: function() { + module.debug('Toggling pop-up'); + if( module.is.hidden() ) { + module.debug('Popup is hidden, showing pop-up'); + module.unbind.close(); + module.hideAll(); + module.show(); + } + else { + module.debug('Popup is visible, hiding pop-up'); + module.hide(); + } + }, + + show: function(callback) { + callback = callback || function(){}; + module.debug('Showing pop-up', settings.transition); + if(!settings.preserve) { + module.refresh(); + } + if( !module.exists() ) { + module.create(); + } + module.save.conditions(); + module.set.position(); + module.animate.show(callback); + }, + + + hide: function(callback) { + callback = callback || function(){}; + $module + .removeClass(className.visible) + ; + module.restore.conditions(); + module.unbind.close(); + if( module.is.visible() ) { + module.animate.hide(callback); + } + }, + + hideAll: function() { + $(selector.popup) + .filter(':visible') + .popup('hide') + ; + }, + + hideGracefully: function(event) { + // don't close on clicks inside popup + if(event && $(event.target).closest(selector.popup).size() === 0) { + module.debug('Click occurred outside popup hiding popup'); + module.hide(); + } + else { + module.debug('Click was inside popup, keeping popup open'); + } + }, + + exists: function() { + if(settings.inline) { + return ( $popup.size() !== 0 ); + } + else { + return ( $popup.parent($context).size() ); + } + }, + + remove: function() { + module.debug('Removing popup'); + $popup + .remove() + ; + }, + + save: { + conditions: function() { + module.cache = { + title: $module.attr('title') + }; + if (module.cache.title) { + $module.removeAttr('title'); + } + module.verbose('Saving original attributes', module.cache.title); + } + }, + restore: { + conditions: function() { + if(module.cache && module.cache.title) { + $module.attr('title', module.cache.title); + module.verbose('Restoring original attributes', module.cache.title); + } + return true; + } + }, + animate: { + show: function(callback) { + callback = callback || function(){}; + $module + .addClass(className.visible) + ; + if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) { + $popup + .transition(settings.transition + ' in', settings.duration, function() { + module.bind.close(); + $.proxy(callback, element)(); + }) + ; + } + else { + $popup + .stop() + .fadeIn(settings.duration, settings.easing, function() { + module.bind.close(); + $.proxy(callback, element)(); + }) + ; + } + $.proxy(settings.onShow, element)(); + }, + hide: function(callback) { + callback = callback || function(){}; + module.debug('Hiding pop-up'); + if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) { + $popup + .transition(settings.transition + ' out', settings.duration, function() { + module.reset(); + callback(); + }) + ; + } + else { + $popup + .stop() + .fadeOut(settings.duration, settings.easing, function() { + module.reset(); + callback(); + }) + ; + } + $.proxy(settings.onHide, element)(); + } + }, + + get: { + startEvent: function() { + if(settings.on == 'hover') { + return 'mouseenter'; + } + else if(settings.on == 'focus') { + return 'focus'; + } + }, + endEvent: function() { + if(settings.on == 'hover') { + return 'mouseleave'; + } + else if(settings.on == 'focus') { + return 'blur'; + } + }, + offstagePosition: function() { + var + boundary = { + top : $(window).scrollTop(), + bottom : $(window).scrollTop() + $(window).height(), + left : 0, + right : $(window).width() + }, + popup = { + width : $popup.width(), + height : $popup.outerHeight(), + position : $popup.offset() + }, + offstage = {}, + offstagePositions = [] + ; + if(popup.position) { + offstage = { + top : (popup.position.top < boundary.top), + bottom : (popup.position.top + popup.height > boundary.bottom), + right : (popup.position.left + popup.width > boundary.right), + left : (popup.position.left < boundary.left) + }; + } + module.verbose('Checking if outside viewable area', popup.position); + // return only boundaries that have been surpassed + $.each(offstage, function(direction, isOffstage) { + if(isOffstage) { + offstagePositions.push(direction); + } + }); + return (offstagePositions.length > 0) + ? offstagePositions.join(' ') + : false + ; + }, + nextPosition: function(position) { + switch(position) { + case 'top left': + position = 'bottom left'; + break; + case 'bottom left': + position = 'top right'; + break; + case 'top right': + position = 'bottom right'; + break; + case 'bottom right': + position = 'top center'; + break; + case 'top center': + position = 'bottom center'; + break; + case 'bottom center': + position = 'right center'; + break; + case 'right center': + position = 'left center'; + break; + case 'left center': + position = 'top center'; + break; + } + return position; + } + }, + + set: { + position: function(position, arrowOffset) { + var + windowWidth = $(window).width(), + windowHeight = $(window).height(), + + width = $target.outerWidth(), + height = $target.outerHeight(), + + popupWidth = $popup.width(), + popupHeight = $popup.outerHeight(), + + parentWidth = $offsetParent.outerWidth(), + parentHeight = $offsetParent.outerHeight(), + + distanceAway = settings.distanceAway, + + offset = (settings.inline) + ? $target.position() + : $target.offset(), + + positioning, + offstagePosition + ; + position = position || $module.data(metadata.position) || settings.position; + arrowOffset = arrowOffset || $module.data(metadata.offset) || settings.offset; + // adjust for margin when inline + if(settings.inline) { + if(position == 'left center' || position == 'right center') { + arrowOffset += parseInt( window.getComputedStyle(element).getPropertyValue('margin-top'), 10); + distanceAway += -parseInt( window.getComputedStyle(element).getPropertyValue('margin-left'), 10); + } + else { + arrowOffset += parseInt( window.getComputedStyle(element).getPropertyValue('margin-left'), 10); + distanceAway += parseInt( window.getComputedStyle(element).getPropertyValue('margin-top'), 10); + } + } + module.debug('Calculating offset for position', position); + switch(position) { + case 'top left': + positioning = { + bottom : parentHeight - offset.top + distanceAway, + right : parentWidth - offset.left - arrowOffset, + top : 'auto', + left : 'auto' + }; + break; + case 'top center': + positioning = { + bottom : parentHeight - offset.top + distanceAway, + left : offset.left + (width / 2) - (popupWidth / 2) + arrowOffset, + top : 'auto', + right : 'auto' + }; + break; + case 'top right': + positioning = { + top : 'auto', + bottom : parentHeight - offset.top + distanceAway, + left : offset.left + width + arrowOffset, + right : 'auto' + }; + break; + case 'left center': + positioning = { + top : offset.top + (height / 2) - (popupHeight / 2) + arrowOffset, + right : parentWidth - offset.left + distanceAway, + left : 'auto', + bottom : 'auto' + }; + break; + case 'right center': + positioning = { + top : offset.top + (height / 2) - (popupHeight / 2) + arrowOffset, + left : offset.left + width + distanceAway, + bottom : 'auto', + right : 'auto' + }; + break; + case 'bottom left': + positioning = { + top : offset.top + height + distanceAway, + right : parentWidth - offset.left - arrowOffset, + left : 'auto', + bottom : 'auto' + }; + break; + case 'bottom center': + positioning = { + top : offset.top + height + distanceAway, + left : offset.left + (width / 2) - (popupWidth / 2) + arrowOffset, + bottom : 'auto', + right : 'auto' + }; + break; + case 'bottom right': + positioning = { + top : offset.top + height + distanceAway, + left : offset.left + width + arrowOffset, + bottom : 'auto', + right : 'auto' + }; + break; + } + // tentatively place on stage + $popup + .css(positioning) + .removeClass(className.position) + .addClass(position) + .addClass(className.loading) + ; + // check if is offstage + offstagePosition = module.get.offstagePosition(); + + // recursively find new positioning + if(offstagePosition) { + module.debug('Element is outside boundaries', offstagePosition); + if(searchDepth < settings.maxSearchDepth) { + position = module.get.nextPosition(position); + searchDepth++; + module.debug('Trying new position', position); + return module.set.position(position); + } + else { + module.error(error.recursion); + searchDepth = 0; + module.reset(); + $popup.removeClass(className.loading); + return false; + } + } + else { + module.debug('Position is on stage', position); + searchDepth = 0; + $popup.removeClass(className.loading); + return true; + } + } + + }, + + bind: { + close:function() { + if(settings.on == 'click' && settings.closable) { + module.verbose('Binding popup close event to document'); + $document + .on('click' + eventNamespace, function(event) { + module.verbose('Pop-up clickaway intent detected'); + $.proxy(module.hideGracefully, this)(event); + }) + ; + } + } + }, + + unbind: { + close: function() { + if(settings.on == 'click' && settings.closable) { + module.verbose('Removing close event from document'); + $document + .off('click' + eventNamespace) + ; + } + } + }, + + is: { + animating: function() { + return ( $popup.is(':animated') || $popup.hasClass(className.animating) ); + }, + visible: function() { + return $popup.is(':visible'); + }, + hidden: function() { + return !module.is.visible(); + } + }, + + reset: function() { + $popup + .attr('style', '') + .removeAttr('style') + ; + if(!settings.preserve) { + module.remove(); + } + }, + + setting: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + }) + ; + + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + +$.fn.popup.settings = { + + name : 'Popup', + debug : false, + verbose : true, + performance : true, + namespace : 'popup', + + onCreate : function(){}, + onShow : function(){}, + onHide : function(){}, + + variation : '', + content : false, + html : false, + title : false, + + on : 'hover', + target : false, + closable : true, + + context : 'body', + position : 'top center', + delay : 150, + inline : false, + preserve : false, + + duration : 250, + easing : 'easeOutQuint', + transition : 'scale', + + distanceAway : 0, + offset : 0, + maxSearchDepth : 10, + + error: { + content : 'Your popup has no content specified', + method : 'The method you called is not defined.', + recursion : 'Popup attempted to reposition element to fit, but could not find an adequate position.' + }, + + metadata: { + content : 'content', + html : 'html', + offset : 'offset', + position : 'position', + title : 'title', + variation : 'variation' + }, + + className : { + animating : 'animating', + loading : 'loading', + popup : 'ui popup', + position : 'top left center bottom right', + visible : 'visible' + }, + + selector : { + popup : '.ui.popup' + }, + + template: function(text) { + var html = ''; + if(typeof text !== undefined) { + if(typeof text.title !== undefined && text.title) { + html += '
' + text.title + '
'; + } + if(typeof text.content !== undefined && text.content) { + html += '
' + text.content + '
'; + } + } + return html; + } + +}; + +})( jQuery, window , document ); + +/* + * # Semantic - Rating + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ($, window, document, undefined) { + +$.fn.rating = function(parameters) { + var + $allModules = $(this), + moduleSelector = $allModules.selector || '', + + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + returnedValue + ; + $allModules + .each(function() { + var + settings = ( $.isPlainObject(parameters) ) + ? $.extend(true, {}, $.fn.rating.settings, parameters) + : $.extend({}, $.fn.rating.settings), + + namespace = settings.namespace, + className = settings.className, + metadata = settings.metadata, + selector = settings.selector, + error = settings.error, + + eventNamespace = '.' + namespace, + moduleNamespace = 'module-' + namespace, + + element = this, + instance = $(this).data(moduleNamespace), + + $module = $(this), + $icon = $module.find(selector.icon), + + module + ; + + module = { + + initialize: function() { + module.verbose('Initializing rating module', settings); + + if(settings.interactive) { + module.enable(); + } + else { + module.disable(); + } + + if(settings.initialRating) { + module.debug('Setting initial rating'); + module.setRating(settings.initialRating); + } + if( $module.data(metadata.rating) ) { + module.debug('Rating found in metadata'); + module.setRating( $module.data(metadata.rating) ); + } + module.instantiate(); + }, + + instantiate: function() { + module.verbose('Instantiating module', settings); + instance = module; + $module + .data(moduleNamespace, module) + ; + }, + + destroy: function() { + module.verbose('Destroying previous instance', instance); + $module + .removeData(moduleNamespace) + ; + $icon + .off(eventNamespace) + ; + }, + + event: { + mouseenter: function() { + var + $activeIcon = $(this) + ; + $activeIcon + .nextAll() + .removeClass(className.hover) + ; + $module + .addClass(className.hover) + ; + $activeIcon + .addClass(className.hover) + .prevAll() + .addClass(className.hover) + ; + }, + mouseleave: function() { + $module + .removeClass(className.hover) + ; + $icon + .removeClass(className.hover) + ; + }, + click: function() { + var + $activeIcon = $(this), + currentRating = module.getRating(), + rating = $icon.index($activeIcon) + 1 + ; + if(settings.clearable && currentRating == rating) { + module.clearRating(); + } + else { + module.setRating( rating ); + } + } + }, + + clearRating: function() { + module.debug('Clearing current rating'); + module.setRating(0); + }, + + getRating: function() { + var + currentRating = $icon.filter('.' + className.active).size() + ; + module.verbose('Current rating retrieved', currentRating); + return currentRating; + }, + + enable: function() { + module.debug('Setting rating to interactive mode'); + $icon + .on('mouseenter' + eventNamespace, module.event.mouseenter) + .on('mouseleave' + eventNamespace, module.event.mouseleave) + .on('click' + eventNamespace, module.event.click) + ; + $module + .removeClass(className.disabled) + ; + }, + + disable: function() { + module.debug('Setting rating to read-only mode'); + $icon + .off(eventNamespace) + ; + $module + .addClass(className.disabled) + ; + }, + + setRating: function(rating) { + var + ratingIndex = (rating - 1 >= 0) + ? (rating - 1) + : 0, + $activeIcon = $icon.eq(ratingIndex) + ; + $module + .removeClass(className.hover) + ; + $icon + .removeClass(className.hover) + .removeClass(className.active) + ; + if(rating > 0) { + module.verbose('Setting current rating to', rating); + $activeIcon + .addClass(className.active) + .prevAll() + .addClass(className.active) + ; + } + $.proxy(settings.onRate, element)(rating); + }, + + setting: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if($allModules.size() > 1) { + title += ' ' + '(' + $allModules.size() + ')'; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + }) + ; + + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + +$.fn.rating.settings = { + + name : 'Rating', + namespace : 'rating', + + verbose : true, + debug : false, + performance : true, + + initialRating : 0, + interactive : true, + clearable : false, + + onRate : function(rating){}, + + error : { + method : 'The method you called is not defined' + }, + + metadata: { + rating: 'rating' + }, + + className : { + active : 'active', + disabled : 'disabled', + hover : 'hover', + loading : 'loading' + }, + + selector : { + icon : '.icon' + } + +}; + +})( jQuery, window , document ); + +/* + * # Semantic - Search + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ($, window, document, undefined) { + +$.fn.search = function(source, parameters) { + var + $allModules = $(this), + moduleSelector = $allModules.selector || '', + + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + returnedValue + ; + $(this) + .each(function() { + var + settings = $.extend(true, {}, $.fn.search.settings, parameters), + + className = settings.className, + selector = settings.selector, + error = settings.error, + namespace = settings.namespace, + + eventNamespace = '.' + namespace, + moduleNamespace = namespace + '-module', + + $module = $(this), + $prompt = $module.find(selector.prompt), + $searchButton = $module.find(selector.searchButton), + $results = $module.find(selector.results), + $result = $module.find(selector.result), + $category = $module.find(selector.category), + + element = this, + instance = $module.data(moduleNamespace), + + module + ; + module = { + + initialize: function() { + module.verbose('Initializing module'); + var + prompt = $prompt[0], + inputEvent = (prompt.oninput !== undefined) + ? 'input' + : (prompt.onpropertychange !== undefined) + ? 'propertychange' + : 'keyup' + ; + // attach events + $prompt + .on('focus' + eventNamespace, module.event.focus) + .on('blur' + eventNamespace, module.event.blur) + .on('keydown' + eventNamespace, module.handleKeyboard) + ; + if(settings.automatic) { + $prompt + .on(inputEvent + eventNamespace, module.search.throttle) + ; + } + $searchButton + .on('click' + eventNamespace, module.search.query) + ; + $results + .on('click' + eventNamespace, selector.result, module.results.select) + ; + module.instantiate(); + }, + instantiate: function() { + module.verbose('Storing instance of module', module); + instance = module; + $module + .data(moduleNamespace, module) + ; + }, + destroy: function() { + module.verbose('Destroying instance'); + $module + .removeData(moduleNamespace) + ; + }, + event: { + focus: function() { + $module + .addClass(className.focus) + ; + module.results.show(); + }, + blur: function() { + module.search.cancel(); + $module + .removeClass(className.focus) + ; + module.results.hide(); + } + }, + handleKeyboard: function(event) { + var + // force latest jq dom + $result = $module.find(selector.result), + $category = $module.find(selector.category), + keyCode = event.which, + keys = { + backspace : 8, + enter : 13, + escape : 27, + upArrow : 38, + downArrow : 40 + }, + activeClass = className.active, + currentIndex = $result.index( $result.filter('.' + activeClass) ), + resultSize = $result.size(), + newIndex + ; + // search shortcuts + if(keyCode == keys.escape) { + module.verbose('Escape key pressed, blurring search field'); + $prompt + .trigger('blur') + ; + } + // result shortcuts + if($results.filter(':visible').size() > 0) { + if(keyCode == keys.enter) { + module.verbose('Enter key pressed, selecting active result'); + if( $result.filter('.' + activeClass).exists() ) { + $.proxy(module.results.select, $result.filter('.' + activeClass) )(); + event.preventDefault(); + return false; + } + } + else if(keyCode == keys.upArrow) { + module.verbose('Up key pressed, changing active result'); + newIndex = (currentIndex - 1 < 0) + ? currentIndex + : currentIndex - 1 + ; + $category + .removeClass(activeClass) + ; + $result + .removeClass(activeClass) + .eq(newIndex) + .addClass(activeClass) + .closest($category) + .addClass(activeClass) + ; + event.preventDefault(); + } + else if(keyCode == keys.downArrow) { + module.verbose('Down key pressed, changing active result'); + newIndex = (currentIndex + 1 >= resultSize) + ? currentIndex + : currentIndex + 1 + ; + $category + .removeClass(activeClass) + ; + $result + .removeClass(activeClass) + .eq(newIndex) + .addClass(activeClass) + .closest($category) + .addClass(activeClass) + ; + event.preventDefault(); + } + } + else { + // query shortcuts + if(keyCode == keys.enter) { + module.verbose('Enter key pressed, executing query'); + module.search.query(); + $searchButton + .addClass(className.down) + ; + $prompt + .one('keyup', function(){ + $searchButton + .removeClass(className.down) + ; + }) + ; + } + } + }, + search: { + cancel: function() { + var + xhr = $module.data('xhr') || false + ; + if( xhr && xhr.state() != 'resolved') { + module.debug('Cancelling last search'); + xhr.abort(); + } + }, + throttle: function() { + var + searchTerm = $prompt.val(), + numCharacters = searchTerm.length + ; + clearTimeout(module.timer); + if(numCharacters >= settings.minCharacters) { + module.timer = setTimeout(module.search.query, settings.searchThrottle); + } + else { + module.results.hide(); + } + }, + query: function() { + var + searchTerm = $prompt.val(), + cachedHTML = module.search.cache.read(searchTerm) + ; + if(cachedHTML) { + module.debug("Reading result for '" + searchTerm + "' from cache"); + module.results.add(cachedHTML); + } + else { + module.debug("Querying for '" + searchTerm + "'"); + if(typeof source == 'object') { + module.search.local(searchTerm); + } + else { + module.search.remote(searchTerm); + } + $.proxy(settings.onSearchQuery, $module)(searchTerm); + } + }, + local: function(searchTerm) { + var + results = [], + fullTextResults = [], + searchFields = $.isArray(settings.searchFields) + ? settings.searchFields + : [settings.searchFields], + + searchRegExp = new RegExp('(?:\s|^)' + searchTerm, 'i'), + fullTextRegExp = new RegExp(searchTerm, 'i'), + searchHTML + ; + $module + .addClass(className.loading) + ; + // iterate through search fields in array order + $.each(searchFields, function(index, field) { + $.each(source, function(label, thing) { + if(typeof thing[field] == 'string' && ($.inArray(thing, results) == -1) && ($.inArray(thing, fullTextResults) == -1) ) { + if( searchRegExp.test( thing[field] ) ) { + results.push(thing); + } + else if( fullTextRegExp.test( thing[field] ) ) { + fullTextResults.push(thing); + } + } + }); + }); + searchHTML = module.results.generate({ + results: $.merge(results, fullTextResults) + }); + $module + .removeClass(className.loading) + ; + module.search.cache.write(searchTerm, searchHTML); + module.results.add(searchHTML); + }, + remote: function(searchTerm) { + var + apiSettings = { + stateContext : $module, + url : source, + urlData: { query: searchTerm }, + success : function(response) { + searchHTML = module.results.generate(response); + module.search.cache.write(searchTerm, searchHTML); + module.results.add(searchHTML); + }, + failure : module.error + }, + searchHTML + ; + module.search.cancel(); + module.debug('Executing search'); + $.extend(true, apiSettings, settings.apiSettings); + $.api(apiSettings); + }, + + cache: { + read: function(name) { + var + cache = $module.data('cache') + ; + return (settings.cache && (typeof cache == 'object') && (cache[name] !== undefined) ) + ? cache[name] + : false + ; + }, + write: function(name, value) { + var + cache = ($module.data('cache') !== undefined) + ? $module.data('cache') + : {} + ; + cache[name] = value; + $module + .data('cache', cache) + ; + } + } + }, + + results: { + generate: function(response) { + module.debug('Generating html from response', response); + var + template = settings.templates[settings.type], + html = '' + ; + if(($.isPlainObject(response.results) && !$.isEmptyObject(response.results)) || ($.isArray(response.results) && response.results.length > 0) ) { + if(settings.maxResults > 0) { + response.results = $.makeArray(response.results).slice(0, settings.maxResults); + } + if(response.results.length > 0) { + if($.isFunction(template)) { + html = template(response); + } + else { + module.error(error.noTemplate, false); + } + } + } + else { + html = module.message(error.noResults, 'empty'); + } + $.proxy(settings.onResults, $module)(response); + return html; + }, + add: function(html) { + if(settings.onResultsAdd == 'default' || $.proxy(settings.onResultsAdd, $results)(html) == 'default') { + $results + .html(html) + ; + } + module.results.show(); + }, + show: function() { + if( ($results.filter(':visible').size() === 0) && ($prompt.filter(':focus').size() > 0) && $results.html() !== '') { + $results + .stop() + .fadeIn(200) + ; + $.proxy(settings.onResultsOpen, $results)(); + } + }, + hide: function() { + if($results.filter(':visible').size() > 0) { + $results + .stop() + .fadeOut(200) + ; + $.proxy(settings.onResultsClose, $results)(); + } + }, + select: function(event) { + module.debug('Search result selected'); + var + $result = $(this), + $title = $result.find('.title'), + title = $title.html() + ; + if(settings.onSelect == 'default' || $.proxy(settings.onSelect, this)(event) == 'default') { + var + $link = $result.find('a[href]').eq(0), + href = $link.attr('href') || false, + target = $link.attr('target') || false + ; + module.results.hide(); + $prompt + .val(title) + ; + if(href) { + if(target == '_blank' || event.ctrlKey) { + window.open(href); + } + else { + window.location.href = (href); + } + } + } + } + }, + + setting: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if($allModules.size() > 1) { + title += ' ' + '(' + $allModules.size() + ')'; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + + }) + ; + + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + +$.fn.search.settings = { + + name : 'Search Module', + namespace : 'search', + + debug : false, + verbose : true, + performance : true, + + // onSelect default action is defined in module + onSelect : 'default', + onResultsAdd : 'default', + + onSearchQuery : function(){}, + onResults : function(response){}, + + onResultsOpen : function(){}, + onResultsClose : function(){}, + + automatic : 'true', + type : 'simple', + minCharacters : 3, + searchThrottle : 300, + maxResults : 7, + cache : true, + + searchFields : [ + 'title', + 'description' + ], + + // api config + apiSettings: { + + }, + + className: { + active : 'active', + down : 'down', + focus : 'focus', + empty : 'empty', + loading : 'loading' + }, + + error : { + noResults : 'Your search returned no results', + logging : 'Error in debug logging, exiting.', + noTemplate : 'A valid template name was not specified.', + serverError : 'There was an issue with querying the server.', + method : 'The method you called is not defined.' + }, + + selector : { + prompt : '.prompt', + searchButton : '.search.button', + results : '.results', + category : '.category', + result : '.result' + }, + + templates: { + message: function(message, type) { + var + html = '' + ; + if(message !== undefined && type !== undefined) { + html += '' + + '
' + ; + // message type + if(type == 'empty') { + html += '' + + '
No Results
' + + '
' + message + '
' + ; + } + else { + html += '
' + message + '
'; + } + html += '
'; + } + return html; + }, + categories: function(response) { + var + html = '' + ; + if(response.results !== undefined) { + // each category + $.each(response.results, function(index, category) { + if(category.results !== undefined && category.results.length > 0) { + html += '' + + '
' + + '
' + category.name + '
' + ; + // each item inside category + $.each(category.results, function(index, result) { + html += '
'; + html += ''; + if(result.image !== undefined) { + html+= '' + + '
' + + ' ' + + '
' + ; + } + html += '
'; + if(result.price !== undefined) { + html+= '
' + result.price + '
'; + } + if(result.title !== undefined) { + html+= '
' + result.title + '
'; + } + if(result.description !== undefined) { + html+= '
' + result.description + '
'; + } + html += '' + + '
' + + '
' + ; + }); + html += '' + + '
' + ; + } + }); + if(response.resultPage) { + html += '' + + '' + + response.resultPage.text + + ''; + } + return html; + } + return false; + }, + simple: function(response) { + var + html = '' + ; + if(response.results !== undefined) { + + // each result + $.each(response.results, function(index, result) { + html += ''; + if(result.image !== undefined) { + html+= '' + + '
' + + ' ' + + '
' + ; + } + html += '
'; + if(result.price !== undefined) { + html+= '
' + result.price + '
'; + } + if(result.title !== undefined) { + html+= '
' + result.title + '
'; + } + if(result.description !== undefined) { + html+= '
' + result.description + '
'; + } + html += '' + + '
' + + '
' + ; + }); + + if(response.resultPage) { + html += '' + + '' + + response.resultPage.text + + ''; + } + return html; + } + return false; + } + } +}; + +})( jQuery, window , document ); +/* + * # Semantic - Shape + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ( $, window, document, undefined ) { + +$.fn.shape = function(parameters) { + var + $allModules = $(this), + $body = $('body'), + + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + returnedValue + ; + + $allModules + .each(function() { + var + moduleSelector = $allModules.selector || '', + settings = $.extend(true, {}, $.fn.shape.settings, parameters), + + // internal aliases + namespace = settings.namespace, + selector = settings.selector, + error = settings.error, + className = settings.className, + + // define namespaces for modules + eventNamespace = '.' + namespace, + moduleNamespace = 'module-' + namespace, + + // selector cache + $module = $(this), + $sides = $module.find(selector.sides), + $side = $module.find(selector.side), + + // private variables + nextSelector = false, + $activeSide, + $nextSide, + + // standard module + element = this, + instance = $module.data(moduleNamespace), + module + ; + + module = { + + initialize: function() { + module.verbose('Initializing module for', element); + module.set.defaultSide(); + module.instantiate(); + }, + + instantiate: function() { + module.verbose('Storing instance of module', module); + instance = module; + $module + .data(moduleNamespace, instance) + ; + }, + + destroy: function() { + module.verbose('Destroying previous module for', element); + $module + .removeData(moduleNamespace) + .off(eventNamespace) + ; + }, + + refresh: function() { + module.verbose('Refreshing selector cache for', element); + $module = $(element); + $sides = $(this).find(selector.shape); + $side = $(this).find(selector.side); + }, + + repaint: function() { + module.verbose('Forcing repaint event'); + var + shape = $sides.get(0) || document.createElement('div'), + fakeAssignment = shape.offsetWidth + ; + }, + + animate: function(propertyObject, callback) { + module.verbose('Animating box with properties', propertyObject); + callback = callback || function(event) { + module.verbose('Executing animation callback'); + if(event !== undefined) { + event.stopPropagation(); + } + module.reset(); + module.set.active(); + }; + $.proxy(settings.beforeChange, $nextSide[0])(); + if(module.get.transitionEvent()) { + module.verbose('Starting CSS animation'); + $module + .addClass(className.animating) + ; + module.repaint(); + $module + .addClass(className.animating) + ; + $activeSide + .addClass(className.hidden) + ; + $sides + .css(propertyObject) + .one(module.get.transitionEvent(), callback) + ; + module.set.duration(settings.duration); + } + else { + callback(); + } + }, + + queue: function(method) { + module.debug('Queueing animation of', method); + $sides + .one(module.get.transitionEvent(), function() { + module.debug('Executing queued animation'); + setTimeout(function(){ + $module.shape(method); + }, 0); + }) + ; + }, + + reset: function() { + module.verbose('Animating states reset'); + $module + .removeClass(className.animating) + .attr('style', '') + .removeAttr('style') + ; + // removeAttr style does not consistently work in safari + $sides + .attr('style', '') + .removeAttr('style') + ; + $side + .attr('style', '') + .removeAttr('style') + .removeClass(className.hidden) + ; + $nextSide + .removeClass(className.animating) + .attr('style', '') + .removeAttr('style') + ; + }, + + is: { + animating: function() { + return $module.hasClass(className.animating); + } + }, + + set: { + + defaultSide: function() { + $activeSide = $module.find('.' + settings.className.active); + $nextSide = ( $activeSide.next(selector.side).size() > 0 ) + ? $activeSide.next(selector.side) + : $module.find(selector.side).first() + ; + nextSelector = false; + module.verbose('Active side set to', $activeSide); + module.verbose('Next side set to', $nextSide); + }, + + duration: function(duration) { + duration = duration || settings.duration; + duration = (typeof duration == 'number') + ? duration + 'ms' + : duration + ; + module.verbose('Setting animation duration', duration); + $sides.add($side) + .css({ + '-webkit-transition-duration': duration, + '-moz-transition-duration': duration, + '-ms-transition-duration': duration, + '-o-transition-duration': duration, + 'transition-duration': duration + }) + ; + }, + + stageSize: function() { + var + $clone = $module.clone().addClass(className.loading), + $activeSide = $clone.find('.' + settings.className.active), + $nextSide = (nextSelector) + ? $clone.find(nextSelector) + : ( $activeSide.next(selector.side).size() > 0 ) + ? $activeSide.next(selector.side) + : $clone.find(selector.side).first(), + newSize = {} + ; + $activeSide.removeClass(className.active); + $nextSide.addClass(className.active); + $clone.prependTo($body); + newSize = { + width : $nextSide.outerWidth(), + height : $nextSide.outerHeight() + }; + $clone.remove(); + $module + .css(newSize) + ; + module.verbose('Resizing stage to fit new content', newSize); + }, + + nextSide: function(selector) { + nextSelector = selector; + $nextSide = $module.find(selector); + if($nextSide.size() === 0) { + module.error(error.side); + } + module.verbose('Next side manually set to', $nextSide); + }, + + active: function() { + module.verbose('Setting new side to active', $nextSide); + $side + .removeClass(className.active) + ; + $nextSide + .addClass(className.active) + ; + $.proxy(settings.onChange, $nextSide[0])(); + module.set.defaultSide(); + } + }, + + flip: { + + up: function() { + module.debug('Flipping up', $nextSide); + if( !module.is.animating() ) { + module.set.stageSize(); + module.stage.above(); + module.animate( module.get.transform.up() ); + } + else { + module.queue('flip up'); + } + }, + + down: function() { + module.debug('Flipping down', $nextSide); + if( !module.is.animating() ) { + module.set.stageSize(); + module.stage.below(); + module.animate( module.get.transform.down() ); + } + else { + module.queue('flip down'); + } + }, + + left: function() { + module.debug('Flipping left', $nextSide); + if( !module.is.animating() ) { + module.set.stageSize(); + module.stage.left(); + module.animate(module.get.transform.left() ); + } + else { + module.queue('flip left'); + } + }, + + right: function() { + module.debug('Flipping right', $nextSide); + if( !module.is.animating() ) { + module.set.stageSize(); + module.stage.right(); + module.animate(module.get.transform.right() ); + } + else { + module.queue('flip right'); + } + }, + + over: function() { + module.debug('Flipping over', $nextSide); + if( !module.is.animating() ) { + module.set.stageSize(); + module.stage.behind(); + module.animate(module.get.transform.over() ); + } + else { + module.queue('flip over'); + } + }, + + back: function() { + module.debug('Flipping back', $nextSide); + if( !module.is.animating() ) { + module.set.stageSize(); + module.stage.behind(); + module.animate(module.get.transform.back() ); + } + else { + module.queue('flip back'); + } + } + + }, + + get: { + + transform: { + up: function() { + var + translate = { + y: -(($activeSide.outerHeight() - $nextSide.outerHeight()) / 2), + z: -($activeSide.outerHeight() / 2) + } + ; + return { + transform: 'translateY(' + translate.y + 'px) translateZ('+ translate.z + 'px) rotateX(-90deg)' + }; + }, + + down: function() { + var + translate = { + y: -(($activeSide.outerHeight() - $nextSide.outerHeight()) / 2), + z: -($activeSide.outerHeight() / 2) + } + ; + return { + transform: 'translateY(' + translate.y + 'px) translateZ('+ translate.z + 'px) rotateX(90deg)' + }; + }, + + left: function() { + var + translate = { + x : -(($activeSide.outerWidth() - $nextSide.outerWidth()) / 2), + z : -($activeSide.outerWidth() / 2) + } + ; + return { + transform: 'translateX(' + translate.x + 'px) translateZ(' + translate.z + 'px) rotateY(90deg)' + }; + }, + + right: function() { + var + translate = { + x : -(($activeSide.outerWidth() - $nextSide.outerWidth()) / 2), + z : -($activeSide.outerWidth() / 2) + } + ; + return { + transform: 'translateX(' + translate.x + 'px) translateZ(' + translate.z + 'px) rotateY(-90deg)' + }; + }, + + over: function() { + var + translate = { + x : -(($activeSide.outerWidth() - $nextSide.outerWidth()) / 2) + } + ; + return { + transform: 'translateX(' + translate.x + 'px) rotateY(180deg)' + }; + }, + + back: function() { + var + translate = { + x : -(($activeSide.outerWidth() - $nextSide.outerWidth()) / 2) + } + ; + return { + transform: 'translateX(' + translate.x + 'px) rotateY(-180deg)' + }; + } + }, + + transitionEvent: function() { + var + element = document.createElement('element'), + transitions = { + 'transition' :'transitionend', + 'OTransition' :'oTransitionEnd', + 'MozTransition' :'transitionend', + 'WebkitTransition' :'webkitTransitionEnd' + }, + transition + ; + for(transition in transitions){ + if( element.style[transition] !== undefined ){ + return transitions[transition]; + } + } + }, + + nextSide: function() { + return ( $activeSide.next(selector.side).size() > 0 ) + ? $activeSide.next(selector.side) + : $module.find(selector.side).first() + ; + } + + }, + + stage: { + + above: function() { + var + box = { + origin : (($activeSide.outerHeight() - $nextSide.outerHeight()) / 2), + depth : { + active : ($nextSide.outerHeight() / 2), + next : ($activeSide.outerHeight() / 2) + } + } + ; + module.verbose('Setting the initial animation position as above', $nextSide, box); + $activeSide + .css({ + 'transform' : 'rotateY(0deg) translateZ(' + box.depth.active + 'px)' + }) + ; + $nextSide + .addClass(className.animating) + .css({ + 'display' : 'block', + 'top' : box.origin + 'px', + 'transform' : 'rotateX(90deg) translateZ(' + box.depth.next + 'px)' + }) + ; + }, + + below: function() { + var + box = { + origin : (($activeSide.outerHeight() - $nextSide.outerHeight()) / 2), + depth : { + active : ($nextSide.outerHeight() / 2), + next : ($activeSide.outerHeight() / 2) + } + } + ; + module.verbose('Setting the initial animation position as below', $nextSide, box); + $activeSide + .css({ + 'transform' : 'rotateY(0deg) translateZ(' + box.depth.active + 'px)' + }) + ; + $nextSide + .addClass(className.animating) + .css({ + 'display' : 'block', + 'top' : box.origin + 'px', + 'transform' : 'rotateX(-90deg) translateZ(' + box.depth.next + 'px)' + }) + ; + }, + + left: function() { + var + box = { + origin : ( ( $activeSide.outerWidth() - $nextSide.outerWidth() ) / 2), + depth : { + active : ($nextSide.outerWidth() / 2), + next : ($activeSide.outerWidth() / 2) + } + } + ; + module.verbose('Setting the initial animation position as left', $nextSide, box); + $activeSide + .css({ + 'transform' : 'rotateY(0deg) translateZ(' + box.depth.active + 'px)' + }) + ; + $nextSide + .addClass(className.animating) + .css({ + 'display' : 'block', + 'left' : box.origin + 'px', + 'transform' : 'rotateY(-90deg) translateZ(' + box.depth.next + 'px)' + }) + ; + }, + + right: function() { + var + box = { + origin : ( ( $activeSide.outerWidth() - $nextSide.outerWidth() ) / 2), + depth : { + active : ($nextSide.outerWidth() / 2), + next : ($activeSide.outerWidth() / 2) + } + } + ; + module.verbose('Setting the initial animation position as left', $nextSide, box); + $activeSide + .css({ + 'transform' : 'rotateY(0deg) translateZ(' + box.depth.active + 'px)' + }) + ; + $nextSide + .addClass(className.animating) + .css({ + 'display' : 'block', + 'left' : box.origin + 'px', + 'transform' : 'rotateY(90deg) translateZ(' + box.depth.next + 'px)' + }) + ; + }, + + behind: function() { + var + box = { + origin : ( ( $activeSide.outerWidth() - $nextSide.outerWidth() ) / 2), + depth : { + active : ($nextSide.outerWidth() / 2), + next : ($activeSide.outerWidth() / 2) + } + } + ; + module.verbose('Setting the initial animation position as behind', $nextSide, box); + $activeSide + .css({ + 'transform' : 'rotateY(0deg)' + }) + ; + $nextSide + .addClass(className.animating) + .css({ + 'display' : 'block', + 'left' : box.origin + 'px', + 'transform' : 'rotateY(-180deg)' + }) + ; + } + }, + setting: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if($allModules.size() > 1) { + title += ' ' + '(' + $allModules.size() + ')'; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + }) + ; + + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + +$.fn.shape.settings = { + + // module info + name : 'Shape', + + // debug content outputted to console + debug : false, + + // verbose debug output + verbose : true, + + // performance data output + performance: true, + + // event namespace + namespace : 'shape', + + // callback occurs on side change + beforeChange : function() {}, + onChange : function() {}, + + // animation duration + duration : 700, + + // possible errors + error: { + side : 'You tried to switch to a side that does not exist.', + method : 'The method you called is not defined' + }, + + // classnames used + className : { + animating : 'animating', + hidden : 'hidden', + loading : 'loading', + active : 'active' + }, + + // selectors used + selector : { + sides : '.sides', + side : '.side' + } + +}; + + +})( jQuery, window , document ); +/* + * # Semantic - Sidebar + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ( $, window, document, undefined ) { + +$.fn.sidebar = function(parameters) { + var + $allModules = $(this), + $body = $('body'), + $head = $('head'), + + moduleSelector = $allModules.selector || '', + + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + returnedValue + ; + + $allModules + .each(function() { + var + settings = ( $.isPlainObject(parameters) ) + ? $.extend(true, {}, $.fn.sidebar.settings, parameters) + : $.extend({}, $.fn.sidebar.settings), + + selector = settings.selector, + className = settings.className, + namespace = settings.namespace, + error = settings.error, + + eventNamespace = '.' + namespace, + moduleNamespace = 'module-' + namespace, + + $module = $(this), + $style = $('style[title=' + namespace + ']'), + + element = this, + instance = $module.data(moduleNamespace), + module + ; + + module = { + + initialize: function() { + module.debug('Initializing sidebar', $module); + module.instantiate(); + }, + + instantiate: function() { + module.verbose('Storing instance of module', module); + instance = module; + $module + .data(moduleNamespace, module) + ; + }, + + destroy: function() { + module.verbose('Destroying previous module for', $module); + $module + .off(eventNamespace) + .removeData(moduleNamespace) + ; + }, + + refresh: function() { + module.verbose('Refreshing selector cache'); + $style = $('style[title=' + namespace + ']'); + }, + + attachEvents: function(selector, event) { + var + $toggle = $(selector) + ; + event = $.isFunction(module[event]) + ? module[event] + : module.toggle + ; + if($toggle.size() > 0) { + module.debug('Attaching sidebar events to element', selector, event); + $toggle + .off(eventNamespace) + .on('click' + eventNamespace, event) + ; + } + else { + module.error(error.notFound); + } + }, + + show: function(callback) { + callback = $.isFunction(callback) + ? callback + : function(){} + ; + module.debug('Showing sidebar', callback); + if(module.is.closed()) { + if(!settings.overlay) { + if(settings.exclusive) { + module.hideAll(); + } + module.pushPage(); + } + module.set.active(); + callback(); + $.proxy(settings.onChange, element)(); + $.proxy(settings.onShow, element)(); + } + else { + module.debug('Sidebar is already visible'); + } + }, + + hide: function(callback) { + callback = $.isFunction(callback) + ? callback + : function(){} + ; + module.debug('Hiding sidebar', callback); + if(module.is.open()) { + if(!settings.overlay) { + module.pullPage(); + module.remove.pushed(); + } + module.remove.active(); + callback(); + $.proxy(settings.onChange, element)(); + $.proxy(settings.onHide, element)(); + } + }, + + hideAll: function() { + $(selector.sidebar) + .filter(':visible') + .sidebar('hide') + ; + }, + + toggle: function() { + if(module.is.closed()) { + module.show(); + } + else { + module.hide(); + } + }, + + pushPage: function() { + var + direction = module.get.direction(), + distance = (module.is.vertical()) + ? $module.outerHeight() + : $module.outerWidth() + ; + if(settings.useCSS) { + module.debug('Using CSS to animate body'); + module.add.bodyCSS(direction, distance); + module.set.pushed(); + } + else { + module.animatePage(direction, distance, module.set.pushed); + } + }, + + pullPage: function() { + var + direction = module.get.direction() + ; + if(settings.useCSS) { + module.debug('Resetting body position css'); + module.remove.bodyCSS(); + } + else { + module.debug('Resetting body position using javascript'); + module.animatePage(direction, 0); + } + module.remove.pushed(); + }, + + animatePage: function(direction, distance) { + var + animateSettings = {} + ; + animateSettings['padding-' + direction] = distance; + module.debug('Using javascript to animate body', animateSettings); + $body + .animate(animateSettings, settings.duration, module.set.pushed) + ; + }, + + add: { + bodyCSS: function(direction, distance) { + var + style + ; + if(direction !== className.bottom) { + style = '' + + '' + ; + } + $head.append(style); + module.debug('Adding body css to head', $style); + } + }, + + + remove: { + bodyCSS: function() { + module.debug('Removing body css styles', $style); + module.refresh(); + $style.remove(); + }, + active: function() { + $module.removeClass(className.active); + }, + pushed: function() { + module.verbose('Removing body push state', module.get.direction()); + $body + .removeClass(className[ module.get.direction() ]) + .removeClass(className.pushed) + ; + } + }, + + set: { + active: function() { + $module.addClass(className.active); + }, + pushed: function() { + module.verbose('Adding body push state', module.get.direction()); + $body + .addClass(className[ module.get.direction() ]) + .addClass(className.pushed) + ; + } + }, + + get: { + direction: function() { + if($module.hasClass(className.top)) { + return className.top; + } + else if($module.hasClass(className.right)) { + return className.right; + } + else if($module.hasClass(className.bottom)) { + return className.bottom; + } + else { + return className.left; + } + }, + transitionEvent: function() { + var + element = document.createElement('element'), + transitions = { + 'transition' :'transitionend', + 'OTransition' :'oTransitionEnd', + 'MozTransition' :'transitionend', + 'WebkitTransition' :'webkitTransitionEnd' + }, + transition + ; + for(transition in transitions){ + if( element.style[transition] !== undefined ){ + return transitions[transition]; + } + } + } + }, + + is: { + open: function() { + return $module.is(':animated') || $module.hasClass(className.active); + }, + closed: function() { + return !module.is.open(); + }, + vertical: function() { + return $module.hasClass(className.top); + } + }, + + setting: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if($allModules.size() > 1) { + title += ' ' + '(' + $allModules.size() + ')'; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + }) + ; + + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + +$.fn.sidebar.settings = { + + name : 'Sidebar', + namespace : 'sidebar', + + debug : false, + verbose : true, + performance : true, + + useCSS : true, + exclusive : true, + overlay : false, + duration : 300, + + onChange : function(){}, + onShow : function(){}, + onHide : function(){}, + + className: { + active : 'active', + pushed : 'pushed', + top : 'top', + left : 'left', + right : 'right', + bottom : 'bottom' + }, + + selector: { + sidebar: '.ui.sidebar' + }, + + error : { + method : 'The method you called is not defined.', + notFound : 'There were no elements that matched the specified selector' + } + +}; + +})( jQuery, window , document ); + +/* + * # Semantic - Tab + * http://github.com/jlukic/semantic-ui/ + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + + +;(function ($, window, document, undefined) { + + $.fn.tab = function(parameters) { + + var + settings = $.extend(true, {}, $.fn.tab.settings, parameters), + + $module = $(this), + $tabs = $(settings.context).find(settings.selector.tabs), + + moduleSelector = $module.selector || '', + + cache = {}, + firstLoad = true, + recursionDepth = 0, + + activeTabPath, + parameterArray, + historyEvent, + + element = this, + time = new Date().getTime(), + performance = [], + + className = settings.className, + metadata = settings.metadata, + error = settings.error, + + eventNamespace = '.' + settings.namespace, + moduleNamespace = 'module-' + settings.namespace, + + instance = $module.data(moduleNamespace), + + query = arguments[0], + methodInvoked = (instance !== undefined && typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + + module, + returnedValue + ; + + module = { + + initialize: function() { + module.debug('Initializing Tabs', $module); + + // set up automatic routing + if(settings.auto) { + module.verbose('Setting up automatic tab retrieval from server'); + settings.apiSettings = { + url: settings.path + '/{$tab}' + }; + } + + // attach history events + if(settings.history) { + module.debug('Initializing page state'); + if( $.address === undefined ) { + module.error(error.state); + return false; + } + else { + if(settings.historyType == 'hash') { + module.debug('Using hash state change to manage state'); + } + if(settings.historyType == 'html5') { + module.debug('Using HTML5 to manage state'); + if(settings.path !== false) { + $.address + .history(true) + .state(settings.path) + ; + } + else { + module.error(error.path); + return false; + } + } + $.address + .unbind('change') + .bind('change', module.event.history.change) + ; + } + } + + // attach events if navigation wasn't set to window + if( !$.isWindow( element ) ) { + module.debug('Attaching tab activation events to element', $module); + $module + .on('click' + eventNamespace, module.event.click) + ; + } + module.instantiate(); + }, + + instantiate: function () { + module.verbose('Storing instance of module', module); + $module + .data(moduleNamespace, module) + ; + }, + + destroy: function() { + module.debug('Destroying tabs', $module); + $module + .removeData(moduleNamespace) + .off(eventNamespace) + ; + }, + + event: { + click: function(event) { + var + tabPath = $(this).data(metadata.tab) + ; + if(tabPath !== undefined) { + if(settings.history) { + module.verbose('Updating page state', event); + $.address.value(tabPath); + } + else { + module.verbose('Changing tab without state management', event); + module.changeTab(tabPath); + } + event.preventDefault(); + } + else { + module.debug('No tab specified'); + } + }, + history: { + change: function(event) { + var + tabPath = event.pathNames.join('/') || module.get.initialPath(), + pageTitle = settings.templates.determineTitle(tabPath) || false + ; + module.debug('History change event', tabPath, event); + historyEvent = event; + if(tabPath !== undefined) { + module.changeTab(tabPath); + } + if(pageTitle) { + $.address.title(pageTitle); + } + } + } + }, + + refresh: function() { + if(activeTabPath) { + module.debug('Refreshing tab', activeTabPath); + module.changeTab(activeTabPath); + } + }, + + cache: { + + read: function(cacheKey) { + return (cacheKey !== undefined) + ? cache[cacheKey] + : false + ; + }, + add: function(cacheKey, content) { + cacheKey = cacheKey || activeTabPath; + module.debug('Adding cached content for', cacheKey); + cache[cacheKey] = content; + }, + remove: function(cacheKey) { + cacheKey = cacheKey || activeTabPath; + module.debug('Removing cached content for', cacheKey); + delete cache[cacheKey]; + } + }, + + set: { + state: function(url) { + $.address.value(url); + } + }, + + changeTab: function(tabPath) { + var + pushStateAvailable = (window.history && window.history.pushState), + shouldIgnoreLoad = (pushStateAvailable && settings.ignoreFirstLoad && firstLoad), + remoteContent = (settings.auto || $.isPlainObject(settings.apiSettings) ), + // only get default path if not remote content + pathArray = (remoteContent && !shouldIgnoreLoad) + ? module.utilities.pathToArray(tabPath) + : module.get.defaultPathArray(tabPath) + ; + tabPath = module.utilities.arrayToPath(pathArray); + module.deactivate.all(); + $.each(pathArray, function(index, tab) { + var + currentPathArray = pathArray.slice(0, index + 1), + currentPath = module.utilities.arrayToPath(currentPathArray), + + isTab = module.is.tab(currentPath), + isLastIndex = (index + 1 == pathArray.length), + + $tab = module.get.tabElement(currentPath), + nextPathArray, + nextPath, + isLastTab + ; + module.verbose('Looking for tab', tab); + if(isTab) { + module.verbose('Tab was found', tab); + + // scope up + activeTabPath = currentPath; + parameterArray = module.utilities.filterArray(pathArray, currentPathArray); + + if(isLastIndex) { + isLastTab = true; + } + else { + nextPathArray = pathArray.slice(0, index + 2); + nextPath = module.utilities.arrayToPath(nextPathArray); + isLastTab = ( !module.is.tab(nextPath) ); + if(isLastTab) { + module.verbose('Tab parameters found', nextPathArray); + } + } + if(isLastTab && remoteContent) { + if(!shouldIgnoreLoad) { + module.activate.navigation(currentPath); + module.content.fetch(currentPath, tabPath); + } + else { + module.debug('Ignoring remote content on first tab load', currentPath); + firstLoad = false; + module.cache.add(tabPath, $tab.html()); + module.activate.all(currentPath); + $.proxy(settings.onTabInit, $tab)(currentPath, parameterArray, historyEvent); + $.proxy(settings.onTabLoad, $tab)(currentPath, parameterArray, historyEvent); + } + return false; + } + else { + module.debug('Opened local tab', currentPath); + module.activate.all(currentPath); + if( !module.cache.read(currentPath) ) { + module.cache.add(currentPath, true); + module.debug('First time tab loaded calling tab init'); + $.proxy(settings.onTabInit, $tab)(currentPath, parameterArray, historyEvent); + } + $.proxy(settings.onTabLoad, $tab)(currentPath, parameterArray, historyEvent); + } + } + else { + module.error(error.missingTab, tab); + return false; + } + }); + }, + + content: { + + fetch: function(tabPath, fullTabPath) { + var + $tab = module.get.tabElement(tabPath), + apiSettings = { + dataType : 'html', + stateContext : $tab, + success : function(response) { + module.cache.add(fullTabPath, response); + module.content.update(tabPath, response); + if(tabPath == activeTabPath) { + module.debug('Content loaded', tabPath); + module.activate.tab(tabPath); + } + else { + module.debug('Content loaded in background', tabPath); + } + $.proxy(settings.onTabInit, $tab)(tabPath, parameterArray, historyEvent); + $.proxy(settings.onTabLoad, $tab)(tabPath, parameterArray, historyEvent); + }, + urlData: { tab: fullTabPath } + }, + request = $tab.data(metadata.promise) || false, + existingRequest = ( request && request.state() === 'pending' ), + requestSettings, + cachedContent + ; + + fullTabPath = fullTabPath || tabPath; + cachedContent = module.cache.read(fullTabPath); + + if(settings.cache && cachedContent) { + module.debug('Showing existing content', fullTabPath); + module.content.update(tabPath, cachedContent); + module.activate.tab(tabPath); + $.proxy(settings.onTabLoad, $tab)(tabPath, parameterArray, historyEvent); + } + else if(existingRequest) { + module.debug('Content is already loading', fullTabPath); + $tab + .addClass(className.loading) + ; + } + else if($.api !== undefined) { + console.log(settings.apiSettings); + requestSettings = $.extend(true, { headers: { 'X-Remote': true } }, settings.apiSettings, apiSettings); + module.debug('Retrieving remote content', fullTabPath, requestSettings); + $.api( requestSettings ); + } + else { + module.error(error.api); + } + }, + + update: function(tabPath, html) { + module.debug('Updating html for', tabPath); + var + $tab = module.get.tabElement(tabPath) + ; + $tab + .html(html) + ; + } + }, + + activate: { + all: function(tabPath) { + module.activate.tab(tabPath); + module.activate.navigation(tabPath); + }, + tab: function(tabPath) { + var + $tab = module.get.tabElement(tabPath) + ; + module.verbose('Showing tab content for', $tab); + $tab.addClass(className.active); + }, + navigation: function(tabPath) { + var + $navigation = module.get.navElement(tabPath) + ; + module.verbose('Activating tab navigation for', $navigation, tabPath); + $navigation.addClass(className.active); + } + }, + + deactivate: { + all: function() { + module.deactivate.navigation(); + module.deactivate.tabs(); + }, + navigation: function() { + $module + .removeClass(className.active) + ; + }, + tabs: function() { + $tabs + .removeClass(className.active + ' ' + className.loading) + ; + } + }, + + is: { + tab: function(tabName) { + return (tabName !== undefined) + ? ( module.get.tabElement(tabName).size() > 0 ) + : false + ; + } + }, + + get: { + initialPath: function() { + return $module.eq(0).data(metadata.tab) || $tabs.eq(0).data(metadata.tab); + }, + path: function() { + return $.address.value(); + }, + // adds default tabs to tab path + defaultPathArray: function(tabPath) { + return module.utilities.pathToArray( module.get.defaultPath(tabPath) ); + }, + defaultPath: function(tabPath) { + var + $defaultNav = $module.filter('[data-' + metadata.tab + '^="' + tabPath + '/"]').eq(0), + defaultTab = $defaultNav.data(metadata.tab) || false + ; + if( defaultTab ) { + module.debug('Found default tab', defaultTab); + if(recursionDepth < settings.maxDepth) { + recursionDepth++; + return module.get.defaultPath(defaultTab); + } + module.error(error.recursion); + } + else { + module.debug('No default tabs found for', tabPath, $tabs); + } + recursionDepth = 0; + return tabPath; + }, + navElement: function(tabPath) { + tabPath = tabPath || activeTabPath; + return $module.filter('[data-' + metadata.tab + '="' + tabPath + '"]'); + }, + tabElement: function(tabPath) { + var + $fullPathTab, + $simplePathTab, + tabPathArray, + lastTab + ; + tabPath = tabPath || activeTabPath; + tabPathArray = module.utilities.pathToArray(tabPath); + lastTab = module.utilities.last(tabPathArray); + $fullPathTab = $tabs.filter('[data-' + metadata.tab + '="' + lastTab + '"]'); + $simplePathTab = $tabs.filter('[data-' + metadata.tab + '="' + tabPath + '"]'); + return ($fullPathTab.size() > 0) + ? $fullPathTab + : $simplePathTab + ; + }, + tab: function() { + return activeTabPath; + } + }, + + utilities: { + filterArray: function(keepArray, removeArray) { + return $.grep(keepArray, function(keepValue) { + return ( $.inArray(keepValue, removeArray) == -1); + }); + }, + last: function(array) { + return $.isArray(array) + ? array[ array.length - 1] + : false + ; + }, + pathToArray: function(pathName) { + if(pathName === undefined) { + pathName = activeTabPath; + } + return typeof pathName == 'string' + ? pathName.split('/') + : [pathName] + ; + }, + arrayToPath: function(pathArray) { + return $.isArray(pathArray) + ? pathArray.join('/') + : false + ; + } + }, + + setting: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + + return (returnedValue !== undefined) + ? returnedValue + : this + ; + + }; + + // shortcut for tabbed content with no defined navigation + $.tab = function(settings) { + $(window).tab(settings); + }; + + $.fn.tab.settings = { + + name : 'Tab', + debug : false, + verbose : true, + performance : true, + namespace : 'tab', + + // only called first time a tab's content is loaded (when remote source) + onTabInit : function(tabPath, parameterArray, historyEvent) {}, + // called on every load + onTabLoad : function(tabPath, parameterArray, historyEvent) {}, + + templates : { + determineTitle: function(tabArray) {} + }, + + // uses pjax style endpoints fetching content from same url with remote-content headers + auto : false, + history : true, + historyType : 'hash', + path : false, + + context : 'body', + + // max depth a tab can be nested + maxDepth : 25, + // dont load content on first load + ignoreFirstLoad : false, + // load tab content new every tab click + alwaysRefresh : false, + // cache the content requests to pull locally + cache : true, + // settings for api call + apiSettings : false, + + error: { + api : 'You attempted to load content without API module', + method : 'The method you called is not defined', + missingTab : 'Tab cannot be found', + noContent : 'The tab you specified is missing a content url.', + path : 'History enabled, but no path was specified', + recursion : 'Max recursive depth reached', + state : 'The state library has not been initialized' + }, + + metadata : { + tab : 'tab', + loaded : 'loaded', + promise: 'promise' + }, + + className : { + loading : 'loading', + active : 'active' + }, + + selector : { + tabs : '.ui.tab' + } + + }; + +})( jQuery, window , document ); + +/* + * # Semantic - Transition + * http://github.com/jlukic/semantic-ui/ + * + * + * Copyright 2013 Contributors + * Released under the MIT license + * http://opensource.org/licenses/MIT + * + */ + +;(function ( $, window, document, undefined ) { + +$.fn.transition = function() { + var + $allModules = $(this), + moduleSelector = $allModules.selector || '', + + time = new Date().getTime(), + performance = [], + + moduleArguments = arguments, + query = moduleArguments[0], + queryArguments = [].slice.call(arguments, 1), + methodInvoked = (typeof query === 'string'), + + requestAnimationFrame = window.requestAnimationFrame + || window.mozRequestAnimationFrame + || window.webkitRequestAnimationFrame + || window.msRequestAnimationFrame + || function(callback) { setTimeout(callback, 0); }, + + returnedValue + ; + $allModules + .each(function() { + var + $module = $(this), + element = this, + + // set at run time + settings, + instance, + + error, + className, + metadata, + animationEnd, + animationName, + + namespace, + moduleNamespace, + module + ; + + module = { + + initialize: function() { + // get settings + settings = module.get.settings.apply(element, moduleArguments); + module.verbose('Converted arguments into settings object', settings); + + // set shortcuts + error = settings.error; + className = settings.className; + namespace = settings.namespace; + metadata = settings.metadata; + moduleNamespace = 'module-' + namespace; + + animationEnd = module.get.animationEvent(); + animationName = module.get.animationName(); + + instance = $module.data(moduleNamespace) || module; + + if(methodInvoked) { + methodInvoked = module.invoke(query); + } + // no internal method was found matching query or query not made + if(methodInvoked === false) { + module.animate(); + } + module.instantiate(); + }, + + instantiate: function() { + module.verbose('Storing instance of module', module); + $module + .data(moduleNamespace, instance) + ; + }, + + destroy: function() { + module.verbose('Destroying previous module for', element); + $module + .removeData(moduleNamespace) + ; + }, + + refresh: function() { + module.verbose('Refreshing display type on next animation'); + delete instance.displayType; + }, + + forceRepaint: function() { + module.verbose('Forcing element repaint'); + var + $parentElement = $module.parent(), + $nextElement = $module.next() + ; + if($nextElement.size() === 0) { + $module.detach().appendTo($parentElement); + } + else { + $module.detach().insertBefore($nextElement); + } + }, + + repaint: function() { + module.verbose('Repainting element'); + var + fakeAssignment = element.offsetWidth + ; + }, + + animate: function(overrideSettings) { + settings = overrideSettings || settings; + if(!module.is.supported()) { + module.error(error.support); + return false; + } + module.debug('Preparing animation', settings.animation); + if(module.is.animating() && settings.queue) { + if(!settings.allowRepeats && module.has.direction() && module.is.occuring() && instance.queuing !== true) { + module.error(error.repeated); + } + else { + module.queue(settings.animation); + } + return false; + } + if(module.can.animate) { + module.set.animating(settings.animation); + } + else { + module.error(error.noAnimation, settings.animation); + } + }, + + reset: function() { + module.debug('Resetting animation to beginning conditions'); + $module.off(animationEnd); + module.restore.conditions(); + module.hide(); + module.remove.animating(); + }, + + queue: function(animation) { + module.debug('Queueing animation of', animation); + instance.queuing = true; + $module + .one(animationEnd, function() { + instance.queuing = false; + module.repaint(); + module.animate.apply(this, settings); + }) + ; + }, + + complete: function () { + module.verbose('CSS animation complete', settings.animation); + if(!module.is.looping()) { + if( module.is.outward() ) { + module.verbose('Animation is outward, hiding element'); + module.restore.conditions(); + module.remove.display(); + module.hide(); + $.proxy(settings.onHide, this)(); + } + else if( module.is.inward() ) { + module.verbose('Animation is outward, showing element'); + module.restore.conditions(); + module.show(); + $.proxy(settings.onShow, this)(); + } + else { + module.restore.conditions(); + } + module.remove.duration(); + module.remove.animating(); + } + $.proxy(settings.complete, this)(); + }, + + has: { + direction: function(animation) { + animation = animation || settings.animation; + if( animation.search(className.inward) !== -1 || animation.search(className.outward) !== -1) { + module.debug('Direction already set in animation'); + return true; + } + return false; + } + }, + + set: { + + animating: function(animation) { + animation = animation || settings.animation; + module.save.conditions(); + if(module.can.transition() && !module.has.direction()) { + module.set.direction(); + } + module.remove.hidden(); + module.set.display(); + $module + .addClass(className.animating) + .addClass(className.transition) + .addClass(animation) + .one(animationEnd, module.complete) + ; + module.set.duration(settings.duration); + module.debug('Starting tween', settings.animation, $module.attr('class')); + }, + + display: function() { + var + displayType = module.get.displayType() + ; + if(displayType !== 'block' && displayType !== 'none') { + module.verbose('Setting final visibility to', displayType); + $module + .css({ + display: displayType + }) + ; + } + }, + + direction: function() { + if($module.is(':visible')) { + module.debug('Automatically determining the direction of animation', 'Outward'); + $module + .removeClass(className.inward) + .addClass(className.outward) + ; + } + else { + module.debug('Automatically determining the direction of animation', 'Inward'); + $module + .removeClass(className.outward) + .addClass(className.inward) + ; + } + }, + + looping: function() { + module.debug('Transition set to loop'); + $module + .addClass(className.looping) + ; + }, + + duration: function(duration) { + duration = duration || settings.duration; + duration = (typeof duration == 'number') + ? duration + 'ms' + : duration + ; + module.verbose('Setting animation duration', duration); + $module + .css({ + '-webkit-animation-duration': duration, + '-moz-animation-duration': duration, + '-ms-animation-duration': duration, + '-o-animation-duration': duration, + 'animation-duration': duration + }) + ; + }, + + hidden: function() { + $module + .addClass(className.transition) + .addClass(className.hidden) + ; + }, + + visible: function() { + $module + .addClass(className.transition) + .addClass(className.visible) + ; + } + }, + + save: { + displayType: function(displayType) { + instance.displayType = displayType; + }, + transitionExists: function(animation, exists) { + $.fn.transition.exists[animation] = exists; + module.verbose('Saving existence of transition', animation, exists); + }, + conditions: function() { + instance.cache = { + className : $module.attr('class'), + style : $module.attr('style') + }; + module.verbose('Saving original attributes', instance.cache); + } + }, + + restore: { + conditions: function() { + if(instance.cache === undefined) { + return false; + } + if(instance.cache.className) { + $module.attr('class', instance.cache.className); + } + else { + $module.removeAttr('class'); + } + if(instance.cache.style) { + $module.attr('style', instance.cache.style); + } + else { + if(module.get.displayType() === 'block') { + $module.removeAttr('style'); + } + } + if(module.is.looping()) { + module.remove.looping(); + } + module.verbose('Restoring original attributes', instance.cache); + } + }, + + remove: { + + animating: function() { + $module.removeClass(className.animating); + }, + + display: function() { + if(instance.displayType !== undefined) { + $module.css('display', ''); + } + }, + + duration: function() { + $module + .css({ + '-webkit-animation-duration' : '', + '-moz-animation-duration' : '', + '-ms-animation-duration' : '', + '-o-animation-duration' : '', + 'animation-duration' : '' + }) + ; + }, + + hidden: function() { + $module.removeClass(className.hidden); + }, + + visible: function() { + $module.removeClass(className.visible); + }, + + looping: function() { + module.debug('Transitions are no longer looping'); + $module + .removeClass(className.looping) + ; + module.forceRepaint(); + } + + }, + + get: { + + settings: function(animation, duration, complete) { + // single settings object + if(typeof animation == 'object') { + return $.extend(true, {}, $.fn.transition.settings, animation); + } + // all arguments provided + else if(typeof complete == 'function') { + return $.extend({}, $.fn.transition.settings, { + animation : animation, + complete : complete, + duration : duration + }); + } + // only duration provided + else if(typeof duration == 'string' || typeof duration == 'number') { + return $.extend({}, $.fn.transition.settings, { + animation : animation, + duration : duration + }); + } + // duration is actually settings object + else if(typeof duration == 'object') { + return $.extend({}, $.fn.transition.settings, duration, { + animation : animation + }); + } + // duration is actually callback + else if(typeof duration == 'function') { + return $.extend({}, $.fn.transition.settings, { + animation : animation, + complete : duration + }); + } + // only animation provided + else { + return $.extend({}, $.fn.transition.settings, { + animation : animation + }); + } + return $.fn.transition.settings; + }, + + displayType: function() { + if(instance.displayType === undefined) { + // create fake element to determine display state + module.can.transition(); + } + return instance.displayType; + }, + + transitionExists: function(animation) { + return $.fn.transition.exists[animation]; + }, + + animationName: function() { + var + element = document.createElement('div'), + animations = { + 'animation' :'animationName', + 'OAnimation' :'oAnimationName', + 'MozAnimation' :'mozAnimationName', + 'WebkitAnimation' :'webkitAnimationName' + }, + animation + ; + for(animation in animations){ + if( element.style[animation] !== undefined ){ + module.verbose('Determined animation vendor name property', animations[animation]); + return animations[animation]; + } + } + return false; + }, + + animationEvent: function() { + var + element = document.createElement('div'), + animations = { + 'animation' :'animationend', + 'OAnimation' :'oAnimationEnd', + 'MozAnimation' :'animationend', + 'WebkitAnimation' :'webkitAnimationEnd' + }, + animation + ; + for(animation in animations){ + if( element.style[animation] !== undefined ){ + module.verbose('Determined animation vendor end event', animations[animation]); + return animations[animation]; + } + } + return false; + } + + }, + + can: { + animate: function() { + if($module.css(settings.animation) !== 'none') { + module.debug('CSS definition found', $module.css(settings.animation)); + return true; + } + else { + module.debug('Unable to find css definition', $module.attr('class')); + return false; + } + }, + transition: function() { + var + elementClass = $module.attr('class'), + animation = settings.animation, + transitionExists = module.get.transitionExists(settings.animation), + $clone, + currentAnimation, + inAnimation, + displayType + ; + if( transitionExists === undefined || instance.displayType === undefined) { + module.verbose('Determining whether animation exists'); + $clone = $('
').addClass( elementClass ).appendTo($('body')); + currentAnimation = $clone + .removeClass(className.inward) + .removeClass(className.outward) + .addClass(className.animating) + .addClass(className.transition) + .addClass(animation) + .css(animationName) + ; + inAnimation = $clone + .addClass(className.inward) + .css(animationName) + ; + displayType = $clone + .attr('class', elementClass) + .show() + .css('display') + ; + module.verbose('Determining final display state', displayType); + if(currentAnimation != inAnimation) { + module.debug('Transition exists for animation', animation); + transitionExists = true; + } + else { + module.debug('Static animation found', animation, displayType); + transitionExists = false; + } + $clone.remove(); + module.save.displayType(displayType); + module.save.transitionExists(animation, transitionExists); + } + return transitionExists; + } + }, + + is: { + animating: function() { + return $module.hasClass(className.animating); + }, + inward: function() { + return $module.hasClass(className.inward); + }, + outward: function() { + return $module.hasClass(className.outward); + }, + looping: function() { + return $module.hasClass(className.looping); + }, + occuring: function(animation) { + animation = animation || settings.animation; + return ( $module.hasClass(animation) ); + }, + visible: function() { + return $module.is(':visible'); + }, + supported: function() { + return(animationName !== false && animationEnd !== false); + } + }, + + hide: function() { + module.verbose('Hiding element'); + module.remove.visible(); + module.set.hidden(); + module.repaint(); + }, + + show: function(display) { + module.verbose('Showing element', display); + module.remove.hidden(); + module.set.visible(); + module.repaint(); + }, + + start: function() { + module.verbose('Starting animation'); + $module.removeClass(className.disabled); + }, + + stop: function() { + module.debug('Stopping animation'); + $module.addClass(className.disabled); + }, + + toggle: function() { + module.debug('Toggling play status'); + $module.toggleClass(className.disabled); + }, + + setting: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if($allModules.size() > 1) { + title += ' ' + '(' + $allModules.size() + ')'; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found || false; + } + }; + module.initialize(); + }) + ; + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + +$.fn.transition.exists = {}; + +$.fn.transition.settings = { + + // module info + name : 'Transition', + + // debug content outputted to console + debug : false, + + // verbose debug output + verbose : true, + + // performance data output + performance : true, + + // event namespace + namespace : 'transition', + + // animation complete event + complete : function() {}, + onShow : function() {}, + onHide : function() {}, + + // whether animation can occur twice in a row + allowRepeats : false, + + // animation duration + animation : 'fade', + duration : '700ms', + + // new animations will occur after previous ones + queue : true, + + className : { + animating : 'animating', + disabled : 'disabled', + hidden : 'hidden', + inward : 'in', + loading : 'loading', + looping : 'looping', + outward : 'out', + transition : 'ui transition', + visible : 'visible' + }, + + // possible errors + error: { + noAnimation : 'There is no css animation matching the one you specified.', + repeated : 'That animation is already occurring, cancelling repeated animation', + method : 'The method you called is not defined', + support : 'This browser does not support CSS animations' + } + +}; + + +})( jQuery, window , document ); + +/* ****************************** + Module - Video + Author: Jack Lukic + + This is a video playlist and video embed plugin which helps + provide helpers for adding embed code for vimeo and youtube and + abstracting event handlers for each library + +****************************** */ + +;(function ($, window, document, undefined) { + +$.fn.video = function(parameters) { + + var + $allModules = $(this), + + moduleSelector = $allModules.selector || '', + + time = new Date().getTime(), + performance = [], + + query = arguments[0], + methodInvoked = (typeof query == 'string'), + queryArguments = [].slice.call(arguments, 1), + + returnedValue + ; + + $allModules + .each(function() { + var + settings = ( $.isPlainObject(parameters) ) + ? $.extend(true, {}, $.fn.video.settings, parameters) + : $.extend({}, $.fn.video.settings), + + selector = settings.selector, + className = settings.className, + error = settings.error, + metadata = settings.metadata, + namespace = settings.namespace, + + eventNamespace = '.' + namespace, + moduleNamespace = 'module-' + namespace, + + $module = $(this), + $placeholder = $module.find(selector.placeholder), + $playButton = $module.find(selector.playButton), + $embed = $module.find(selector.embed), + + element = this, + instance = $module.data(moduleNamespace), + module + ; + + module = { + + initialize: function() { + module.debug('Initializing video'); + $placeholder + .on('click' + eventNamespace, module.play) + ; + $playButton + .on('click' + eventNamespace, module.play) + ; + module.instantiate(); + }, + + instantiate: function() { + module.verbose('Storing instance of module', module); + instance = module; + $module + .data(moduleNamespace, module) + ; + }, + + destroy: function() { + module.verbose('Destroying previous instance of video'); + $module + .removeData(moduleNamespace) + .off(eventNamespace) + ; + $placeholder + .off(eventNamespace) + ; + $playButton + .off(eventNamespace) + ; + }, + + // sets new video + change: function(source, id, url) { + module.debug('Changing video to ', source, id, url); + $module + .data(metadata.source, source) + .data(metadata.id, id) + .data(metadata.url, url) + ; + settings.onChange(); + }, + + // clears video embed + reset: function() { + module.debug('Clearing video embed and showing placeholder'); + $module + .removeClass(className.active) + ; + $embed + .html(' ') + ; + $placeholder + .show() + ; + settings.onReset(); + }, + + // plays current video + play: function() { + module.debug('Playing video'); + var + source = $module.data(metadata.source) || false, + url = $module.data(metadata.url) || false, + id = $module.data(metadata.id) || false + ; + $embed + .html( module.generate.html(source, id, url) ) + ; + $module + .addClass(className.active) + ; + settings.onPlay(); + }, + + generate: { + // generates iframe html + html: function(source, id, url) { + module.debug('Generating embed html'); + var + width = (settings.width == 'auto') + ? $module.width() + : settings.width, + height = (settings.height == 'auto') + ? $module.height() + : settings.height, + html + ; + if(source && id) { + if(source == 'vimeo') { + html = '' + + '' + ; + } + else if(source == 'youtube') { + html = '' + + '' + ; + } + } + else if(url) { + html = '' + + '' + ; + } + else { + module.error(error.noVideo); + } + return html; + }, + + // generate url parameters + url: function(source) { + var + api = (settings.api) + ? 1 + : 0, + autoplay = (settings.autoplay) + ? 1 + : 0, + hd = (settings.hd) + ? 1 + : 0, + showUI = (settings.showUI) + ? 1 + : 0, + // opposite used for some params + hideUI = !(settings.showUI) + ? 1 + : 0, + url = '' + ; + if(source == 'vimeo') { + url = '' + + 'api=' + api + + '&title=' + showUI + + '&byline=' + showUI + + '&portrait=' + showUI + + '&autoplay=' + autoplay + ; + if(settings.color) { + url += '&color=' + settings.color; + } + } + if(source == 'ustream') { + url = '' + + 'autoplay=' + autoplay + ; + if(settings.color) { + url += '&color=' + settings.color; + } + } + else if(source == 'youtube') { + url = '' + + 'enablejsapi=' + api + + '&autoplay=' + autoplay + + '&autohide=' + hideUI + + '&hq=' + hd + + '&modestbranding=1' + ; + if(settings.color) { + url += '&color=' + settings.color; + } + } + return url; + } + }, + + setting: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, settings, name); + } + else if(value !== undefined) { + settings[name] = value; + } + else { + return settings[name]; + } + }, + internal: function(name, value) { + if( $.isPlainObject(name) ) { + $.extend(true, module, name); + } + else if(value !== undefined) { + module[name] = value; + } + else { + return module[name]; + } + }, + debug: function() { + if(settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.debug.apply(console, arguments); + } + } + }, + verbose: function() { + if(settings.verbose && settings.debug) { + if(settings.performance) { + module.performance.log(arguments); + } + else { + module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':'); + module.verbose.apply(console, arguments); + } + } + }, + error: function() { + module.error = Function.prototype.bind.call(console.error, console, settings.name + ':'); + module.error.apply(console, arguments); + }, + performance: { + log: function(message) { + var + currentTime, + executionTime, + previousTime + ; + if(settings.performance) { + currentTime = new Date().getTime(); + previousTime = time || currentTime; + executionTime = currentTime - previousTime; + time = currentTime; + performance.push({ + 'Element' : element, + 'Name' : message[0], + 'Arguments' : [].slice.call(message, 1) || '', + 'Execution Time' : executionTime + }); + } + clearTimeout(module.performance.timer); + module.performance.timer = setTimeout(module.performance.display, 100); + }, + display: function() { + var + title = settings.name + ':', + totalTime = 0 + ; + time = false; + clearTimeout(module.performance.timer); + $.each(performance, function(index, data) { + totalTime += data['Execution Time']; + }); + title += ' ' + totalTime + 'ms'; + if(moduleSelector) { + title += ' \'' + moduleSelector + '\''; + } + if($allModules.size() > 1) { + title += ' ' + '(' + $allModules.size() + ')'; + } + if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) { + console.groupCollapsed(title); + if(console.table) { + console.table(performance); + } + else { + $.each(performance, function(index, data) { + console.log(data['Name'] + ': ' + data['Execution Time']+'ms'); + }); + } + console.groupEnd(); + } + performance = []; + } + }, + invoke: function(query, passedArguments, context) { + var + object = instance, + maxDepth, + found, + response + ; + passedArguments = passedArguments || queryArguments; + context = element || context; + if(typeof query == 'string' && object !== undefined) { + query = query.split(/[\. ]/); + maxDepth = query.length - 1; + $.each(query, function(depth, value) { + var camelCaseValue = (depth != maxDepth) + ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1) + : query + ; + if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) { + object = object[camelCaseValue]; + } + else if( object[camelCaseValue] !== undefined ) { + found = object[camelCaseValue]; + return false; + } + else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) { + object = object[value]; + } + else if( object[value] !== undefined ) { + found = object[value]; + return false; + } + else { + return false; + } + }); + } + if ( $.isFunction( found ) ) { + response = found.apply(context, passedArguments); + } + else if(found !== undefined) { + response = found; + } + if($.isArray(returnedValue)) { + returnedValue.push(response); + } + else if(returnedValue !== undefined) { + returnedValue = [returnedValue, response]; + } + else if(response !== undefined) { + returnedValue = response; + } + return found; + } + }; + + if(methodInvoked) { + if(instance === undefined) { + module.initialize(); + } + module.invoke(query); + } + else { + if(instance !== undefined) { + module.destroy(); + } + module.initialize(); + } + }) + ; + return (returnedValue !== undefined) + ? returnedValue + : this + ; +}; + +$.fn.video.settings = { + + name : 'Video', + namespace : 'video', + + debug : false, + verbose : true, + performance : true, + + metadata : { + source : 'source', + id : 'id', + url : 'url' + }, + + onPlay : function(){}, + onReset : function(){}, + onChange : function(){}, + + // callbacks not coded yet (needs to use jsapi) + onPause : function() {}, + onStop : function() {}, + + width : 'auto', + height : 'auto', + + autoplay : false, + color : '#442359', + hd : true, + showUI : false, + api : true, + + error : { + noVideo : 'No video specified', + method : 'The method you called is not defined' + }, + + className : { + active : 'active' + }, + + selector : { + embed : '.embed', + placeholder : '.placeholder', + playButton : '.play' + } +}; + + +})( jQuery, window , document ); diff --git a/ajax/libs/semantic-ui/0.16.1/javascript/semantic.min.js b/ajax/libs/semantic-ui/0.16.1/javascript/semantic.min.js new file mode 100644 index 000000000..8476d1317 --- /dev/null +++ b/ajax/libs/semantic-ui/0.16.1/javascript/semantic.min.js @@ -0,0 +1,16 @@ +/** # Semantic UI +* Version: 0.16.1 +* http://github.com/jlukic/semantic-ui +* +* +* Copyright 2014 Contributors +* Released under the MIT license +* http://opensource.org/licenses/MIT +* +* Release Date: 04/22/2014 +*/ +!function(a,b,c,d){a.fn.accordion=function(b){var c,e=a(this),f=(new Date).getTime(),g=[],h=arguments[0],i="string"==typeof h,j=[].slice.call(arguments,1);return e.each(function(){var k,l=a.isPlainObject(b)?a.extend(!0,{},a.fn.accordion.settings,b):a.extend({},a.fn.accordion.settings),m=l.className,n=l.namespace,o=l.selector,p=(l.error,"."+n),q="module-"+n,r=e.selector||"",s=a(this),t=s.find(o.title),u=s.find(o.content),v=this,w=s.data(q);k={initialize:function(){k.debug("Initializing accordion with bound events",s),t.on("click"+p,k.event.click),k.instantiate()},instantiate:function(){w=k,s.data(q,k)},destroy:function(){k.debug("Destroying previous accordion for",s),s.removeData(q),t.off(p)},event:{click:function(){k.verbose("Title clicked",this);var b=a(this),c=t.index(b);k.toggle(c)},resetDisplay:function(){a(this).css("display",""),""==a(this).attr("style")&&a(this).attr("style","").removeAttr("style")},resetOpacity:function(){a(this).css("opacity",""),""==a(this).attr("style")&&a(this).attr("style","").removeAttr("style")}},toggle:function(a){k.debug("Toggling content content at index",a);var b=t.eq(a),c=b.next(u),d=c.is(":visible");d?l.collapsible?k.close(a):k.debug("Cannot close accordion content collapsing is disabled"):k.open(a)},open:function(b){var c=t.eq(b),d=c.next(u),e=c.siblings(o.title).filter("."+m.active),f=e.next(t),g=e.size()>0;d.is(":animated")||(k.debug("Opening accordion content",c),l.exclusive&&g&&(e.removeClass(m.active),f.stop().children().stop().animate({opacity:0},l.duration,k.event.resetOpacity).end().slideUp(l.duration,l.easing,function(){f.removeClass(m.active).children(),a.proxy(k.event.resetDisplay,this)()})),c.addClass(m.active),d.stop().children().stop().animate({opacity:1},l.duration).end().slideDown(l.duration,l.easing,function(){d.addClass(m.active),a.proxy(k.event.resetDisplay,this)(),a.proxy(l.onOpen,d)(),a.proxy(l.onChange,d)()}))},close:function(b){var c=t.eq(b),d=c.next(u);k.debug("Closing accordion content",d),c.removeClass(m.active),d.removeClass(m.active).show().stop().children().stop().animate({opacity:0},l.duration,k.event.resetOpacity).end().slideUp(l.duration,l.easing,function(){a.proxy(k.event.resetDisplay,this)(),a.proxy(l.onClose,d)(),a.proxy(l.onChange,d)()})},setting:function(b,c){if(a.isPlainObject(b))a.extend(!0,l,b);else{if(c===d)return l[b];l[b]=c}},internal:function(b,c){return k.debug("Changing internal",b,c),c===d?k[b]:void(a.isPlainObject(b)?a.extend(!0,k,b):k[b]=c)},debug:function(){l.debug&&(l.performance?k.performance.log(arguments):(k.debug=Function.prototype.bind.call(console.info,console,l.name+":"),k.debug.apply(console,arguments)))},verbose:function(){l.verbose&&l.debug&&(l.performance?k.performance.log(arguments):(k.verbose=Function.prototype.bind.call(console.info,console,l.name+":"),k.verbose.apply(console,arguments)))},error:function(){k.error=Function.prototype.bind.call(console.error,console,l.name+":"),k.error.apply(console,arguments)},performance:{log:function(a){var b,c,d;l.performance&&(b=(new Date).getTime(),d=f||b,c=b-d,f=b,g.push({Element:v,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":c})),clearTimeout(k.performance.timer),k.performance.timer=setTimeout(k.performance.display,100)},display:function(){var b=l.name+":",c=0;f=!1,clearTimeout(k.performance.timer),a.each(g,function(a,b){c+=b["Execution Time"]}),b+=" "+c+"ms",r&&(b+=" '"+r+"'"),(console.group!==d||console.table!==d)&&g.length>0&&(console.groupCollapsed(b),console.table?console.table(g):a.each(g,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),g=[]}},invoke:function(b,e,f){var g,h,i,k=w;return e=e||j,f=v||f,"string"==typeof b&&k!==d&&(b=b.split(/[\. ]/),g=b.length-1,a.each(b,function(c,e){var f=c!=g?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(k[f])&&c!=g)k=k[f];else{if(k[f]!==d)return h=k[f],!1;if(!a.isPlainObject(k[e])||c==g)return k[e]!==d?(h=k[e],!1):!1;k=k[e]}})),a.isFunction(h)?i=h.apply(f,e):h!==d&&(i=h),a.isArray(c)?c.push(i):c!==d?c=[c,i]:i!==d&&(c=i),h}},i?(w===d&&k.initialize(),k.invoke(h)):(w!==d&&k.destroy(),k.initialize())}),c!==d?c:this},a.fn.accordion.settings={name:"Accordion",namespace:"accordion",debug:!1,verbose:!0,performance:!0,exclusive:!0,collapsible:!0,duration:500,easing:"easeInOutQuint",onOpen:function(){},onClose:function(){},onChange:function(){},error:{method:"The method you called is not defined"},className:{active:"active"},selector:{title:".title",content:".content"}},a.extend(a.easing,{easeInOutQuint:function(a,b,c,d,e){return(b/=e/2)<1?d/2*b*b*b*b*b+c:d/2*((b-=2)*b*b*b*b+2)+c}})}(jQuery,window,document),function(a,b,c,d){a.api=a.fn.api=function(c){var e,f,g=a.extend(!0,{},a.api.settings,c),h="function"!=typeof this?this:a("
"),i=a(g.stateContext?g.stateContext:h),j="object"==typeof this?a(h):i,k=this,l=(new Date).getTime(),m=[],n=j.selector||"",o=g.namespace+"-module",p=g.className,q=g.metadata,r=g.error,s=j.data(o),t=arguments[0],u=s!==d&&"string"==typeof t,v=[].slice.call(arguments,1);return e={initialize:function(){var c,f,h,k,l,m,n=(new Date).getTime(),o={},s={};return g.serializeForm&&a(this).toJSON()!==d&&(o=e.get.formData(),e.debug("Adding form data to API Request",o),a.extend(!0,g.data,o)),c=a.proxy(g.beforeSend,j)(g),c===d||c?(k=e.get.url(e.get.templateURL()))?(h=a.Deferred().always(function(){g.stateContext&&i.removeClass(p.loading),a.proxy(g.complete,j)()}).done(function(b){e.debug("API request successful"),"json"==g.dataType?b.error!==d?a.proxy(g.failure,i)(b.error,g,j):a.isArray(b.errors)?a.proxy(g.failure,i)(b.errors[0],g,j):a.proxy(g.success,i)(b,g,j):a.proxy(g.success,i)(b,g,j)}).fail(function(b,c,f){var h,j=g.error[c]!==d?g.error[c]:f;if(b!==d)if(b.readyState!==d&&4==b.readyState){if(200!=b.status&&f!==d&&""!==f)e.error(k.statusMessage+f);else if("error"==c&&"json"==g.dataType)try{h=a.parseJSON(b.responseText),h&&h.error!==d&&(j=h.error)}catch(k){e.error(k.JSONParse)}i.removeClass(p.loading).addClass(p.error),g.errorLength>0&&setTimeout(function(){i.removeClass(p.error)},g.errorLength),e.debug("API Request error:",j),a.proxy(g.failure,i)(j,g,this)}else e.debug("Request Aborted (Most likely caused by page change)")}),a.extend(!0,s,g,{success:function(){},failure:function(){},complete:function(){},type:g.method||g.type,data:l,url:k,beforeSend:g.beforeXHR}),g.stateContext&&i.addClass(p.loading),g.progress&&(e.verbose("Adding progress events"),a.extend(!0,s,{xhr:function(){var c=new b.XMLHttpRequest;return c.upload.addEventListener("progress",function(b){var c;b.lengthComputable&&(c=Math.round(b.loaded/b.total*1e4)/100+"%",a.proxy(g.progress,i)(c,b))},!1),c.addEventListener("progress",function(b){var c;b.lengthComputable&&(c=Math.round(b.loaded/b.total*1e4)/100+"%",a.proxy(g.progress,i)(c,b))},!1),c}})),e.verbose("Creating AJAX request with settings: ",s),m=a.ajax(s).always(function(){f=g.loadingLength-((new Date).getTime()-n),g.loadingDelay=0>f?0:f}).done(function(a){var b=this;setTimeout(function(){h.resolveWith(b,[a])},g.loadingDelay)}).fail(function(a,b,c){var d=this;"abort"!=b?setTimeout(function(){h.rejectWith(d,[a,b,c])},g.loadingDelay):i.removeClass(p.error).removeClass(p.loading)}),void(g.stateContext&&j.data(q.promise,h).data(q.xhr,m))):(e.error(r.missingURL),void e.reset()):(e.error(r.beforeSend),void e.reset())},get:{formData:function(){return j.closest("form").toJSON()},templateURL:function(){var a,b=j.data(g.metadata.action)||g.action||!1;return b&&(e.debug("Creating url for: ",b),g.api[b]!==d?a=g.api[b]:e.error(r.missingAction)),g.url&&(a=g.url,e.debug("Getting url",a)),a},url:function(b,c){var f;return b&&(f=b.match(g.regExpTemplate),c=c||g.urlData,f&&(e.debug("Looking for URL variables",f),a.each(f,function(g,h){var i=h.substr(2,h.length-3),k=a.isPlainObject(c)&&c[i]!==d?c[i]:j.data(i)!==d?j.data(i):c[i];if(e.verbose("Looking for variable",i,j,j.data(i),c[i]),k===!1)e.debug("Removing variable from URL",f),b=b.replace("/"+h,"");else{if(k===d||!k)return e.error(r.missingParameter+i),b=!1,!1;b=b.replace(h,k)}}))),b}},reset:function(){j.data(q.promise,!1).data(q.xhr,!1),i.removeClass(p.error).removeClass(p.loading)},setting:function(b,c){if(a.isPlainObject(b))a.extend(!0,g,b);else{if(c===d)return g[b];g[b]=c}},internal:function(b,c){if(a.isPlainObject(b))a.extend(!0,e,b);else{if(c===d)return e[b];e[b]=c}},debug:function(){g.debug&&(g.performance?e.performance.log(arguments):(e.debug=Function.prototype.bind.call(console.info,console,g.name+":"),e.debug.apply(console,arguments)))},verbose:function(){g.verbose&&g.debug&&(g.performance?e.performance.log(arguments):(e.verbose=Function.prototype.bind.call(console.info,console,g.name+":"),e.verbose.apply(console,arguments)))},error:function(){e.error=Function.prototype.bind.call(console.error,console,g.name+":"),e.error.apply(console,arguments)},performance:{log:function(a){var b,c,d;g.performance&&(b=(new Date).getTime(),d=l||b,c=b-d,l=b,m.push({Element:k,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":c})),clearTimeout(e.performance.timer),e.performance.timer=setTimeout(e.performance.display,100)},display:function(){var b=g.name+":",c=0;l=!1,clearTimeout(e.performance.timer),a.each(m,function(a,b){c+=b["Execution Time"]}),b+=" "+c+"ms",n&&(b+=" '"+n+"'"),(console.group!==d||console.table!==d)&&m.length>0&&(console.groupCollapsed(b),console.table?console.table(m):a.each(m,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),m=[]}},invoke:function(b,c,e){var g,h,i,j=s;return c=c||v,e=k||e,"string"==typeof b&&j!==d&&(b=b.split(/[\. ]/),g=b.length-1,a.each(b,function(c,e){var f=c!=g?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(j[f])&&c!=g)j=j[f];else{if(j[f]!==d)return h=j[f],!1;if(!a.isPlainObject(j[e])||c==g)return j[e]!==d?(h=j[e],!1):!1;j=j[e]}})),a.isFunction(h)?i=h.apply(e,c):h!==d&&(i=h),a.isArray(f)?f.push(i):f!==d?f=[f,i]:i!==d&&(f=i),h}},u?(s===d&&e.initialize(),e.invoke(t)):(s!==d&&e.destroy(),e.initialize()),f!==d?f:this},a.fn.apiButton=function(b){return a(this).each(function(){var c,d=a(this),e=a(this).selector||"",f=a.isFunction(b)?a.extend(!0,{},a.api.settings,a.fn.apiButton.settings,{stateContext:this,success:b}):a.extend(!0,{},a.api.settings,a.fn.apiButton.settings,{stateContext:this},b);c={initialize:function(){f.context&&""!==e?a(f.context).on(e,"click."+f.namespace,c.click):d.on("click."+f.namespace,c.click)},click:function(){f.filter&&0!==a(this).filter(f.filter).size()||a.proxy(a.api,this)(f)}},c.initialize()}),this},a.api.settings={name:"API",namespace:"api",debug:!0,verbose:!0,performance:!0,api:{},beforeSend:function(a){return a},beforeXHR:function(){},success:function(){},complete:function(){},failure:function(){},progress:!1,error:{missingAction:"API action used but no url was defined",missingURL:"URL not specified for the API action",missingParameter:"Missing an essential URL parameter: ",timeout:"Your request timed out",error:"There was an error with your request",parseError:"There was an error parsing your request",JSONParse:"JSON could not be parsed during error handling",statusMessage:"Server gave an error: ",beforeSend:"The before send function has aborted the request",exitConditions:"API Request Aborted. Exit conditions met"},className:{loading:"loading",error:"error"},metadata:{action:"action",promise:"promise",xhr:"xhr"},regExpTemplate:/\{\$([A-z]+)\}/g,action:!1,url:!1,urlData:!1,serializeForm:!1,stateContext:!1,method:"get",data:{},dataType:"json",cache:!0,loadingLength:200,errorLength:2e3},a.fn.apiButton.settings={filter:".disabled, .loading",context:!1,stateContext:!1}}(jQuery,window,document),function(a,b,c,d){a.fn.colorize=function(b){var c=a.extend(!0,{},a.fn.colorize.settings,b),e=arguments||!1;return a(this).each(function(b){var f,g,h,i,j,k,l,m,n=a(this),o=a("")[0],p=a("")[0],q=a("")[0],r=new Image,s=c.colors,t=(c.paths,c.namespace),u=c.error,v=n.data("module-"+t);return m={checkPreconditions:function(){return m.debug("Checking pre-conditions"),!a.isPlainObject(s)||a.isEmptyObject(s)?(m.error(u.undefinedColors),!1):!0},async:function(a){c.async?setTimeout(a,0):a()},getMetadata:function(){m.debug("Grabbing metadata"),i=n.data("image")||c.image||d,j=n.data("name")||c.name||b,k=c.width||n.width(),l=c.height||n.height(),(0===k||0===l)&&m.error(u.undefinedSize)},initialize:function(){m.debug("Initializing with colors",s),m.checkPreconditions()&&m.async(function(){m.getMetadata(),m.canvas.create(),m.draw.image(function(){m.draw.colors(),m.canvas.merge()}),n.data("module-"+t,m)})},redraw:function(){m.debug("Redrawing image"),m.async(function(){m.canvas.clear(),m.draw.colors(),m.canvas.merge()})},change:{color:function(a,b){return m.debug("Changing color",a),s[a]===d?(m.error(u.missingColor),!1):(s[a]=b,void m.redraw())}},canvas:{create:function(){m.debug("Creating canvases"),o.width=k,o.height=l,p.width=k,p.height=l,q.width=k,q.height=l,f=o.getContext("2d"),g=p.getContext("2d"),h=q.getContext("2d"),n.append(o),f=n.children("canvas")[0].getContext("2d")},clear:function(){m.debug("Clearing canvas"),h.fillStyle="#FFFFFF",h.fillRect(0,0,k,l)},merge:function(){return a.isFunction(f.blendOnto)?(f.putImageData(g.getImageData(0,0,k,l),0,0),void h.blendOnto(f,"multiply")):void m.error(u.missingPlugin)}},draw:{image:function(a){m.debug("Drawing image"),a=a||function(){},i?(r.src=i,r.onload=function(){g.drawImage(r,0,0),a()}):(m.error(u.noImage),a())},colors:function(){m.debug("Drawing color overlays",s),a.each(s,function(a,b){c.onDraw(h,j,a,b)})}},debug:function(a,b){c.debug&&(b!==d?console.info(c.name+": "+a,b):console.info(c.name+": "+a))},error:function(a){console.warn(c.name+": "+a)},invoke:function(b,e,f){var g;return f=f||Array.prototype.slice.call(arguments,2),"string"==typeof b&&v!==d&&(b=b.split("."),a.each(b,function(b,d){return a.isPlainObject(v[d])?(v=v[d],!0):a.isFunction(v[d])?(g=v[d],!0):(m.error(c.error.method),!1)})),a.isFunction(g)?g.apply(e,f):!1}},v!==d&&e?("invoke"==e[0]&&(e=Array.prototype.slice.call(e,1)),m.invoke(e[0],this,Array.prototype.slice.call(e,1))):void m.initialize()}),this},a.fn.colorize.settings={name:"Image Colorizer",debug:!0,namespace:"colorize",onDraw:function(){},async:!0,colors:{},metadata:{image:"image",name:"name"},error:{noImage:"No tracing image specified",undefinedColors:"No default colors specified.",missingColor:"Attempted to change color that does not exist",missingPlugin:"Blend onto plug-in must be included",undefinedHeight:"The width or height of image canvas could not be automatically determined. Please specify a height."}}}(jQuery,window,document),function(a,b,c,d){a.fn.form=function(b,e){var f,g=a(this),h=a.extend(!0,{},a.fn.form.settings,e),i=a.extend({},a.fn.form.settings.defaults,b),j=h.namespace,k=h.metadata,l=h.selector,m=h.className,n=(h.error,"."+j),o="module-"+j,p=g.selector||"",q=(new Date).getTime(),r=[],s=arguments[0],t="string"==typeof s,u=[].slice.call(arguments,1);return g.each(function(){var b,e=a(this),j=a(this).find(l.field),v=a(this).find(l.group),w=a(this).find(l.message),x=(a(this).find(l.prompt),a(this).find(l.submit)),y=[],z=this,A=e.data(o);b={initialize:function(){b.verbose("Initializing form validation",e,i,h),b.bindEvents(),b.instantiate()},instantiate:function(){b.verbose("Storing instance of module",b),A=b,e.data(o,b)},destroy:function(){b.verbose("Destroying previous module",A),b.removeEvents(),e.removeData(o)},refresh:function(){b.verbose("Refreshing selector cache"),j=e.find(l.field)},submit:function(){b.verbose("Submitting form",e),e.submit()},bindEvents:function(){h.keyboardShortcuts&&j.on("keydown"+n,b.event.field.keydown),e.on("submit"+n,b.validate.form),j.on("blur"+n,b.event.field.blur),x.on("click"+n,b.submit),j.each(function(){var c=a(this).prop("type"),d=b.get.changeEvent(c);a(this).on(d+n,b.event.field.change)})},removeEvents:function(){e.off(n),j.off(n),x.off(n),j.off(n)},event:{field:{keydown:function(c){var d=a(this),e=c.which,f={enter:13,escape:27};return e==f.escape&&(b.verbose("Escape key pressed blurring field"),d.blur()),!c.ctrlKey&&e==f.enter&&d.is(l.input)?(b.debug("Enter key pressed, submitting form"),x.addClass(m.down),d.one("keyup"+n,b.event.field.keyup),c.preventDefault(),!1):void 0},keyup:function(){b.verbose("Doing keyboard shortcut form submit"),x.removeClass(m.down),b.submit()},blur:function(){var c=a(this),d=c.closest(v);d.hasClass(m.error)?(b.debug("Revalidating field",c,b.get.validation(c)),b.validate.field(b.get.validation(c))):("blur"==h.on||"change"==h.on)&&b.validate.field(b.get.validation(c))},change:function(){var c=a(this),d=c.closest(v);("change"==h.on||d.hasClass(m.error)&&h.revalidate)&&(clearTimeout(b.timer),b.timer=setTimeout(function(){b.debug("Revalidating field",c,b.get.validation(c)),b.validate.field(b.get.validation(c))},h.delay))}}},get:{changeEvent:function(a){return"checkbox"==a||"radio"==a||"hidden"==a?"change":c.createElement("input").oninput!==d?"input":c.createElement("input").onpropertychange!==d?"propertychange":"keyup"},field:function(c){return b.verbose("Finding field with identifier",c),j.filter("#"+c).size()>0?j.filter("#"+c):j.filter('[name="'+c+'"]').size()>0?j.filter('[name="'+c+'"]'):j.filter("[data-"+k.validate+'="'+c+'"]').size()>0?j.filter("[data-"+k.validate+'="'+c+'"]'):a("")},validation:function(c){var d;return a.each(i,function(a,e){b.get.field(e.identifier).get(0)==c.get(0)&&(d=e)}),d||!1}},has:{field:function(a){return b.verbose("Checking for existence of a field with identifier",a),j.filter("#"+a).size()>0?!0:j.filter('[name="'+a+'"]').size()>0?!0:j.filter("[data-"+k.validate+'="'+a+'"]').size()>0?!0:!1}},add:{prompt:function(c,f){var g=b.get.field(c),i=g.closest(v),j=i.find(l.prompt),k=0!==j.size();f="string"==typeof f?[f]:f,b.verbose("Adding field error state",c),i.addClass(m.error),h.inline&&(k||(j=h.templates.prompt(f),j.appendTo(i)),j.html(f[0]),k?b.verbose("Inline errors are disabled, no inline error added",c):h.transition&&a.fn.transition!==d&&e.transition("is supported")?(b.verbose("Displaying error with css transition",h.transition),j.transition(h.transition+" in",h.duration)):(b.verbose("Displaying error with fallback javascript animation"),j.fadeIn(h.duration)))},errors:function(a){b.debug("Adding form error messages",a),w.html(h.templates.error(a))}},remove:{prompt:function(c){var f=b.get.field(c.identifier),g=f.closest(v),i=g.find(l.prompt);g.removeClass(m.error),h.inline&&i.is(":visible")&&(b.verbose("Removing prompt for field",c),h.transition&&a.fn.transition!==d&&e.transition("is supported")?i.transition(h.transition+" out",h.duration,function(){i.remove()}):i.fadeOut(h.duration,function(){i.remove()}))}},validate:{form:function(c){var d=!0;return y=[],a.each(i,function(a,c){b.validate.field(c)||(d=!1)}),d?(b.debug("Form has no validation errors, submitting"),e.removeClass(m.error).addClass(m.success),a.proxy(h.onSuccess,this)(c)):(b.debug("Form has errors"),e.addClass(m.error),h.inline||b.add.errors(y),a.proxy(h.onFailure,this)(y))},field:function(c){var e=b.get.field(c.identifier),f=!0,g=[];return c.rules!==d&&a.each(c.rules,function(a,d){b.has.field(c.identifier)&&!b.validate.rule(c,d)&&(b.debug("Field is invalid",c.identifier,d.type),g.push(d.prompt),f=!1)}),f?(b.remove.prompt(c,g),a.proxy(h.onValid,e)(),!0):(y=y.concat(g),b.add.prompt(c.identifier,g),a.proxy(h.onInvalid,e)(g),!1)},rule:function(c,f){var g,i,j=b.get.field(c.identifier),k=f.type,l=a.trim(j.val()+""),m=/\[(.*)\]/i,n=m.exec(k),o=!0;return n!==d&&null!==n?(g=""+n[1],i=k.replace(n[0],""),o=a.proxy(h.rules[i],e)(l,g)):o=a.proxy(h.rules[k],j)(l),o}},setting:function(b,c){if(a.isPlainObject(b))a.extend(!0,h,b);else{if(c===d)return h[b];h[b]=c}},internal:function(c,e){if(a.isPlainObject(c))a.extend(!0,b,c);else{if(e===d)return b[c];b[c]=e}},debug:function(){h.debug&&(h.performance?b.performance.log(arguments):(b.debug=Function.prototype.bind.call(console.info,console,h.name+":"),b.debug.apply(console,arguments)))},verbose:function(){h.verbose&&h.debug&&(h.performance?b.performance.log(arguments):(b.verbose=Function.prototype.bind.call(console.info,console,h.name+":"),b.verbose.apply(console,arguments)))},error:function(){b.error=Function.prototype.bind.call(console.error,console,h.name+":"),b.error.apply(console,arguments)},performance:{log:function(a){var c,d,e;h.performance&&(c=(new Date).getTime(),e=q||c,d=c-e,q=c,r.push({Element:z,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":d})),clearTimeout(b.performance.timer),b.performance.timer=setTimeout(b.performance.display,100)},display:function(){var c=h.name+":",e=0;q=!1,clearTimeout(b.performance.timer),a.each(r,function(a,b){e+=b["Execution Time"]}),c+=" "+e+"ms",p&&(c+=" '"+p+"'"),g.size()>1&&(c+=" ("+g.size()+")"),(console.group!==d||console.table!==d)&&r.length>0&&(console.groupCollapsed(c),console.table?console.table(r):a.each(r,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),r=[]}},invoke:function(b,c,e){var g,h,i,j=A;return c=c||u,e=z||e,"string"==typeof b&&j!==d&&(b=b.split(/[\. ]/),g=b.length-1,a.each(b,function(c,e){var f=c!=g?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(j[f])&&c!=g)j=j[f];else{if(j[f]!==d)return h=j[f],!1;if(!a.isPlainObject(j[e])||c==g)return j[e]!==d?(h=j[e],!1):!1;j=j[e]}})),a.isFunction(h)?i=h.apply(e,c):h!==d&&(i=h),a.isArray(f)?f.push(i):f!==d?f=[f,i]:i!==d&&(f=i),h}},t?(A===d&&b.initialize(),b.invoke(s)):(A!==d&&b.destroy(),b.initialize())}),f!==d?f:this},a.fn.form.settings={name:"Form",namespace:"form",debug:!0,verbose:!0,performance:!0,keyboardShortcuts:!0,on:"submit",inline:!1,delay:200,revalidate:!0,transition:"scale",duration:150,onValid:function(){},onInvalid:function(){},onSuccess:function(){return!0},onFailure:function(){return!1},metadata:{validate:"validate"},selector:{message:".error.message",field:"input, textarea, select",group:".field",input:"input",prompt:".prompt",submit:".submit"},className:{error:"error",success:"success",down:"down",label:"ui label prompt"},error:{method:"The method you called is not defined."},templates:{error:function(b){var c='
    ';return a.each(b,function(a,b){c+="
  • "+b+"
  • "}),c+="
",a(c)},prompt:function(b){return a("
").addClass("ui red pointing prompt label").html(b[0])}},rules:{checked:function(){return a(this).filter(":checked").size()>0},empty:function(a){return!(a===d||""===a)},email:function(a){var b=new RegExp("[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?","i");return b.test(a)},length:function(a,b){return a!==d?a.length>=b:!1},not:function(a,b){return a!=b},contains:function(a,b){return b=b.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),-1!==a.search(b)},is:function(a,b){return a==b},maxLength:function(a,b){return a!==d?a.length<=b:!1},match:function(b,c){var e,f=a(this);return f.find("#"+c).size()>0?e=f.find("#"+c).val():f.find("[name="+c+"]").size()>0?e=f.find("[name="+c+"]").val():f.find('[data-validate="'+c+'"]').size()>0&&(e=f.find('[data-validate="'+c+'"]').val()),e!==d?b.toString()==e.toString():!1},url:function(a){var b=/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/;return b.test(a)}}}}(jQuery,window,document),function(a,b,c,d){a.fn.state=function(b){var c,e=a(this),f=a.extend(!0,{},a.fn.state.settings,b),g=e.selector||"",h=(new Date).getTime(),i=[],j=arguments[0],k="string"==typeof j,l=[].slice.call(arguments,1),m=(f.error,f.metadata),n=f.className,o=f.namespace,p=f.states,q=f.text,r="."+o,s=o+"-module";return e.each(function(){var o,t=a(this),u=this,v=t.data(s);o={initialize:function(){o.verbose("Initializing module"),f.automatic&&o.add.defaults(),f.context&&""!==g?(o.allows("hover")&&a(u,f.context).on(g,"mouseenter"+r,o.enable.hover).on(g,"mouseleave"+r,o.disable.hover),o.allows("down")&&a(u,f.context).on(g,"mousedown"+r,o.enable.down).on(g,"mouseup"+r,o.disable.down),o.allows("focus")&&a(u,f.context).on(g,"focus"+r,o.enable.focus).on(g,"blur"+r,o.disable.focus),a(f.context).on(g,"mouseenter"+r,o.change.text).on(g,"mouseleave"+r,o.reset.text).on(g,"click"+r,o.toggle.state)):(o.allows("hover")&&t.on("mouseenter"+r,o.enable.hover).on("mouseleave"+r,o.disable.hover),o.allows("down")&&t.on("mousedown"+r,o.enable.down).on("mouseup"+r,o.disable.down),o.allows("focus")&&t.on("focus"+r,o.enable.focus).on("blur"+r,o.disable.focus),t.on("mouseenter"+r,o.change.text).on("mouseleave"+r,o.reset.text).on("click"+r,o.toggle.state)),o.instantiate()},instantiate:function(){o.verbose("Storing instance of module",o),v=o,t.data(s,o)},destroy:function(){o.verbose("Destroying previous module",v),t.off(r).removeData(s)},refresh:function(){o.verbose("Refreshing selector cache"),t=a(u)},add:{defaults:function(){var c=b&&a.isPlainObject(b.states)?b.states:{};a.each(f.defaults,function(b,e){o.is[b]!==d&&o.is[b]()&&(o.verbose("Adding default states",b,u),a.extend(f.states,e,c))})}},is:{active:function(){return t.hasClass(n.active)},loading:function(){return t.hasClass(n.loading)},inactive:function(){return!t.hasClass(n.active)},enabled:function(){return!t.is(f.filter.active)},disabled:function(){return t.is(f.filter.active)},textEnabled:function(){return!t.is(f.filter.text)},button:function(){return t.is(".button:not(a, .submit)")},input:function(){return t.is("input")}},allow:function(a){o.debug("Now allowing state",a),p[a]=!0},disallow:function(a){o.debug("No longer allowing",a),p[a]=!1},allows:function(a){return p[a]||!1},enable:{state:function(a){o.allows(a)&&t.addClass(n[a])},focus:function(){t.addClass(n.focus)},hover:function(){t.addClass(n.hover)},down:function(){t.addClass(n.down)}},disable:{state:function(a){o.allows(a)&&t.removeClass(n[a])},focus:function(){t.removeClass(n.focus)},hover:function(){t.removeClass(n.hover)},down:function(){t.removeClass(n.down)}},toggle:{state:function(){var a=t.data(m.promise);o.allows("active")&&o.is.enabled()&&(o.refresh(),a!==d?o.listenTo(a):o.change.state())}},listenTo:function(b){o.debug("API request detected, waiting for state signal",b),b?(q.loading&&o.update.text(q.loading),a.when(b).then(function(){"resolved"==b.state()?(o.debug("API request succeeded"),f.activateTest=function(){return!0},f.deactivateTest=function(){return!0}):(o.debug("API request failed"),f.activateTest=function(){return!1},f.deactivateTest=function(){return!1}),o.change.state()})):(f.activateTest=function(){return!1},f.deactivateTest=function(){return!1})},change:{state:function(){o.debug("Determining state change direction"),o.is.inactive()?o.activate():o.deactivate(),f.sync&&o.sync(),a.proxy(f.onChange,u)()},text:function(){o.is.textEnabled()&&(o.is.active()?q.hover?(o.verbose("Changing text to hover text",q.hover),o.update.text(q.hover)):q.disable&&(o.verbose("Changing text to disable text",q.disable),o.update.text(q.disable)):q.hover?(o.verbose("Changing text to hover text",q.disable),o.update.text(q.hover)):q.enable&&(o.verbose("Changing text to enable text",q.enable),o.update.text(q.enable)))}},activate:function(){a.proxy(f.activateTest,u)()&&(o.debug("Setting state to active"),t.addClass(n.active),o.update.text(q.active)),a.proxy(f.onActivate,u)()},deactivate:function(){a.proxy(f.deactivateTest,u)()&&(o.debug("Setting state to inactive"),t.removeClass(n.active),o.update.text(q.inactive)),a.proxy(f.onDeactivate,u)()},sync:function(){o.verbose("Syncing other buttons to current state"),e.not(t).state(o.is.active()?"activate":"deactivate")},get:{text:function(){return f.selector.text?t.find(f.selector.text).text():t.html()},textFor:function(a){return q[a]||!1}},flash:{text:function(a,b){var c=o.get.text();o.debug("Flashing text message",a,b),a=a||f.text.flash,b=b||f.flashDuration,o.update.text(a),setTimeout(function(){o.update.text(c)},b)}},reset:{text:function(){var a=q.active||t.data(m.storedText),b=q.inactive||t.data(m.storedText);o.is.textEnabled()&&(o.is.active()&&a?(o.verbose("Resetting active text",a),o.update.text(a)):b&&(o.verbose("Resetting inactive text",a),o.update.text(b)))}},update:{text:function(a){var b=o.get.text();a&&a!==b?(o.debug("Updating text",a),f.selector.text?t.data(m.storedText,a).find(f.selector.text).text(a):t.data(m.storedText,a).html(a)):o.debug("Text is already sane, ignoring update",a)}},setting:function(b,c){return o.debug("Changing setting",b,c),c===d?f[b]:void(a.isPlainObject(b)?a.extend(!0,f,b):f[b]=c)},internal:function(b,c){return o.debug("Changing internal",b,c),c===d?o[b]:void(a.isPlainObject(b)?a.extend(!0,o,b):o[b]=c)},debug:function(){f.debug&&(f.performance?o.performance.log(arguments):(o.debug=Function.prototype.bind.call(console.info,console,f.name+":"),o.debug.apply(console,arguments)))},verbose:function(){f.verbose&&f.debug&&(f.performance?o.performance.log(arguments):(o.verbose=Function.prototype.bind.call(console.info,console,f.name+":"),o.verbose.apply(console,arguments)))},error:function(){o.error=Function.prototype.bind.call(console.error,console,f.name+":"),o.error.apply(console,arguments)},performance:{log:function(a){var b,c,d;f.performance&&(b=(new Date).getTime(),d=h||b,c=b-d,h=b,i.push({Element:u,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":c})),clearTimeout(o.performance.timer),o.performance.timer=setTimeout(o.performance.display,100)},display:function(){var b=f.name+":",c=0;h=!1,clearTimeout(o.performance.timer),a.each(i,function(a,b){c+=b["Execution Time"]}),b+=" "+c+"ms",g&&(b+=" '"+g+"'"),e.size()>1&&(b+=" ("+e.size()+")"),(console.group!==d||console.table!==d)&&i.length>0&&(console.groupCollapsed(b),console.table?console.table(i):a.each(i,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),i=[]}},invoke:function(b,e,f){var g,h,i,j=v;return e=e||l,f=u||f,"string"==typeof b&&j!==d&&(b=b.split(/[\. ]/),g=b.length-1,a.each(b,function(c,e){var f=c!=g?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(j[f])&&c!=g)j=j[f];else{if(j[f]!==d)return h=j[f],!1;if(!a.isPlainObject(j[e])||c==g)return j[e]!==d?(h=j[e],!1):!1;j=j[e]}})),a.isFunction(h)?i=h.apply(f,e):h!==d&&(i=h),a.isArray(c)?c.push(i):c!==d?c=[c,i]:i!==d&&(c=i),h}},k?(v===d&&o.initialize(),o.invoke(j)):(v!==d&&o.destroy(),o.initialize())}),c!==d?c:this},a.fn.state.settings={name:"State",debug:!0,verbose:!0,namespace:"state",performance:!0,onActivate:function(){},onDeactivate:function(){},onChange:function(){},activateTest:function(){return!0},deactivateTest:function(){return!0},automatic:!0,sync:!1,flashDuration:3e3,filter:{text:".loading, .disabled",active:".disabled"},context:!1,error:{method:"The method you called is not defined."},metadata:{promise:"promise",storedText:"stored-text"},className:{focus:"focus",hover:"hover",down:"down",active:"active",loading:"loading"},selector:{text:!1},defaults:{input:{hover:!0,focus:!0,down:!0,loading:!1,active:!1},button:{hover:!0,focus:!1,down:!0,active:!0,loading:!0}},states:{hover:!0,focus:!0,down:!0,loading:!1,active:!1},text:{flash:!1,hover:!1,active:!1,inactive:!1,enable:!1,disable:!1}}}(jQuery,window,document),function(a,b,c,d){a.fn.chatroom=function(b){var c,e=a(this),f=e.selector||"",g=(new Date).getTime(),h=[],i=arguments[0],j="string"==typeof i,k=[].slice.call(arguments,1);return a(this).each(function(){var c,e,l,m,n,o,p,q=a.extend(!0,{},a.fn.chatroom.settings,b),r=q.className,s=q.namespace,t=q.selector,u=q.error,v=a(this),w=v.find(t.expandButton),x=v.find(t.userListButton),y=v.find(t.userList),z=(v.find(t.room),v.find(t.userCount)),A=v.find(t.log),B=(v.find(t.message),v.find(t.messageInput)),C=v.find(t.messageButton),D=v.data("module"),E=this,F="",G={};p={width:{log:A.width(),userList:y.outerWidth()},initialize:function(){return Pusher===d&&p.error(u.pusher),q.key===d||q.channelName===d?(p.error(u.key),!1):q.endpoint.message||q.endpoint.authentication?(o=new Pusher(q.key),Pusher.channel_auth_endpoint=q.endpoint.authentication,c=o.subscribe(q.channelName),c.bind("pusher:subscription_succeeded",p.user.list.create),c.bind("pusher:subscription_error",p.error),c.bind("pusher:member_added",p.user.joined),c.bind("pusher:member_removed",p.user.left),c.bind("update_messages",p.message.receive),a.each(q.customEvents,function(a,b){c.bind(a,b) +}),x.on("click."+s,p.event.toggleUserList),w.on("click."+s,p.event.toggleExpand),B.on("keydown."+s,p.event.input.keydown).on("keyup."+s,p.event.input.keyup),C.on("mouseenter."+s,p.event.hover).on("mouseleave."+s,p.event.hover).on("click."+s,p.event.submit),A.animate({scrollTop:A.prop("scrollHeight")},400),void v.data("module",p).addClass(r.loading)):(p.error(u.endpoint),!1)},refresh:function(){x.removeClass(r.active),p.width={log:A.width(),userList:y.outerWidth()},x.hasClass(r.active)&&p.user.list.hide(),v.data("module",p)},user:{updateCount:function(){q.userCount&&(G=v.data("users"),m=0,a.each(G,function(){m++}),z.html(q.templates.userCount(m)))},joined:function(b){G=v.data("users"),"anonymous"!=b.id&&G[b.id]===d&&(G[b.id]=b.info,q.randomColor&&b.info.color===d&&(b.info.color=q.templates.color(b.id)),F=q.templates.userList(b.info),b.info.isAdmin?a(F).prependTo(y):a(F).appendTo(y),q.partingMessages&&(A.append(q.templates.joined(b.info)),p.message.scroll.test()),p.user.updateCount())},left:function(a){G=v.data("users"),a!==d&&"anonymous"!==a.id&&(delete G[a.id],v.data("users",G),y.find("[data-id="+a.id+"]").remove(),q.partingMessages&&(A.append(q.templates.left(a.info)),p.message.scroll.test()),p.user.updateCount())},list:{create:function(b){G={},b.each(function(a){"anonymous"!==a.id&&"undefined"!==a.id&&(q.randomColor&&a.info.color===d&&(a.info.color=q.templates.color(a.id)),F=a.info.isAdmin?q.templates.userList(a.info)+F:F+q.templates.userList(a.info),G[a.id]=a.info)}),v.data("users",G).data("user",G[b.me.id]).removeClass(r.loading),y.html(F),p.user.updateCount(),a.proxy(q.onJoin,y.children())()},show:function(){A.animate({width:p.width.log-p.width.userList},{duration:q.speed,easing:q.easing,complete:p.message.scroll.move})},hide:function(){A.stop().animate({width:p.width.log},{duration:q.speed,easing:q.easing,complete:p.message.scroll.move})}}},message:{scroll:{test:function(){n=A.prop("scrollHeight")-A.height(),Math.abs(A.scrollTop()-n)0&&(console.groupCollapsed(b),console.table?console.table(h):a.each(h,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),h=[]}},invoke:function(b,c,e){var f,g;return c=c||k,e=E||e,"string"==typeof b&&D!==d&&(b=b.split(/[\. ]/),f=b.length-1,a.each(b,function(c,e){a.isPlainObject(D[e])&&c!=f?D=D[e]:D[e]!==d?g=D[e]:p.error(u.method,b)})),a.isFunction(g)?g.apply(e,c):g||!1}},j?(D===d&&p.initialize(),p.invoke(i)):(D!==d&&p.destroy(),p.initialize())}),c!==d?c:this},a.fn.chatroom.settings={name:"Chat",debug:!1,namespace:"chat",channel:"present-chat",onJoin:function(){},onMessage:function(){},onExpand:function(){},onContract:function(){},customEvents:{},partingMessages:!1,userCount:!0,randomColor:!0,speed:300,easing:"easeOutQuint",scrollArea:9999,endpoint:{message:!1,authentication:!1},error:{method:"The method you called is not defined",endpoint:"Please define a message and authentication endpoint.",key:"You must specify a pusher key and channel.",pusher:"You must include the Pusher library."},className:{expand:"expand",active:"active",hover:"hover",down:"down",loading:"loading"},selector:{userCount:".actions .message",userListButton:".actions .list.button",expandButton:".actions .expand.button",room:".room",userList:".room .list",log:".room .log",message:".room .log .message",author:".room log .message .author",messageInput:".talk input",messageButton:".talk .send.button"},templates:{userCount:function(a){return a+" users in chat"},color:function(){var a=["#000000","#333333","#666666","#999999","#CC9999","#CC6666","#CC3333","#993333","#663333","#CC6633","#CC9966","#CC9933","#999966","#CCCC66","#99CC66","#669933","#669966","#33A3CC","#336633","#33CCCC","#339999","#336666","#336699","#6666CC","#9966CC","#333399","#663366","#996699","#993366","#CC6699"];return a[Math.floor(Math.random()*a.length)]},message:function(a){var b="";return a.user.isAdmin?(a.user.color="#55356A",b+='
',b+=''):b+='
',b+="

",b+=a.user.color!==d?''+a.user.name+": ":''+a.user.name+": ",b+=""+a.text+"

"},joined:function(a){return typeof a.name!==d?'
'+a.name+" has joined the chat.
":!1},left:function(a){return typeof a.name!==d?'
'+a.name+" has left the chat.
":!1},userList:function(a){var b="";return a.isAdmin&&(a.color="#55356A"),b+='
',b+=a.color!==d?'

'+a.name+"

":'

'+a.name+"

",b+="
"}}}}(jQuery,window,document),function(a,b,c,d){a.fn.checkbox=function(b){var c,e=a(this),f=e.selector||"",g=(new Date).getTime(),h=[],i=arguments[0],j="string"==typeof i,k=[].slice.call(arguments,1);return e.each(function(){var e,l=a.extend(!0,{},a.fn.checkbox.settings,b),m=l.className,n=l.namespace,o=(l.error,"."+n),p="module-"+n,q=a(this),r=a(this).next(l.selector.label).first(),s=a(this).find(l.selector.input),t=q.selector||"",u=q.data(p),v=this;e={initialize:function(){e.verbose("Initializing checkbox",l),l.context&&""!==t?(e.verbose("Adding delegated events"),a(v,l.context).on(t,"click"+o,e.toggle).on(t+" + "+l.selector.label,"click"+o,e.toggle)):(q.on("click"+o,e.toggle).data(p,e),r.on("click"+o,e.toggle)),e.instantiate()},instantiate:function(){e.verbose("Storing instance of module",e),u=e,q.data(p,e)},destroy:function(){e.verbose("Destroying previous module"),q.off(o).removeData(p)},is:{radio:function(){return q.hasClass(m.radio)},enabled:function(){return s.prop("checked")!==d&&s.prop("checked")},disabled:function(){return!e.is.enabled()}},can:{disable:function(){return"boolean"==typeof l.required?l.required:!e.is.radio()}},enable:function(){e.debug("Enabling checkbox",s),s.prop("checked",!0).trigger("change"),a.proxy(l.onChange,s.get())(),a.proxy(l.onEnable,s.get())()},disable:function(){e.debug("Disabling checkbox"),s.prop("checked",!1).trigger("change"),a.proxy(l.onChange,s.get())(),a.proxy(l.onDisable,s.get())()},toggle:function(){e.verbose("Determining new checkbox state"),s.prop("disabled")||(e.is.disabled()?e.enable():e.is.enabled()&&e.can.disable()&&e.disable())},setting:function(b,c){if(a.isPlainObject(b))a.extend(!0,l,b);else{if(c===d)return l[b];l[b]=c}},internal:function(b,c){if(a.isPlainObject(b))a.extend(!0,e,b);else{if(c===d)return e[b];e[b]=c}},debug:function(){l.debug&&(l.performance?e.performance.log(arguments):(e.debug=Function.prototype.bind.call(console.info,console,l.name+":"),e.debug.apply(console,arguments)))},verbose:function(){l.verbose&&l.debug&&(l.performance?e.performance.log(arguments):(e.verbose=Function.prototype.bind.call(console.info,console,l.name+":"),e.verbose.apply(console,arguments)))},error:function(){e.error=Function.prototype.bind.call(console.error,console,l.name+":"),e.error.apply(console,arguments)},performance:{log:function(a){var b,c,d;l.performance&&(b=(new Date).getTime(),d=g||b,c=b-d,g=b,h.push({Element:v,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":c})),clearTimeout(e.performance.timer),e.performance.timer=setTimeout(e.performance.display,100)},display:function(){var b=l.name+":",c=0;g=!1,clearTimeout(e.performance.timer),a.each(h,function(a,b){c+=b["Execution Time"]}),b+=" "+c+"ms",f&&(b+=" '"+f+"'"),(console.group!==d||console.table!==d)&&h.length>0&&(console.groupCollapsed(b),console.table?console.table(h):a.each(h,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),h=[]}},invoke:function(b,e,f){var g,h,i,j=u;return e=e||k,f=v||f,"string"==typeof b&&j!==d&&(b=b.split(/[\. ]/),g=b.length-1,a.each(b,function(c,e){var f=c!=g?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(j[f])&&c!=g)j=j[f];else{if(j[f]!==d)return h=j[f],!1;if(!a.isPlainObject(j[e])||c==g)return j[e]!==d?(h=j[e],!1):!1;j=j[e]}})),a.isFunction(h)?i=h.apply(f,e):h!==d&&(i=h),a.isArray(c)?c.push(i):c!==d?c=[c,i]:i!==d&&(c=i),h}},j?(u===d&&e.initialize(),e.invoke(i)):(u!==d&&e.destroy(),e.initialize())}),c!==d?c:this},a.fn.checkbox.settings={name:"Checkbox",namespace:"checkbox",debug:!1,verbose:!0,performance:!0,context:!1,required:"auto",onChange:function(){},onEnable:function(){},onDisable:function(){},error:{method:"The method you called is not defined."},selector:{input:"input[type=checkbox], input[type=radio]",label:"label"},className:{radio:"radio"}}}(jQuery,window,document),function(a,b,c,d){a.fn.dimmer=function(b){var e,f=a(this),g=(new Date).getTime(),h=[],i=arguments[0],j="string"==typeof i,k=[].slice.call(arguments,1);return f.each(function(){var l,m,n,o=a.isPlainObject(b)?a.extend(!0,{},a.fn.dimmer.settings,b):a.extend({},a.fn.dimmer.settings),p=o.selector,q=o.namespace,r=o.className,s=(o.error,"."+q),t="module-"+q,u=f.selector||"",v="ontouchstart"in c.documentElement?"touchstart":"click",w=a(this),x=this,y=w.data(t);n={preinitialize:function(){n.is.dimmer()?(m=w.parent(),l=w):(m=w,l=n.has.dimmer()?m.children(p.dimmer).first():n.create())},initialize:function(){n.debug("Initializing dimmer",o),"hover"==o.on?m.on("mouseenter"+s,n.show).on("mouseleave"+s,n.hide):"click"==o.on&&m.on(v+s,n.toggle),n.is.page()&&(n.debug("Setting as a page dimmer",m),n.set.pageDimmer()),o.closable&&(n.verbose("Adding dimmer close event",l),l.on(v+s,n.event.click)),n.set.dimmable(),n.instantiate()},instantiate:function(){n.verbose("Storing instance of module",n),y=n,w.data(t,y)},destroy:function(){n.verbose("Destroying previous module",l),w.removeData(t),m.off(s),l.off(s)},event:{click:function(b){n.verbose("Determining if event occured on dimmer",b),(0===l.find(b.target).size()||a(b.target).is(p.content))&&(n.hide(),b.stopImmediatePropagation())}},addContent:function(b){var c=a(b);n.debug("Add content to dimmer",c),c.parent()[0]!==l[0]&&c.detach().appendTo(l)},create:function(){return a(o.template.dimmer()).appendTo(m)},animate:{show:function(b){b=a.isFunction(b)?b:function(){},n.set.dimmed(),"hover"!=o.on&&o.useCSS&&a.fn.transition!==d&&l.transition("is supported")?l.transition({animation:o.transition+" in",queue:!0,duration:n.get.duration(),complete:function(){n.set.active(),b()}}):(n.verbose("Showing dimmer animation with javascript"),l.stop().css({opacity:0,width:"100%",height:"100%"}).fadeTo(n.get.duration(),1,function(){l.removeAttr("style"),n.set.active(),b()}))},hide:function(b){b=a.isFunction(b)?b:function(){},"hover"!=o.on&&o.useCSS&&a.fn.transition!==d&&l.transition("is supported")?(n.verbose("Hiding dimmer with css"),l.transition({animation:o.transition+" out",duration:n.get.duration(),queue:!0,complete:function(){n.remove.dimmed(),n.remove.active(),b()}})):(n.verbose("Hiding dimmer with javascript"),l.stop().fadeOut(n.get.duration(),function(){l.removeAttr("style"),n.remove.dimmed(),n.remove.active(),b()}))}},get:{dimmer:function(){return l},duration:function(){return"object"==typeof o.duration?n.is.active()?o.duration.hide:o.duration.show:o.duration}},has:{dimmer:function(){return w.children(p.dimmer).size()>0}},is:{active:function(){return l.hasClass(r.active)},animating:function(){return l.is(":animated")||l.hasClass(r.transition)},dimmer:function(){return w.is(p.dimmer)},dimmable:function(){return w.is(p.dimmable)},dimmed:function(){return m.hasClass(r.dimmed)},disabled:function(){return m.hasClass(r.disabled)},enabled:function(){return!n.is.disabled()},page:function(){return m.is("body")},pageDimmer:function(){return l.hasClass(r.pageDimmer)}},can:{show:function(){return!l.hasClass(r.disabled)}},set:{active:function(){n.set.dimmed(),l.removeClass(r.transition).addClass(r.active)},dimmable:function(){m.addClass(r.dimmable)},dimmed:function(){m.addClass(r.dimmed)},pageDimmer:function(){l.addClass(r.pageDimmer)},disabled:function(){l.addClass(r.disabled)}},remove:{active:function(){l.removeClass(r.transition).removeClass(r.active)},dimmed:function(){m.removeClass(r.dimmed)},disabled:function(){l.removeClass(r.disabled)}},show:function(b){b=a.isFunction(b)?b:function(){},n.debug("Showing dimmer",l,o),!n.is.active()&&n.is.enabled()?(n.animate.show(b),a.proxy(o.onShow,x)(),a.proxy(o.onChange,x)()):n.debug("Dimmer is already shown or disabled")},hide:function(b){b=a.isFunction(b)?b:function(){},n.is.active()||n.is.animating()?(n.debug("Hiding dimmer",l),n.animate.hide(b),a.proxy(o.onHide,x)(),a.proxy(o.onChange,x)()):n.debug("Dimmer is not visible")},toggle:function(){n.verbose("Toggling dimmer visibility",l),n.is.dimmed()?n.hide():n.show()},setting:function(b,c){if(a.isPlainObject(b))a.extend(!0,o,b);else{if(c===d)return o[b];o[b]=c}},internal:function(b,c){if(a.isPlainObject(b))a.extend(!0,n,b);else{if(c===d)return n[b];n[b]=c}},debug:function(){o.debug&&(o.performance?n.performance.log(arguments):(n.debug=Function.prototype.bind.call(console.info,console,o.name+":"),n.debug.apply(console,arguments)))},verbose:function(){o.verbose&&o.debug&&(o.performance?n.performance.log(arguments):(n.verbose=Function.prototype.bind.call(console.info,console,o.name+":"),n.verbose.apply(console,arguments)))},error:function(){n.error=Function.prototype.bind.call(console.error,console,o.name+":"),n.error.apply(console,arguments)},performance:{log:function(a){var b,c,d;o.performance&&(b=(new Date).getTime(),d=g||b,c=b-d,g=b,h.push({Element:x,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":c})),clearTimeout(n.performance.timer),n.performance.timer=setTimeout(n.performance.display,100)},display:function(){var b=o.name+":",c=0;g=!1,clearTimeout(n.performance.timer),a.each(h,function(a,b){c+=b["Execution Time"]}),b+=" "+c+"ms",u&&(b+=" '"+u+"'"),f.size()>1&&(b+=" ("+f.size()+")"),(console.group!==d||console.table!==d)&&h.length>0&&(console.groupCollapsed(b),console.table?console.table(h):a.each(h,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),h=[]}},invoke:function(b,c,f){var g,h,i,j=y;return c=c||k,f=x||f,"string"==typeof b&&j!==d&&(b=b.split(/[\. ]/),g=b.length-1,a.each(b,function(c,e){var f=c!=g?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(j[f])&&c!=g)j=j[f];else{if(j[f]!==d)return h=j[f],!1;if(!a.isPlainObject(j[e])||c==g)return j[e]!==d?(h=j[e],!1):!1;j=j[e]}})),a.isFunction(h)?i=h.apply(f,c):h!==d&&(i=h),a.isArray(e)?e.push(i):e!==d?e=[e,i]:i!==d&&(e=i),h}},n.preinitialize(),j?(y===d&&n.initialize(),n.invoke(i)):(y!==d&&n.destroy(),n.initialize())}),e!==d?e:this},a.fn.dimmer.settings={name:"Dimmer",namespace:"dimmer",debug:!1,verbose:!0,performance:!0,transition:"fade",useCSS:!0,on:!1,closable:!0,duration:{show:500,hide:500},onChange:function(){},onShow:function(){},onHide:function(){},error:{method:"The method you called is not defined."},selector:{dimmable:".ui.dimmable",dimmer:".ui.dimmer",content:".ui.dimmer > .content, .ui.dimmer > .content > .center"},template:{dimmer:function(){return a("
").attr("class","ui dimmer")}},className:{active:"active",dimmable:"ui dimmable",dimmed:"dimmed",disabled:"disabled",pageDimmer:"page",hide:"hide",show:"show",transition:"transition"}}}(jQuery,window,document),function(a,b,c,d){a.fn.dropdown=function(b){var e,f=a(this),g=a(c),h=f.selector||"",i="ontouchstart"in c.documentElement,j=(new Date).getTime(),k=[],l=arguments[0],m="string"==typeof l,n=[].slice.call(arguments,1);return f.each(function(){var c,o=a.isPlainObject(b)?a.extend(!0,{},a.fn.dropdown.settings,b):a.extend({},a.fn.dropdown.settings),p=o.className,q=o.metadata,r=o.namespace,s=o.selector,t=o.error,u="."+r,v="module-"+r,w=a(this),x=w.find(s.item),y=w.find(s.text),z=w.find(s.input),A=w.children(s.menu),B=this,C=w.data(v);c={initialize:function(){c.debug("Initializing dropdown",o),c.save.defaults(),c.set.selected(),i&&c.bind.touchEvents(),c.bind.mouseEvents(),c.instantiate()},instantiate:function(){c.verbose("Storing instance of dropdown",c),C=c,w.data(v,c)},destroy:function(){c.verbose("Destroying previous dropdown for",w),x.off(u),w.off(u).removeData(v)},bind:{touchEvents:function(){c.debug("Touch device detected binding touch events"),w.on("touchstart"+u,c.event.test.toggle),x.on("touchstart"+u,c.event.item.mouseenter).on("touchstart"+u,c.event.item.click)},mouseEvents:function(){c.verbose("Mouse detected binding mouse events"),"click"==o.on?w.on("click"+u,c.event.test.toggle):"hover"==o.on?w.on("mouseenter"+u,c.delay.show).on("mouseleave"+u,c.delay.hide):w.on(o.on+u,c.toggle),x.on("mouseenter"+u,c.event.item.mouseenter).on("mouseleave"+u,c.event.item.mouseleave).on("click"+u,c.event.item.click)},intent:function(){c.verbose("Binding hide intent event to document"),i&&g.on("touchstart"+u,c.event.test.touch).on("touchmove"+u,c.event.test.touch),g.on("click"+u,c.event.test.hide)}},unbind:{intent:function(){c.verbose("Removing hide intent event from document"),i&&g.off("touchstart"+u).off("touchmove"+u),g.off("click"+u)}},event:{test:{toggle:function(a){c.determine.intent(a,c.toggle)&&a.preventDefault()},touch:function(a){c.determine.intent(a,function(){"touchstart"==a.type?c.timer=setTimeout(c.hide,o.delay.touch):"touchmove"==a.type&&clearTimeout(c.timer)}),a.stopPropagation()},hide:function(a){c.determine.intent(a,c.hide)}},item:{mouseenter:function(b){var d=a(this).find(s.submenu),e=a(this).siblings(s.item).children(s.menu);(d.length>0||e.length>0)&&(clearTimeout(c.itemTimer),c.itemTimer=setTimeout(function(){e.length>0&&c.animate.hide(!1,e.filter(":visible")),d.length>0&&(c.verbose("Showing sub-menu",d),c.animate.show(!1,d))},2*o.delay.show),b.preventDefault(),b.stopPropagation())},mouseleave:function(){var b=a(this).find(s.menu);b.size()>0&&(clearTimeout(c.itemTimer),c.itemTimer=setTimeout(function(){c.verbose("Hiding sub-menu",b),c.animate.hide(!1,b)},o.delay.hide))},click:function(b){var e=a(this),f=e.data(q.text)!==d?e.data(q.text):e.text(),g=e.data(q.value)!==d?e.data(q.value):"string"==typeof f?f.toLowerCase():f,h=function(){c.determine.selectAction(f,g),a.proxy(o.onChange,B)(g,f)};0===e.find(s.menu).size()&&("touchstart"==b.type?e.one("click",h):h())}},resetStyle:function(){a(this).removeAttr("style")}},determine:{selectAction:function(b,d){c.verbose("Determining action",o.action),a.isFunction(c.action[o.action])?(c.verbose("Triggering preset action",o.action,b,d),c.action[o.action](b,d)):a.isFunction(o.action)?(c.verbose("Triggering user action",o.action,b,d),o.action(b,d)):c.error(t.action,o.action)},intent:function(b,d){return c.debug("Determining whether event occurred in dropdown",b.target),d=d||function(){},0===a(b.target).closest(A).size()?(c.verbose("Triggering event",d),d(),!0):(c.verbose("Event occurred in dropdown, canceling callback"),!1)}},action:{nothing:function(){},hide:function(){c.hide()},activate:function(a,b){b=b!==d?b:a,c.set.selected(b),c.set.value(b),c.hide()},auto:function(a,b){b=b!==d?b:a,c.set.selected(b),c.set.value(b),c.hide()},changeText:function(a,b){b=b!==d?b:a,c.set.selected(b),c.hide()},updateForm:function(a,b){b=b!==d?b:a,c.set.selected(b),c.set.value(b),c.hide()}},get:{text:function(){return y.text()},value:function(){return z.size()>0?z.val():w.data(q.value)},item:function(b,e){var f=!1;return b=b!==d?b:c.get.value()!==d?c.get.value():c.get.text(),e===d&&""===b?(c.debug("Ambiguous dropdown value using strict type check",b),e=!0):e=e||!1,b!==d?x.each(function(){var c=a(this),g=c.data(q.text)!==d?c.data(q.text):c.text(),h=c.data(q.value)!==d?c.data(q.value):"string"==typeof g?g.toLowerCase():g;e?h===b?f=a(this):f||g!==b||(f=a(this)):h==b?f=a(this):f||g!=b||(f=a(this))}):b=c.get.text(),f||!1}},restore:{defaults:function(){c.restore.defaultText(),c.restore.defaultValue()},defaultText:function(){var a=w.data(q.defaultText);c.debug("Restoring default text",a),c.set.text(a)},defaultValue:function(){var a=w.data(q.defaultValue);a!==d&&(c.debug("Restoring default value",a),c.set.selected(a),c.set.value(a))}},save:{defaults:function(){c.save.defaultText(),c.save.defaultValue()},defaultValue:function(){w.data(q.defaultValue,c.get.value())},defaultText:function(){w.data(q.defaultText,y.text())}},set:{text:function(a){c.debug("Changing text",a,y),y.removeClass(p.placeholder),y.text(a)},value:function(a){c.debug("Adding selected value to hidden input",a,z),z.size()>0?z.val(a).trigger("change"):w.data(q.value,a)},active:function(){w.addClass(p.active)},visible:function(){w.addClass(p.visible)},selected:function(a){var b,e=c.get.item(a);e&&(c.debug("Setting selected menu item to",e),b=e.data(q.text)!==d?e.data(q.text):e.text(),x.removeClass(p.active),e.addClass(p.active),c.set.text(b))}},remove:{active:function(){w.removeClass(p.active)},visible:function(){w.removeClass(p.visible)}},is:{selection:function(){return w.hasClass(p.selection)},animated:function(a){return a?a.is(":animated")||a.transition("is animating"):A.is(":animated")||A.transition("is animating")},visible:function(a){return a?a.is(":visible"):A.is(":visible")},hidden:function(a){return a?a.is(":not(:visible)"):A.is(":not(:visible)")}},can:{click:function(){return i||"click"==o.on},show:function(){return!w.hasClass(p.disabled)}},animate:{show:function(b,e){var f=e||A;b=b||function(){},c.is.hidden(f)&&(c.verbose("Doing menu show animation",f),"none"==o.transition?b():a.fn.transition!==d&&w.transition("is supported")?f.transition({animation:o.transition+" in",duration:o.duration,complete:b,queue:!1}):"slide down"==o.transition?f.hide().clearQueue().children().clearQueue().css("opacity",0).delay(50).animate({opacity:1},o.duration,"easeOutQuad",c.event.resetStyle).end().slideDown(100,"easeOutQuad",function(){a.proxy(c.event.resetStyle,this)(),b()}):"fade"==o.transition?f.hide().clearQueue().fadeIn(o.duration,function(){a.proxy(c.event.resetStyle,this)(),b()}):c.error(t.transition,o.transition))},hide:function(b,e){var f=e||A;b=b||function(){},c.is.visible(f)&&(c.verbose("Doing menu hide animation",f),a.fn.transition!==d&&w.transition("is supported")?f.transition({animation:o.transition+" out",duration:o.duration,complete:b,queue:!1}):"none"==o.transition?b():"slide down"==o.transition?f.show().clearQueue().children().clearQueue().css("opacity",1).animate({opacity:0},100,"easeOutQuad",c.event.resetStyle).end().delay(50).slideUp(100,"easeOutQuad",function(){a.proxy(c.event.resetStyle,this)(),b()}):"fade"==o.transition?f.show().clearQueue().fadeOut(150,function(){a.proxy(c.event.resetStyle,this)(),b()}):c.error(t.transition))}},show:function(){c.debug("Checking if dropdown can show"),c.is.hidden()&&(c.hideOthers(),c.set.active(),c.animate.show(function(){c.can.click()&&c.bind.intent(),c.set.visible()}),a.proxy(o.onShow,B)())},hide:function(){!c.is.animated()&&c.is.visible()&&(c.debug("Hiding dropdown"),c.can.click()&&c.unbind.intent(),c.remove.active(),c.animate.hide(c.remove.visible),a.proxy(o.onHide,B)())},delay:{show:function(){c.verbose("Delaying show event to ensure user intent"),clearTimeout(c.timer),c.timer=setTimeout(c.show,o.delay.show)},hide:function(){c.verbose("Delaying hide event to ensure user intent"),clearTimeout(c.timer),c.timer=setTimeout(c.hide,o.delay.hide)}},hideOthers:function(){c.verbose("Finding other dropdowns to hide"),f.not(w).has(s.menu+":visible").dropdown("hide")},toggle:function(){c.verbose("Toggling menu visibility"),c.is.hidden()?c.show():c.hide()},setting:function(b,c){if(a.isPlainObject(b))a.extend(!0,o,b);else{if(c===d)return o[b];o[b]=c}},internal:function(b,e){if(a.isPlainObject(b))a.extend(!0,c,b);else{if(e===d)return c[b];c[b]=e}},debug:function(){o.debug&&(o.performance?c.performance.log(arguments):(c.debug=Function.prototype.bind.call(console.info,console,o.name+":"),c.debug.apply(console,arguments)))},verbose:function(){o.verbose&&o.debug&&(o.performance?c.performance.log(arguments):(c.verbose=Function.prototype.bind.call(console.info,console,o.name+":"),c.verbose.apply(console,arguments)))},error:function(){c.error=Function.prototype.bind.call(console.error,console,o.name+":"),c.error.apply(console,arguments)},performance:{log:function(a){var b,d,e;o.performance&&(b=(new Date).getTime(),e=j||b,d=b-e,j=b,k.push({Element:B,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":d})),clearTimeout(c.performance.timer),c.performance.timer=setTimeout(c.performance.display,100)},display:function(){var b=o.name+":",e=0;j=!1,clearTimeout(c.performance.timer),a.each(k,function(a,b){e+=b["Execution Time"]}),b+=" "+e+"ms",h&&(b+=" '"+h+"'"),(console.group!==d||console.table!==d)&&k.length>0&&(console.groupCollapsed(b),console.table?console.table(k):a.each(k,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),k=[]}},invoke:function(b,f,g){var h,i,j,k=C;return f=f||n,g=B||g,"string"==typeof b&&k!==d&&(b=b.split(/[\. ]/),h=b.length-1,a.each(b,function(e,f){var g=e!=h?f+b[e+1].charAt(0).toUpperCase()+b[e+1].slice(1):b;if(a.isPlainObject(k[g])&&e!=h)k=k[g];else{if(k[g]!==d)return i=k[g],!1;if(!a.isPlainObject(k[f])||e==h)return k[f]!==d?(i=k[f],!1):(c.error(t.method,b),!1);k=k[f]}})),a.isFunction(i)?j=i.apply(g,f):i!==d&&(j=i),a.isArray(e)?e.push(j):e!==d?e=[e,j]:j!==d&&(e=j),i}},m?(C===d&&c.initialize(),c.invoke(l)):(C!==d&&c.destroy(),c.initialize())}),e!==d?e:this},a.fn.dropdown.settings={name:"Dropdown",namespace:"dropdown",debug:!1,verbose:!0,performance:!0,on:"click",action:"activate",delay:{show:200,hide:300,touch:50},transition:"slide down",duration:250,onChange:function(){},onShow:function(){},onHide:function(){},error:{action:"You called a dropdown action that was not defined",method:"The method you called is not defined.",transition:"The requested transition was not found"},metadata:{defaultText:"defaultText",defaultValue:"defaultValue",text:"text",value:"value"},selector:{menu:".menu",submenu:"> .menu",item:".menu > .item",text:"> .text",input:'> input[type="hidden"]'},className:{active:"active",placeholder:"default",disabled:"disabled",visible:"visible",selection:"selection"}},a.extend(a.easing,{easeOutQuad:function(a,b,c,d,e){return-d*(b/=e)*(b-2)+c}})}(jQuery,window,document),function(a,b,c,d){a.fn.modal=function(e){var f,g=a(this),h=a(b),i=a(c),j=a("body"),k=(new Date).getTime(),l=[],m=arguments[0],n="string"==typeof m,o=[].slice.call(arguments,1),p=b.requestAnimationFrame||b.mozRequestAnimationFrame||b.webkitRequestAnimationFrame||b.msRequestAnimationFrame||function(a){setTimeout(a,0)};return g.each(function(){var q,r,s,t,u,v,w=a.isPlainObject(e)?a.extend(!0,{},a.fn.modal.settings,e):a.extend({},a.fn.modal.settings),x=w.selector,y=w.className,z=w.namespace,A=w.error,B="."+z,C="module-"+z,D=g.selector||"",E=a(this),F=a(w.context),G=E.find(x.close),H=this,I=E.data(C);v={initialize:function(){return v.verbose("Initializing dimmer",F),a.fn.dimmer===d?void v.error(A.dimmer):(t=F.dimmer({closable:!1,useCSS:!0,duration:{show:.9*w.duration,hide:1.1*w.duration}}),w.detachable&&t.dimmer("add content",E),u=t.dimmer("get dimmer"),r=E.siblings(x.modal),q=r.add(E),v.verbose("Attaching close events",G),G.on("click"+B,v.event.close),h.on("resize"+B,v.event.resize),void v.instantiate())},instantiate:function(){v.verbose("Storing instance of modal"),I=v,E.data(C,I)},destroy:function(){v.verbose("Destroying previous modal"),E.removeData(C).off(B),G.off(B),F.dimmer("destroy")},refresh:function(){v.remove.scrolling(),v.cacheSizes(),v.set.screenHeight(),v.set.type(),v.set.position()},attachEvents:function(b,c){var d=a(b);c=a.isFunction(v[c])?v[c]:v.toggle,d.size()>0?(v.debug("Attaching modal events to element",b,c),d.off(B).on("click"+B,c)):v.error(A.notFound)},event:{close:function(){v.verbose("Closing element pressed"),a(this).is(x.approve)?a.proxy(w.onApprove,H)()!==!1?v.hide():v.verbose("Approve callback returned false cancelling hide"):a(this).is(x.deny)?a.proxy(w.onDeny,H)()!==!1?v.hide():v.verbose("Deny callback returned false cancelling hide"):v.hide()},click:function(b){0===a(b.target).closest(x.modal).size()&&(v.debug("Dimmer clicked, hiding all modals"),w.allowMultiple?v.hide():v.hideAll(),b.stopImmediatePropagation())},debounce:function(a,b){clearTimeout(v.timer),v.timer=setTimeout(a,b)},keyboard:function(a){var b=a.which,c=27;b==c&&(w.closable?(v.debug("Escape key pressed hiding modal"),v.hide()):v.debug("Escape key pressed, but closable is set to false"),a.preventDefault())},resize:function(){t.dimmer("is active")&&p(v.refresh)}},toggle:function(){v.is.active()?v.hide():v.show()},show:function(b){b=a.isFunction(b)?b:function(){},v.showDimmer(),v.showModal(b)},showModal:function(b){b=a.isFunction(b)?b:function(){},v.is.active()?v.debug("Modal is already visible"):(v.cache===d&&v.cacheSizes(),v.set.position(),v.set.screenHeight(),v.set.type(),r.filter(":visible").size()>0&&!w.allowMultiple?(v.debug("Other modals visible, queueing show animation"),v.hideOthers(v.showModal)):(a.proxy(w.onShow,H)(),w.transition&&a.fn.transition!==d&&E.transition("is supported")?(v.debug("Showing modal with css animations"),E.transition(w.transition+" in",w.duration,function(){a.proxy(w.onVisible,H)(),v.set.active(),b()})):(v.debug("Showing modal with javascript"),E.fadeIn(w.duration,w.easing,function(){a.proxy(w.onVisible,H)(),v.set.active(),b()}))))},showDimmer:function(){t.dimmer("is active")?v.debug("Dimmer already visible"):(v.debug("Showing dimmer"),t.dimmer("show"))},hide:function(b){b=a.isFunction(b)?b:function(){},q.filter(":visible").size()<=1&&v.hideDimmer(),v.hideModal(b)},hideDimmer:function(){return v.is.active()?(v.debug("Hiding dimmer"),w.closable&&u.off("click"+B),void t.dimmer("hide",function(){w.transition&&a.fn.transition!==d&&E.transition("is supported")&&(E.transition("reset"),v.remove.screenHeight()),v.remove.active() +})):void v.debug("Dimmer is not visible cannot hide")},hideModal:function(b){return b=a.isFunction(b)?b:function(){},v.is.active()?(v.debug("Hiding modal"),v.remove.keyboardShortcuts(),a.proxy(w.onHide,H)(),void(w.transition&&a.fn.transition!==d&&E.transition("is supported")?E.transition(w.transition+" out",w.duration,function(){a.proxy(w.onHidden,H)(),v.remove.active(),v.restore.focus(),b()}):E.fadeOut(w.duration,w.easing,function(){a.proxy(w.onHidden,H)(),v.remove.active(),v.restore.focus(),b()}))):void v.debug("Cannot hide modal it is not active")},hideAll:function(b){b=a.isFunction(b)?b:function(){},q.is(":visible")&&(v.debug("Hiding all visible modals"),v.hideDimmer(),q.filter(":visible").modal("hide modal",b))},hideOthers:function(b){b=a.isFunction(b)?b:function(){},r.is(":visible")&&(v.debug("Hiding other modals"),r.filter(":visible").modal("hide modal",b))},add:{keyboardShortcuts:function(){v.verbose("Adding keyboard shortcuts"),i.on("keyup"+B,v.event.keyboard)}},save:{focus:function(){s=a(c.activeElement).blur()}},restore:{focus:function(){s&&s.size()>0&&s.focus()}},remove:{active:function(){E.removeClass(y.active)},screenHeight:function(){v.cache.height>v.cache.pageHeight&&(v.debug("Removing page height"),j.css("height",""))},keyboardShortcuts:function(){v.verbose("Removing keyboard shortcuts"),i.off("keyup"+B)},scrolling:function(){t.removeClass(y.scrolling),E.removeClass(y.scrolling)}},cacheSizes:function(){v.cache={pageHeight:j.outerHeight(),height:E.outerHeight()+w.offset,contextHeight:"body"==w.context?a(b).height():t.height()},v.debug("Caching modal and container sizes",v.cache)},can:{fit:function(){return v.cache.heightv.cache.pageHeight&&(v.debug("Modal is taller than page content, resizing page height"),j.css("height",v.cache.height+w.padding))},active:function(){v.add.keyboardShortcuts(),v.save.focus(),E.addClass(y.active),w.closable&&u.off("click"+B).on("click"+B,v.event.click)},scrolling:function(){t.addClass(y.scrolling),E.addClass(y.scrolling)},type:function(){v.can.fit()?(v.verbose("Modal fits on screen"),v.remove.scrolling()):(v.verbose("Modal cannot fit on screen setting to scrolling"),v.set.scrolling())},position:function(){v.verbose("Centering modal on page",v.cache),E.css(v.can.fit()?{top:"",marginTop:-(v.cache.height/2)}:{marginTop:"1em",top:i.scrollTop()})}},setting:function(b,c){if(v.debug("Changing setting",b,c),a.isPlainObject(b))a.extend(!0,w,b);else{if(c===d)return w[b];w[b]=c}},internal:function(b,c){if(a.isPlainObject(b))a.extend(!0,v,b);else{if(c===d)return v[b];v[b]=c}},debug:function(){w.debug&&(w.performance?v.performance.log(arguments):(v.debug=Function.prototype.bind.call(console.info,console,w.name+":"),v.debug.apply(console,arguments)))},verbose:function(){w.verbose&&w.debug&&(w.performance?v.performance.log(arguments):(v.verbose=Function.prototype.bind.call(console.info,console,w.name+":"),v.verbose.apply(console,arguments)))},error:function(){v.error=Function.prototype.bind.call(console.error,console,w.name+":"),v.error.apply(console,arguments)},performance:{log:function(a){var b,c,d;w.performance&&(b=(new Date).getTime(),d=k||b,c=b-d,k=b,l.push({Element:H,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":c})),clearTimeout(v.performance.timer),v.performance.timer=setTimeout(v.performance.display,100)},display:function(){var b=w.name+":",c=0;k=!1,clearTimeout(v.performance.timer),a.each(l,function(a,b){c+=b["Execution Time"]}),b+=" "+c+"ms",D&&(b+=" '"+D+"'"),(console.group!==d||console.table!==d)&&l.length>0&&(console.groupCollapsed(b),console.table?console.table(l):a.each(l,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),l=[]}},invoke:function(b,c,e){var g,h,i,j=I;return c=c||o,e=H||e,"string"==typeof b&&j!==d&&(b=b.split(/[\. ]/),g=b.length-1,a.each(b,function(c,e){var f=c!=g?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(j[f])&&c!=g)j=j[f];else{if(j[f]!==d)return h=j[f],!1;if(!a.isPlainObject(j[e])||c==g)return j[e]!==d?(h=j[e],!1):!1;j=j[e]}})),a.isFunction(h)?i=h.apply(e,c):h!==d&&(i=h),a.isArray(f)?f.push(i):f!==d?f=[f,i]:i!==d&&(f=i),h}},n?(I===d&&v.initialize(),v.invoke(m)):(I!==d&&v.destroy(),v.initialize())}),f!==d?f:this},a.fn.modal.settings={name:"Modal",namespace:"modal",debug:!1,verbose:!0,performance:!0,allowMultiple:!0,detachable:!0,closable:!0,context:"body",duration:500,easing:"easeOutExpo",offset:0,transition:"scale",padding:30,onShow:function(){},onHide:function(){},onVisible:function(){},onHidden:function(){},onApprove:function(){return!0},onDeny:function(){return!0},selector:{close:".close, .actions .button",approve:".actions .positive, .actions .approve, .actions .ok",deny:".actions .negative, .actions .deny, .actions .cancel",modal:".ui.modal"},error:{dimmer:"UI Dimmer, a required component is not included in this page",method:"The method you called is not defined."},className:{active:"active",scrolling:"scrolling"}}}(jQuery,window,document),function(a,b,c,d){a.fn.nag=function(c){var e,f=a(this),g=f.selector||"",h=(new Date).getTime(),i=[],j=arguments[0],k="string"==typeof j,l=[].slice.call(arguments,1);return a(this).each(function(){var m,n,o,p,q,r,s,t,u,v=a.extend(!0,{},a.fn.nag.settings,c),w=v.className,x=v.selector,y=v.error,z=v.namespace,A="."+z,B=z+"-module",C=a(this),D=C.find(x.close),E=a(v.context),F=this,G=C.data(B),H=b.requestAnimationFrame||b.mozRequestAnimationFrame||b.webkitRequestAnimationFrame||b.msRequestAnimationFrame||function(a){setTimeout(a,0)};u={initialize:function(){u.verbose("Initializing element"),m=C.offset(),n=C.outerHeight(),o=E.outerWidth(),p=E.outerHeight(),q=E.offset(),C.data(B,u),D.on("click"+A,u.dismiss),v.context==b&&"fixed"==v.position&&C.addClass(w.fixed),v.sticky&&(u.verbose("Adding scroll events"),"absolute"==v.position?E.on("scroll"+A,u.event.scroll).on("resize"+A,u.event.scroll):a(b).on("scroll"+A,u.event.scroll).on("resize"+A,u.event.scroll),a.proxy(u.event.scroll,this)()),v.displayTime>0&&setTimeout(u.hide,v.displayTime),u.should.show()?C.is(":visible")||u.show():u.hide()},destroy:function(){u.verbose("Destroying instance"),C.removeData(B).off(A),v.sticky&&E.off(A)},refresh:function(){u.debug("Refreshing cached calculations"),m=C.offset(),n=C.outerHeight(),o=E.outerWidth(),p=E.outerHeight(),q=E.offset()},show:function(){u.debug("Showing nag",v.animation.show),"fade"==v.animation.show?C.fadeIn(v.duration,v.easing):C.slideDown(v.duration,v.easing)},hide:function(){u.debug("Showing nag",v.animation.hide),"fade"==v.animation.show?C.fadeIn(v.duration,v.easing):C.slideUp(v.duration,v.easing)},onHide:function(){u.debug("Removing nag",v.animation.hide),C.remove(),v.onHide&&v.onHide()},stick:function(){if(u.refresh(),"fixed"==v.position){var c=a(b).prop("pageYOffset")||a(b).scrollTop(),d=C.hasClass(w.bottom)?q.top+(p-n)-c:q.top-c;C.css({position:"fixed",top:d,left:q.left,width:o-v.scrollBarWidth})}else C.css({top:s})},unStick:function(){C.css({top:""})},dismiss:function(a){v.storageMethod&&u.storage.set(v.storedKey,v.storedValue),u.hide(),a.stopImmediatePropagation(),a.preventDefault()},should:{show:function(){return v.persist?(u.debug("Persistent nag is set, can show nag"),!0):u.storage.get(v.storedKey)!=v.storedValue?(u.debug("Stored value is not set, can show nag",u.storage.get(v.storedKey)),!0):(u.debug("Stored value is set, cannot show nag",u.storage.get(v.storedKey)),!1)},stick:function(){return r=E.prop("pageYOffset")||E.scrollTop(),s=C.hasClass(w.bottom)?p-C.outerHeight()+r:r,s>m.top?!0:"fixed"==v.position?!0:!1}},storage:{set:function(c,e){u.debug("Setting stored value",c,e,v.storageMethod),"local"==v.storageMethod&&b.store!==d?b.store.set(c,e):a.cookie!==d?a.cookie(c,e):u.error(y.noStorage)},get:function(c){return u.debug("Getting stored value",c,v.storageMethod),"local"==v.storageMethod&&b.store!==d?b.store.get(c):a.cookie!==d?a.cookie(c):void u.error(y.noStorage)}},event:{scroll:function(){t!==d&&clearTimeout(t),t=setTimeout(function(){u.should.stick()?H(u.stick):u.unStick()},v.lag)}},setting:function(b,c){if(a.isPlainObject(b))a.extend(!0,v,b);else{if(c===d)return v[b];v[b]=c}},internal:function(b,c){return u.debug("Changing internal",b,c),c===d?u[b]:void(a.isPlainObject(b)?a.extend(!0,u,b):u[b]=c)},debug:function(){v.debug&&(v.performance?u.performance.log(arguments):(u.debug=Function.prototype.bind.call(console.info,console,v.name+":"),u.debug.apply(console,arguments)))},verbose:function(){v.verbose&&v.debug&&(v.performance?u.performance.log(arguments):(u.verbose=Function.prototype.bind.call(console.info,console,v.name+":"),u.verbose.apply(console,arguments)))},error:function(){u.error=Function.prototype.bind.call(console.error,console,v.name+":"),u.error.apply(console,arguments)},performance:{log:function(a){var b,c,d;v.performance&&(b=(new Date).getTime(),d=h||b,c=b-d,h=b,i.push({Element:F,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":c})),clearTimeout(u.performance.timer),u.performance.timer=setTimeout(u.performance.display,100)},display:function(){var b=v.name+":",c=0;h=!1,clearTimeout(u.performance.timer),a.each(i,function(a,b){c+=b["Execution Time"]}),b+=" "+c+"ms",g&&(b+=" '"+g+"'"),f.size()>1&&(b+=" ("+f.size()+")"),(console.group!==d||console.table!==d)&&i.length>0&&(console.groupCollapsed(b),console.table?console.table(i):a.each(i,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),i=[]}},invoke:function(b,c,f){var g,h,i,j=G;return c=c||l,f=F||f,"string"==typeof b&&j!==d&&(b=b.split(/[\. ]/),g=b.length-1,a.each(b,function(c,e){var f=c!=g?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(j[f])&&c!=g)j=j[f];else{if(j[f]!==d)return h=j[f],!1;if(!a.isPlainObject(j[e])||c==g)return j[e]!==d?(h=j[e],!1):!1;j=j[e]}})),a.isFunction(h)?i=h.apply(f,c):h!==d&&(i=h),a.isArray(e)?e.push(i):e!==d?e=[e,i]:i!==d&&(e=i),h}},k?(G===d&&u.initialize(),u.invoke(j)):(G!==d&&u.destroy(),u.initialize())}),e!==d?e:this},a.fn.nag.settings={name:"Nag",debug:!1,verbose:!0,performance:!0,namespace:"Nag",persist:!1,displayTime:0,animation:{show:"slide",hide:"slide"},position:"fixed",scrollBarWidth:18,storageMethod:"cookie",storedKey:"nag",storedValue:"dismiss",sticky:!1,lag:0,context:b,error:{noStorage:"Neither $.cookie or store is defined. A storage solution is required for storing state",method:"The method you called is not defined."},className:{bottom:"bottom",fixed:"fixed"},selector:{close:".icon.close"},speed:500,easing:"easeOutQuad",onHide:function(){}}}(jQuery,window,document),function(a,b,c,d){a.fn.popup=function(e){var f,g=a(this),h=a(c),i=g.selector||"",j=(new Date).getTime(),k=[],l=arguments[0],m="string"==typeof l,n=[].slice.call(arguments,1);return g.each(function(){var c,g=a.isPlainObject(e)?a.extend(!0,{},a.fn.popup.settings,e):a.extend({},a.fn.popup.settings),o=g.selector,p=g.className,q=g.error,r=g.metadata,s=g.namespace,t="."+g.namespace,u="module-"+s,v=a(this),w=a(g.context),x=g.target?a(g.target):v,y=a(b),z=g.inline?x.offsetParent():y,A=g.inline?x.next(g.selector.popup):y.children(g.selector.popup).last(),B=0,C=this,D=v.data(u);c={initialize:function(){c.debug("Initializing module",v),"click"==g.on?v.on("click",c.toggle):v.on(c.get.startEvent()+t,c.event.start).on(c.get.endEvent()+t,c.event.end),g.target&&c.debug("Target set to element",x),y.on("resize"+t,c.event.resize),c.instantiate()},instantiate:function(){c.verbose("Storing instance of module",c),D=c,v.data(u,D)},refresh:function(){g.inline?(A=x.next(o.popup),z=x.offsetParent()):A=y.children(o.popup).last()},destroy:function(){c.debug("Destroying previous module"),y.off(t),A.remove(),v.off(t).removeData(u)},event:{start:function(){c.timer=setTimeout(function(){c.is.hidden()&&c.show()},g.delay)},end:function(){clearTimeout(c.timer),c.is.visible()&&c.hide()},resize:function(){c.is.visible()&&c.set.position()}},create:function(){c.debug("Creating pop-up html");var b=v.data(r.html)||g.html,d=v.data(r.variation)||g.variation,e=v.data(r.title)||g.title,f=v.data(r.content)||v.attr("title")||g.content;b||f||e?(b||(b=g.template({title:e,content:f})),A=a("
").addClass(p.popup).addClass(d).html(b),g.inline?(c.verbose("Inserting popup element inline",A),A.data(u,D).insertAfter(v)):(c.verbose("Appending popup element to body",A),A.data(u,D).appendTo(w)),a.proxy(g.onCreate,A)()):c.error(q.content)},toggle:function(){c.debug("Toggling pop-up"),c.is.hidden()?(c.debug("Popup is hidden, showing pop-up"),c.unbind.close(),c.hideAll(),c.show()):(c.debug("Popup is visible, hiding pop-up"),c.hide())},show:function(a){a=a||function(){},c.debug("Showing pop-up",g.transition),g.preserve||c.refresh(),c.exists()||c.create(),c.save.conditions(),c.set.position(),c.animate.show(a)},hide:function(a){a=a||function(){},v.removeClass(p.visible),c.restore.conditions(),c.unbind.close(),c.is.visible()&&c.animate.hide(a)},hideAll:function(){a(o.popup).filter(":visible").popup("hide")},hideGracefully:function(b){b&&0===a(b.target).closest(o.popup).size()?(c.debug("Click occurred outside popup hiding popup"),c.hide()):c.debug("Click was inside popup, keeping popup open")},exists:function(){return g.inline?0!==A.size():A.parent(w).size()},remove:function(){c.debug("Removing popup"),A.remove()},save:{conditions:function(){c.cache={title:v.attr("title")},c.cache.title&&v.removeAttr("title"),c.verbose("Saving original attributes",c.cache.title)}},restore:{conditions:function(){return c.cache&&c.cache.title&&(v.attr("title",c.cache.title),c.verbose("Restoring original attributes",c.cache.title)),!0}},animate:{show:function(b){b=b||function(){},v.addClass(p.visible),g.transition&&a.fn.transition!==d&&v.transition("is supported")?A.transition(g.transition+" in",g.duration,function(){c.bind.close(),a.proxy(b,C)()}):A.stop().fadeIn(g.duration,g.easing,function(){c.bind.close(),a.proxy(b,C)()}),a.proxy(g.onShow,C)()},hide:function(b){b=b||function(){},c.debug("Hiding pop-up"),g.transition&&a.fn.transition!==d&&v.transition("is supported")?A.transition(g.transition+" out",g.duration,function(){c.reset(),b()}):A.stop().fadeOut(g.duration,g.easing,function(){c.reset(),b()}),a.proxy(g.onHide,C)()}},get:{startEvent:function(){return"hover"==g.on?"mouseenter":"focus"==g.on?"focus":void 0},endEvent:function(){return"hover"==g.on?"mouseleave":"focus"==g.on?"blur":void 0},offstagePosition:function(){var d={top:a(b).scrollTop(),bottom:a(b).scrollTop()+a(b).height(),left:0,right:a(b).width()},e={width:A.width(),height:A.outerHeight(),position:A.offset()},f={},g=[];return e.position&&(f={top:e.position.topd.bottom,right:e.position.left+e.width>d.right,left:e.position.left0?g.join(" "):!1},nextPosition:function(a){switch(a){case"top left":a="bottom left";break;case"bottom left":a="top right";break;case"top right":a="bottom right";break;case"bottom right":a="top center";break;case"top center":a="bottom center";break;case"bottom center":a="right center";break;case"right center":a="left center";break;case"left center":a="top center"}return a}},set:{position:function(d,e){var f,h,i=(a(b).width(),a(b).height(),x.outerWidth()),j=x.outerHeight(),k=A.width(),l=A.outerHeight(),m=z.outerWidth(),n=z.outerHeight(),o=g.distanceAway,s=g.inline?x.position():x.offset();switch(d=d||v.data(r.position)||g.position,e=e||v.data(r.offset)||g.offset,g.inline&&("left center"==d||"right center"==d?(e+=parseInt(b.getComputedStyle(C).getPropertyValue("margin-top"),10),o+=-parseInt(b.getComputedStyle(C).getPropertyValue("margin-left"),10)):(e+=parseInt(b.getComputedStyle(C).getPropertyValue("margin-left"),10),o+=parseInt(b.getComputedStyle(C).getPropertyValue("margin-top"),10))),c.debug("Calculating offset for position",d),d){case"top left":f={bottom:n-s.top+o,right:m-s.left-e,top:"auto",left:"auto"};break;case"top center":f={bottom:n-s.top+o,left:s.left+i/2-k/2+e,top:"auto",right:"auto"};break;case"top right":f={top:"auto",bottom:n-s.top+o,left:s.left+i+e,right:"auto"};break;case"left center":f={top:s.top+j/2-l/2+e,right:m-s.left+o,left:"auto",bottom:"auto"};break;case"right center":f={top:s.top+j/2-l/2+e,left:s.left+i+o,bottom:"auto",right:"auto"};break;case"bottom left":f={top:s.top+j+o,right:m-s.left-e,left:"auto",bottom:"auto"};break;case"bottom center":f={top:s.top+j+o,left:s.left+i/2-k/2+e,bottom:"auto",right:"auto"};break;case"bottom right":f={top:s.top+j+o,left:s.left+i+e,bottom:"auto",right:"auto"}}return A.css(f).removeClass(p.position).addClass(d).addClass(p.loading),h=c.get.offstagePosition(),h?(c.debug("Element is outside boundaries",h),B0&&(console.groupCollapsed(b),console.table?console.table(k):a.each(k,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),k=[]}},invoke:function(b,c,e){var g,h,i,j=D;return c=c||n,e=C||e,"string"==typeof b&&j!==d&&(b=b.split(/[\. ]/),g=b.length-1,a.each(b,function(c,e){var f=c!=g?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(j[f])&&c!=g)j=j[f];else{if(j[f]!==d)return h=j[f],!1;if(!a.isPlainObject(j[e])||c==g)return j[e]!==d?(h=j[e],!1):!1;j=j[e]}})),a.isFunction(h)?i=h.apply(e,c):h!==d&&(i=h),a.isArray(f)?f.push(i):f!==d?f=[f,i]:i!==d&&(f=i),h}},m?(D===d&&c.initialize(),c.invoke(l)):(D!==d&&c.destroy(),c.initialize())}),f!==d?f:this},a.fn.popup.settings={name:"Popup",debug:!1,verbose:!0,performance:!0,namespace:"popup",onCreate:function(){},onShow:function(){},onHide:function(){},variation:"",content:!1,html:!1,title:!1,on:"hover",target:!1,closable:!0,context:"body",position:"top center",delay:150,inline:!1,preserve:!1,duration:250,easing:"easeOutQuint",transition:"scale",distanceAway:0,offset:0,maxSearchDepth:10,error:{content:"Your popup has no content specified",method:"The method you called is not defined.",recursion:"Popup attempted to reposition element to fit, but could not find an adequate position."},metadata:{content:"content",html:"html",offset:"offset",position:"position",title:"title",variation:"variation"},className:{animating:"animating",loading:"loading",popup:"ui popup",position:"top left center bottom right",visible:"visible"},selector:{popup:".ui.popup"},template:function(a){var b="";return typeof a!==d&&(typeof a.title!==d&&a.title&&(b+='
'+a.title+'
'),typeof a.content!==d&&a.content&&(b+='
'+a.content+"
")),b}}}(jQuery,window,document),function(a,b,c,d){a.fn.rating=function(b){var c,e=a(this),f=e.selector||"",g=(new Date).getTime(),h=[],i=arguments[0],j="string"==typeof i,k=[].slice.call(arguments,1);return e.each(function(){var l,m=a.isPlainObject(b)?a.extend(!0,{},a.fn.rating.settings,b):a.extend({},a.fn.rating.settings),n=m.namespace,o=m.className,p=m.metadata,q=m.selector,r=(m.error,"."+n),s="module-"+n,t=this,u=a(this).data(s),v=a(this),w=v.find(q.icon);l={initialize:function(){l.verbose("Initializing rating module",m),m.interactive?l.enable():l.disable(),m.initialRating&&(l.debug("Setting initial rating"),l.setRating(m.initialRating)),v.data(p.rating)&&(l.debug("Rating found in metadata"),l.setRating(v.data(p.rating))),l.instantiate()},instantiate:function(){l.verbose("Instantiating module",m),u=l,v.data(s,l)},destroy:function(){l.verbose("Destroying previous instance",u),v.removeData(s),w.off(r)},event:{mouseenter:function(){var b=a(this);b.nextAll().removeClass(o.hover),v.addClass(o.hover),b.addClass(o.hover).prevAll().addClass(o.hover)},mouseleave:function(){v.removeClass(o.hover),w.removeClass(o.hover)},click:function(){var b=a(this),c=l.getRating(),d=w.index(b)+1;m.clearable&&c==d?l.clearRating():l.setRating(d)}},clearRating:function(){l.debug("Clearing current rating"),l.setRating(0)},getRating:function(){var a=w.filter("."+o.active).size();return l.verbose("Current rating retrieved",a),a},enable:function(){l.debug("Setting rating to interactive mode"),w.on("mouseenter"+r,l.event.mouseenter).on("mouseleave"+r,l.event.mouseleave).on("click"+r,l.event.click),v.removeClass(o.disabled)},disable:function(){l.debug("Setting rating to read-only mode"),w.off(r),v.addClass(o.disabled)},setRating:function(b){var c=b-1>=0?b-1:0,d=w.eq(c);v.removeClass(o.hover),w.removeClass(o.hover).removeClass(o.active),b>0&&(l.verbose("Setting current rating to",b),d.addClass(o.active).prevAll().addClass(o.active)),a.proxy(m.onRate,t)(b)},setting:function(b,c){if(a.isPlainObject(b))a.extend(!0,m,b);else{if(c===d)return m[b];m[b]=c}},internal:function(b,c){if(a.isPlainObject(b))a.extend(!0,l,b);else{if(c===d)return l[b];l[b]=c}},debug:function(){m.debug&&(m.performance?l.performance.log(arguments):(l.debug=Function.prototype.bind.call(console.info,console,m.name+":"),l.debug.apply(console,arguments)))},verbose:function(){m.verbose&&m.debug&&(m.performance?l.performance.log(arguments):(l.verbose=Function.prototype.bind.call(console.info,console,m.name+":"),l.verbose.apply(console,arguments)))},error:function(){l.error=Function.prototype.bind.call(console.error,console,m.name+":"),l.error.apply(console,arguments)},performance:{log:function(a){var b,c,d;m.performance&&(b=(new Date).getTime(),d=g||b,c=b-d,g=b,h.push({Element:t,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":c})),clearTimeout(l.performance.timer),l.performance.timer=setTimeout(l.performance.display,100)},display:function(){var b=m.name+":",c=0;g=!1,clearTimeout(l.performance.timer),a.each(h,function(a,b){c+=b["Execution Time"]}),b+=" "+c+"ms",f&&(b+=" '"+f+"'"),e.size()>1&&(b+=" ("+e.size()+")"),(console.group!==d||console.table!==d)&&h.length>0&&(console.groupCollapsed(b),console.table?console.table(h):a.each(h,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),h=[]}},invoke:function(b,e,f){var g,h,i,j=u;return e=e||k,f=t||f,"string"==typeof b&&j!==d&&(b=b.split(/[\. ]/),g=b.length-1,a.each(b,function(c,e){var f=c!=g?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(j[f])&&c!=g)j=j[f];else{if(j[f]!==d)return h=j[f],!1;if(!a.isPlainObject(j[e])||c==g)return j[e]!==d?(h=j[e],!1):!1;j=j[e]}})),a.isFunction(h)?i=h.apply(f,e):h!==d&&(i=h),a.isArray(c)?c.push(i):c!==d?c=[c,i]:i!==d&&(c=i),h}},j?(u===d&&l.initialize(),l.invoke(i)):(u!==d&&l.destroy(),l.initialize())}),c!==d?c:this},a.fn.rating.settings={name:"Rating",namespace:"rating",verbose:!0,debug:!1,performance:!0,initialRating:0,interactive:!0,clearable:!1,onRate:function(){},error:{method:"The method you called is not defined"},metadata:{rating:"rating"},className:{active:"active",disabled:"disabled",hover:"hover",loading:"loading"},selector:{icon:".icon"}}}(jQuery,window,document),function(a,b,c,d){a.fn.search=function(c,e){var f,g=a(this),h=g.selector||"",i=(new Date).getTime(),j=[],k=arguments[0],l="string"==typeof k,m=[].slice.call(arguments,1);return a(this).each(function(){var n,o=a.extend(!0,{},a.fn.search.settings,e),p=o.className,q=o.selector,r=o.error,s=o.namespace,t="."+s,u=s+"-module",v=a(this),w=v.find(q.prompt),x=v.find(q.searchButton),y=v.find(q.results),z=(v.find(q.result),v.find(q.category),this),A=v.data(u);n={initialize:function(){n.verbose("Initializing module");var a=w[0],b=a.oninput!==d?"input":a.onpropertychange!==d?"propertychange":"keyup";w.on("focus"+t,n.event.focus).on("blur"+t,n.event.blur).on("keydown"+t,n.handleKeyboard),o.automatic&&w.on(b+t,n.search.throttle),x.on("click"+t,n.search.query),y.on("click"+t,q.result,n.results.select),n.instantiate()},instantiate:function(){n.verbose("Storing instance of module",n),A=n,v.data(u,n)},destroy:function(){n.verbose("Destroying instance"),v.removeData(u)},event:{focus:function(){v.addClass(p.focus),n.results.show()},blur:function(){n.search.cancel(),v.removeClass(p.focus),n.results.hide()}},handleKeyboard:function(b){var c,d=v.find(q.result),e=v.find(q.category),f=b.which,g={backspace:8,enter:13,escape:27,upArrow:38,downArrow:40},h=p.active,i=d.index(d.filter("."+h)),j=d.size();if(f==g.escape&&(n.verbose("Escape key pressed, blurring search field"),w.trigger("blur")),y.filter(":visible").size()>0)if(f==g.enter){if(n.verbose("Enter key pressed, selecting active result"),d.filter("."+h).exists())return a.proxy(n.results.select,d.filter("."+h))(),b.preventDefault(),!1}else f==g.upArrow?(n.verbose("Up key pressed, changing active result"),c=0>i-1?i:i-1,e.removeClass(h),d.removeClass(h).eq(c).addClass(h).closest(e).addClass(h),b.preventDefault()):f==g.downArrow&&(n.verbose("Down key pressed, changing active result"),c=i+1>=j?i:i+1,e.removeClass(h),d.removeClass(h).eq(c).addClass(h).closest(e).addClass(h),b.preventDefault());else f==g.enter&&(n.verbose("Enter key pressed, executing query"),n.search.query(),x.addClass(p.down),w.one("keyup",function(){x.removeClass(p.down)}))},search:{cancel:function(){var a=v.data("xhr")||!1;a&&"resolved"!=a.state()&&(n.debug("Cancelling last search"),a.abort())},throttle:function(){var a=w.val(),b=a.length;clearTimeout(n.timer),b>=o.minCharacters?n.timer=setTimeout(n.search.query,o.searchThrottle):n.results.hide()},query:function(){var b=w.val(),d=n.search.cache.read(b);d?(n.debug("Reading result for '"+b+"' from cache"),n.results.add(d)):(n.debug("Querying for '"+b+"'"),"object"==typeof c?n.search.local(b):n.search.remote(b),a.proxy(o.onSearchQuery,v)(b))},local:function(b){var d,e=[],f=[],g=a.isArray(o.searchFields)?o.searchFields:[o.searchFields],h=new RegExp("(?:s|^)"+b,"i"),i=new RegExp(b,"i");v.addClass(p.loading),a.each(g,function(b,d){a.each(c,function(b,c){"string"==typeof c[d]&&-1==a.inArray(c,e)&&-1==a.inArray(c,f)&&(h.test(c[d])?e.push(c):i.test(c[d])&&f.push(c))})}),d=n.results.generate({results:a.merge(e,f)}),v.removeClass(p.loading),n.search.cache.write(b,d),n.results.add(d)},remote:function(b){var d,e={stateContext:v,url:c,urlData:{query:b},success:function(a){d=n.results.generate(a),n.search.cache.write(b,d),n.results.add(d)},failure:n.error};n.search.cancel(),n.debug("Executing search"),a.extend(!0,e,o.apiSettings),a.api(e)},cache:{read:function(a){var b=v.data("cache");return o.cache&&"object"==typeof b&&b[a]!==d?b[a]:!1},write:function(a,b){var c=v.data("cache")!==d?v.data("cache"):{};c[a]=b,v.data("cache",c)}}},results:{generate:function(b){n.debug("Generating html from response",b);var c=o.templates[o.type],d="";return a.isPlainObject(b.results)&&!a.isEmptyObject(b.results)||a.isArray(b.results)&&b.results.length>0?(o.maxResults>0&&(b.results=a.makeArray(b.results).slice(0,o.maxResults)),b.results.length>0&&(a.isFunction(c)?d=c(b):n.error(r.noTemplate,!1))):d=n.message(r.noResults,"empty"),a.proxy(o.onResults,v)(b),d},add:function(b){("default"==o.onResultsAdd||"default"==a.proxy(o.onResultsAdd,y)(b))&&y.html(b),n.results.show()},show:function(){0===y.filter(":visible").size()&&w.filter(":focus").size()>0&&""!==y.html()&&(y.stop().fadeIn(200),a.proxy(o.onResultsOpen,y)())},hide:function(){y.filter(":visible").size()>0&&(y.stop().fadeOut(200),a.proxy(o.onResultsClose,y)())},select:function(c){n.debug("Search result selected");var d=a(this),e=d.find(".title"),f=e.html();if("default"==o.onSelect||"default"==a.proxy(o.onSelect,this)(c)){var g=d.find("a[href]").eq(0),h=g.attr("href")||!1,i=g.attr("target")||!1;n.results.hide(),w.val(f),h&&("_blank"==i||c.ctrlKey?b.open(h):b.location.href=h)}}},setting:function(b,c){if(a.isPlainObject(b))a.extend(!0,o,b);else{if(c===d)return o[b];o[b]=c}},internal:function(b,c){if(a.isPlainObject(b))a.extend(!0,n,b);else{if(c===d)return n[b];n[b]=c}},debug:function(){o.debug&&(o.performance?n.performance.log(arguments):(n.debug=Function.prototype.bind.call(console.info,console,o.name+":"),n.debug.apply(console,arguments)))},verbose:function(){o.verbose&&o.debug&&(o.performance?n.performance.log(arguments):(n.verbose=Function.prototype.bind.call(console.info,console,o.name+":"),n.verbose.apply(console,arguments)))},error:function(){n.error=Function.prototype.bind.call(console.error,console,o.name+":"),n.error.apply(console,arguments)},performance:{log:function(a){var b,c,d;o.performance&&(b=(new Date).getTime(),d=i||b,c=b-d,i=b,j.push({Element:z,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":c})),clearTimeout(n.performance.timer),n.performance.timer=setTimeout(n.performance.display,100)},display:function(){var b=o.name+":",c=0;i=!1,clearTimeout(n.performance.timer),a.each(j,function(a,b){c+=b["Execution Time"]}),b+=" "+c+"ms",h&&(b+=" '"+h+"'"),g.size()>1&&(b+=" ("+g.size()+")"),(console.group!==d||console.table!==d)&&j.length>0&&(console.groupCollapsed(b),console.table?console.table(j):a.each(j,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),j=[]}},invoke:function(b,c,e){var g,h,i,j=A;return c=c||m,e=z||e,"string"==typeof b&&j!==d&&(b=b.split(/[\. ]/),g=b.length-1,a.each(b,function(c,e){var f=c!=g?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(j[f])&&c!=g)j=j[f];else{if(j[f]!==d)return h=j[f],!1;if(!a.isPlainObject(j[e])||c==g)return j[e]!==d?(h=j[e],!1):!1;j=j[e]}})),a.isFunction(h)?i=h.apply(e,c):h!==d&&(i=h),a.isArray(f)?f.push(i):f!==d?f=[f,i]:i!==d&&(f=i),h}},l?(A===d&&n.initialize(),n.invoke(k)):(A!==d&&n.destroy(),n.initialize())}),f!==d?f:this},a.fn.search.settings={name:"Search Module",namespace:"search",debug:!1,verbose:!0,performance:!0,onSelect:"default",onResultsAdd:"default",onSearchQuery:function(){},onResults:function(){},onResultsOpen:function(){},onResultsClose:function(){},automatic:"true",type:"simple",minCharacters:3,searchThrottle:300,maxResults:7,cache:!0,searchFields:["title","description"],apiSettings:{},className:{active:"active",down:"down",focus:"focus",empty:"empty",loading:"loading"},error:{noResults:"Your search returned no results",logging:"Error in debug logging, exiting.",noTemplate:"A valid template name was not specified.",serverError:"There was an issue with querying the server.",method:"The method you called is not defined."},selector:{prompt:".prompt",searchButton:".search.button",results:".results",category:".category",result:".result"},templates:{message:function(a,b){var c=""; +return a!==d&&b!==d&&(c+='
',c+="empty"==b?'
No Results
'+a+'
':'
'+a+"
",c+="
"),c},categories:function(b){var c="";return b.results!==d?(a.each(b.results,function(b,e){e.results!==d&&e.results.length>0&&(c+='
'+e.name+"
",a.each(e.results,function(a,b){c+='
',c+='',b.image!==d&&(c+='
'),c+='
',b.price!==d&&(c+='
'+b.price+"
"),b.title!==d&&(c+='
'+b.title+"
"),b.description!==d&&(c+='
'+b.description+"
"),c+="
"}),c+="
")}),b.resultPage&&(c+=''+b.resultPage.text+""),c):!1},simple:function(b){var c="";return b.results!==d?(a.each(b.results,function(a,b){c+='',b.image!==d&&(c+='
'),c+='
',b.price!==d&&(c+='
'+b.price+"
"),b.title!==d&&(c+='
'+b.title+"
"),b.description!==d&&(c+='
'+b.description+"
"),c+="
"}),b.resultPage&&(c+=''+b.resultPage.text+""),c):!1}}}}(jQuery,window,document),function(a,b,c,d){a.fn.shape=function(b){var e,f=a(this),g=a("body"),h=(new Date).getTime(),i=[],j=arguments[0],k="string"==typeof j,l=[].slice.call(arguments,1);return f.each(function(){var m,n,o,p=f.selector||"",q=a.extend(!0,{},a.fn.shape.settings,b),r=q.namespace,s=q.selector,t=q.error,u=q.className,v="."+r,w="module-"+r,x=a(this),y=x.find(s.sides),z=x.find(s.side),A=!1,B=this,C=x.data(w);o={initialize:function(){o.verbose("Initializing module for",B),o.set.defaultSide(),o.instantiate()},instantiate:function(){o.verbose("Storing instance of module",o),C=o,x.data(w,C)},destroy:function(){o.verbose("Destroying previous module for",B),x.removeData(w).off(v)},refresh:function(){o.verbose("Refreshing selector cache for",B),x=a(B),y=a(this).find(s.shape),z=a(this).find(s.side)},repaint:function(){o.verbose("Forcing repaint event");{var a=y.get(0)||c.createElement("div");a.offsetWidth}},animate:function(b,c){o.verbose("Animating box with properties",b),c=c||function(a){o.verbose("Executing animation callback"),a!==d&&a.stopPropagation(),o.reset(),o.set.active()},a.proxy(q.beforeChange,n[0])(),o.get.transitionEvent()?(o.verbose("Starting CSS animation"),x.addClass(u.animating),o.repaint(),x.addClass(u.animating),m.addClass(u.hidden),y.css(b).one(o.get.transitionEvent(),c),o.set.duration(q.duration)):c()},queue:function(a){o.debug("Queueing animation of",a),y.one(o.get.transitionEvent(),function(){o.debug("Executing queued animation"),setTimeout(function(){x.shape(a)},0)})},reset:function(){o.verbose("Animating states reset"),x.removeClass(u.animating).attr("style","").removeAttr("style"),y.attr("style","").removeAttr("style"),z.attr("style","").removeAttr("style").removeClass(u.hidden),n.removeClass(u.animating).attr("style","").removeAttr("style")},is:{animating:function(){return x.hasClass(u.animating)}},set:{defaultSide:function(){m=x.find("."+q.className.active),n=m.next(s.side).size()>0?m.next(s.side):x.find(s.side).first(),A=!1,o.verbose("Active side set to",m),o.verbose("Next side set to",n)},duration:function(a){a=a||q.duration,a="number"==typeof a?a+"ms":a,o.verbose("Setting animation duration",a),y.add(z).css({"-webkit-transition-duration":a,"-moz-transition-duration":a,"-ms-transition-duration":a,"-o-transition-duration":a,"transition-duration":a})},stageSize:function(){var a=x.clone().addClass(u.loading),b=a.find("."+q.className.active),c=A?a.find(A):b.next(s.side).size()>0?b.next(s.side):a.find(s.side).first(),d={};b.removeClass(u.active),c.addClass(u.active),a.prependTo(g),d={width:c.outerWidth(),height:c.outerHeight()},a.remove(),x.css(d),o.verbose("Resizing stage to fit new content",d)},nextSide:function(a){A=a,n=x.find(a),0===n.size()&&o.error(t.side),o.verbose("Next side manually set to",n)},active:function(){o.verbose("Setting new side to active",n),z.removeClass(u.active),n.addClass(u.active),a.proxy(q.onChange,n[0])(),o.set.defaultSide()}},flip:{up:function(){o.debug("Flipping up",n),o.is.animating()?o.queue("flip up"):(o.set.stageSize(),o.stage.above(),o.animate(o.get.transform.up()))},down:function(){o.debug("Flipping down",n),o.is.animating()?o.queue("flip down"):(o.set.stageSize(),o.stage.below(),o.animate(o.get.transform.down()))},left:function(){o.debug("Flipping left",n),o.is.animating()?o.queue("flip left"):(o.set.stageSize(),o.stage.left(),o.animate(o.get.transform.left()))},right:function(){o.debug("Flipping right",n),o.is.animating()?o.queue("flip right"):(o.set.stageSize(),o.stage.right(),o.animate(o.get.transform.right()))},over:function(){o.debug("Flipping over",n),o.is.animating()?o.queue("flip over"):(o.set.stageSize(),o.stage.behind(),o.animate(o.get.transform.over()))},back:function(){o.debug("Flipping back",n),o.is.animating()?o.queue("flip back"):(o.set.stageSize(),o.stage.behind(),o.animate(o.get.transform.back()))}},get:{transform:{up:function(){var a={y:-((m.outerHeight()-n.outerHeight())/2),z:-(m.outerHeight()/2)};return{transform:"translateY("+a.y+"px) translateZ("+a.z+"px) rotateX(-90deg)"}},down:function(){var a={y:-((m.outerHeight()-n.outerHeight())/2),z:-(m.outerHeight()/2)};return{transform:"translateY("+a.y+"px) translateZ("+a.z+"px) rotateX(90deg)"}},left:function(){var a={x:-((m.outerWidth()-n.outerWidth())/2),z:-(m.outerWidth()/2)};return{transform:"translateX("+a.x+"px) translateZ("+a.z+"px) rotateY(90deg)"}},right:function(){var a={x:-((m.outerWidth()-n.outerWidth())/2),z:-(m.outerWidth()/2)};return{transform:"translateX("+a.x+"px) translateZ("+a.z+"px) rotateY(-90deg)"}},over:function(){var a={x:-((m.outerWidth()-n.outerWidth())/2)};return{transform:"translateX("+a.x+"px) rotateY(180deg)"}},back:function(){var a={x:-((m.outerWidth()-n.outerWidth())/2)};return{transform:"translateX("+a.x+"px) rotateY(-180deg)"}}},transitionEvent:function(){var a,b=c.createElement("element"),e={transition:"transitionend",OTransition:"oTransitionEnd",MozTransition:"transitionend",WebkitTransition:"webkitTransitionEnd"};for(a in e)if(b.style[a]!==d)return e[a]},nextSide:function(){return m.next(s.side).size()>0?m.next(s.side):x.find(s.side).first()}},stage:{above:function(){var a={origin:(m.outerHeight()-n.outerHeight())/2,depth:{active:n.outerHeight()/2,next:m.outerHeight()/2}};o.verbose("Setting the initial animation position as above",n,a),m.css({transform:"rotateY(0deg) translateZ("+a.depth.active+"px)"}),n.addClass(u.animating).css({display:"block",top:a.origin+"px",transform:"rotateX(90deg) translateZ("+a.depth.next+"px)"})},below:function(){var a={origin:(m.outerHeight()-n.outerHeight())/2,depth:{active:n.outerHeight()/2,next:m.outerHeight()/2}};o.verbose("Setting the initial animation position as below",n,a),m.css({transform:"rotateY(0deg) translateZ("+a.depth.active+"px)"}),n.addClass(u.animating).css({display:"block",top:a.origin+"px",transform:"rotateX(-90deg) translateZ("+a.depth.next+"px)"})},left:function(){var a={origin:(m.outerWidth()-n.outerWidth())/2,depth:{active:n.outerWidth()/2,next:m.outerWidth()/2}};o.verbose("Setting the initial animation position as left",n,a),m.css({transform:"rotateY(0deg) translateZ("+a.depth.active+"px)"}),n.addClass(u.animating).css({display:"block",left:a.origin+"px",transform:"rotateY(-90deg) translateZ("+a.depth.next+"px)"})},right:function(){var a={origin:(m.outerWidth()-n.outerWidth())/2,depth:{active:n.outerWidth()/2,next:m.outerWidth()/2}};o.verbose("Setting the initial animation position as left",n,a),m.css({transform:"rotateY(0deg) translateZ("+a.depth.active+"px)"}),n.addClass(u.animating).css({display:"block",left:a.origin+"px",transform:"rotateY(90deg) translateZ("+a.depth.next+"px)"})},behind:function(){var a={origin:(m.outerWidth()-n.outerWidth())/2,depth:{active:n.outerWidth()/2,next:m.outerWidth()/2}};o.verbose("Setting the initial animation position as behind",n,a),m.css({transform:"rotateY(0deg)"}),n.addClass(u.animating).css({display:"block",left:a.origin+"px",transform:"rotateY(-180deg)"})}},setting:function(b,c){if(a.isPlainObject(b))a.extend(!0,q,b);else{if(c===d)return q[b];q[b]=c}},internal:function(b,c){if(a.isPlainObject(b))a.extend(!0,o,b);else{if(c===d)return o[b];o[b]=c}},debug:function(){q.debug&&(q.performance?o.performance.log(arguments):(o.debug=Function.prototype.bind.call(console.info,console,q.name+":"),o.debug.apply(console,arguments)))},verbose:function(){q.verbose&&q.debug&&(q.performance?o.performance.log(arguments):(o.verbose=Function.prototype.bind.call(console.info,console,q.name+":"),o.verbose.apply(console,arguments)))},error:function(){o.error=Function.prototype.bind.call(console.error,console,q.name+":"),o.error.apply(console,arguments)},performance:{log:function(a){var b,c,d;q.performance&&(b=(new Date).getTime(),d=h||b,c=b-d,h=b,i.push({Element:B,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":c})),clearTimeout(o.performance.timer),o.performance.timer=setTimeout(o.performance.display,100)},display:function(){var b=q.name+":",c=0;h=!1,clearTimeout(o.performance.timer),a.each(i,function(a,b){c+=b["Execution Time"]}),b+=" "+c+"ms",p&&(b+=" '"+p+"'"),f.size()>1&&(b+=" ("+f.size()+")"),(console.group!==d||console.table!==d)&&i.length>0&&(console.groupCollapsed(b),console.table?console.table(i):a.each(i,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),i=[]}},invoke:function(b,c,f){var g,h,i,j=C;return c=c||l,f=B||f,"string"==typeof b&&j!==d&&(b=b.split(/[\. ]/),g=b.length-1,a.each(b,function(c,e){var f=c!=g?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(j[f])&&c!=g)j=j[f];else{if(j[f]!==d)return h=j[f],!1;if(!a.isPlainObject(j[e])||c==g)return j[e]!==d?(h=j[e],!1):!1;j=j[e]}})),a.isFunction(h)?i=h.apply(f,c):h!==d&&(i=h),a.isArray(e)?e.push(i):e!==d?e=[e,i]:i!==d&&(e=i),h}},k?(C===d&&o.initialize(),o.invoke(j)):(C!==d&&o.destroy(),o.initialize())}),e!==d?e:this},a.fn.shape.settings={name:"Shape",debug:!1,verbose:!0,performance:!0,namespace:"shape",beforeChange:function(){},onChange:function(){},duration:700,error:{side:"You tried to switch to a side that does not exist.",method:"The method you called is not defined"},className:{animating:"animating",hidden:"hidden",loading:"loading",active:"active"},selector:{sides:".sides",side:".side"}}}(jQuery,window,document),function(a,b,c,d){a.fn.sidebar=function(b){var e,f=a(this),g=a("body"),h=a("head"),i=f.selector||"",j=(new Date).getTime(),k=[],l=arguments[0],m="string"==typeof l,n=[].slice.call(arguments,1);return f.each(function(){var o,p=a.isPlainObject(b)?a.extend(!0,{},a.fn.sidebar.settings,b):a.extend({},a.fn.sidebar.settings),q=p.selector,r=p.className,s=p.namespace,t=p.error,u="."+s,v="module-"+s,w=a(this),x=a("style[title="+s+"]"),y=this,z=w.data(v);o={initialize:function(){o.debug("Initializing sidebar",w),o.instantiate()},instantiate:function(){o.verbose("Storing instance of module",o),z=o,w.data(v,o)},destroy:function(){o.verbose("Destroying previous module for",w),w.off(u).removeData(v)},refresh:function(){o.verbose("Refreshing selector cache"),x=a("style[title="+s+"]")},attachEvents:function(b,c){var d=a(b);c=a.isFunction(o[c])?o[c]:o.toggle,d.size()>0?(o.debug("Attaching sidebar events to element",b,c),d.off(u).on("click"+u,c)):o.error(t.notFound)},show:function(b){b=a.isFunction(b)?b:function(){},o.debug("Showing sidebar",b),o.is.closed()?(p.overlay||(p.exclusive&&o.hideAll(),o.pushPage()),o.set.active(),b(),a.proxy(p.onChange,y)(),a.proxy(p.onShow,y)()):o.debug("Sidebar is already visible")},hide:function(b){b=a.isFunction(b)?b:function(){},o.debug("Hiding sidebar",b),o.is.open()&&(p.overlay||(o.pullPage(),o.remove.pushed()),o.remove.active(),b(),a.proxy(p.onChange,y)(),a.proxy(p.onHide,y)())},hideAll:function(){a(q.sidebar).filter(":visible").sidebar("hide")},toggle:function(){o.is.closed()?o.show():o.hide()},pushPage:function(){var a=o.get.direction(),b=o.is.vertical()?w.outerHeight():w.outerWidth();p.useCSS?(o.debug("Using CSS to animate body"),o.add.bodyCSS(a,b),o.set.pushed()):o.animatePage(a,b,o.set.pushed)},pullPage:function(){var a=o.get.direction();p.useCSS?(o.debug("Resetting body position css"),o.remove.bodyCSS()):(o.debug("Resetting body position using javascript"),o.animatePage(a,0)),o.remove.pushed()},animatePage:function(a,b){var c={};c["padding-"+a]=b,o.debug("Using javascript to animate body",c),g.animate(c,p.duration,o.set.pushed)},add:{bodyCSS:function(a,b){var c;a!==r.bottom&&(c='"),h.append(c),o.debug("Adding body css to head",x)}},remove:{bodyCSS:function(){o.debug("Removing body css styles",x),o.refresh(),x.remove()},active:function(){w.removeClass(r.active)},pushed:function(){o.verbose("Removing body push state",o.get.direction()),g.removeClass(r[o.get.direction()]).removeClass(r.pushed)}},set:{active:function(){w.addClass(r.active)},pushed:function(){o.verbose("Adding body push state",o.get.direction()),g.addClass(r[o.get.direction()]).addClass(r.pushed)}},get:{direction:function(){return w.hasClass(r.top)?r.top:w.hasClass(r.right)?r.right:w.hasClass(r.bottom)?r.bottom:r.left},transitionEvent:function(){var a,b=c.createElement("element"),e={transition:"transitionend",OTransition:"oTransitionEnd",MozTransition:"transitionend",WebkitTransition:"webkitTransitionEnd"};for(a in e)if(b.style[a]!==d)return e[a]}},is:{open:function(){return w.is(":animated")||w.hasClass(r.active)},closed:function(){return!o.is.open()},vertical:function(){return w.hasClass(r.top)}},setting:function(b,c){if(a.isPlainObject(b))a.extend(!0,p,b);else{if(c===d)return p[b];p[b]=c}},internal:function(b,c){if(a.isPlainObject(b))a.extend(!0,o,b);else{if(c===d)return o[b];o[b]=c}},debug:function(){p.debug&&(p.performance?o.performance.log(arguments):(o.debug=Function.prototype.bind.call(console.info,console,p.name+":"),o.debug.apply(console,arguments)))},verbose:function(){p.verbose&&p.debug&&(p.performance?o.performance.log(arguments):(o.verbose=Function.prototype.bind.call(console.info,console,p.name+":"),o.verbose.apply(console,arguments)))},error:function(){o.error=Function.prototype.bind.call(console.error,console,p.name+":"),o.error.apply(console,arguments)},performance:{log:function(a){var b,c,d;p.performance&&(b=(new Date).getTime(),d=j||b,c=b-d,j=b,k.push({Element:y,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":c})),clearTimeout(o.performance.timer),o.performance.timer=setTimeout(o.performance.display,100)},display:function(){var b=p.name+":",c=0;j=!1,clearTimeout(o.performance.timer),a.each(k,function(a,b){c+=b["Execution Time"]}),b+=" "+c+"ms",i&&(b+=" '"+i+"'"),f.size()>1&&(b+=" ("+f.size()+")"),(console.group!==d||console.table!==d)&&k.length>0&&(console.groupCollapsed(b),console.table?console.table(k):a.each(k,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),k=[]}},invoke:function(b,c,f){var g,h,i,j=z;return c=c||n,f=y||f,"string"==typeof b&&j!==d&&(b=b.split(/[\. ]/),g=b.length-1,a.each(b,function(c,e){var f=c!=g?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(j[f])&&c!=g)j=j[f];else{if(j[f]!==d)return h=j[f],!1;if(!a.isPlainObject(j[e])||c==g)return j[e]!==d?(h=j[e],!1):!1;j=j[e]}})),a.isFunction(h)?i=h.apply(f,c):h!==d&&(i=h),a.isArray(e)?e.push(i):e!==d?e=[e,i]:i!==d&&(e=i),h}},m?(z===d&&o.initialize(),o.invoke(l)):(z!==d&&o.destroy(),o.initialize())}),e!==d?e:this},a.fn.sidebar.settings={name:"Sidebar",namespace:"sidebar",debug:!1,verbose:!0,performance:!0,useCSS:!0,exclusive:!0,overlay:!1,duration:300,onChange:function(){},onShow:function(){},onHide:function(){},className:{active:"active",pushed:"pushed",top:"top",left:"left",right:"right",bottom:"bottom"},selector:{sidebar:".ui.sidebar"},error:{method:"The method you called is not defined.",notFound:"There were no elements that matched the specified selector"}}}(jQuery,window,document),function(a,b,c,d){a.fn.tab=function(c){var e,f,g,h,i,j=a.extend(!0,{},a.fn.tab.settings,c),k=a(this),l=a(j.context).find(j.selector.tabs),m=k.selector||"",n={},o=!0,p=0,q=this,r=(new Date).getTime(),s=[],t=j.className,u=j.metadata,v=j.error,w="."+j.namespace,x="module-"+j.namespace,y=k.data(x),z=arguments[0],A=y!==d&&"string"==typeof z,B=[].slice.call(arguments,1);return h={initialize:function(){if(h.debug("Initializing Tabs",k),j.auto&&(h.verbose("Setting up automatic tab retrieval from server"),j.apiSettings={url:j.path+"/{$tab}"}),j.history){if(h.debug("Initializing page state"),a.address===d)return h.error(v.state),!1;if("hash"==j.historyType&&h.debug("Using hash state change to manage state"),"html5"==j.historyType){if(h.debug("Using HTML5 to manage state"),j.path===!1)return h.error(v.path),!1;a.address.history(!0).state(j.path)}a.address.unbind("change").bind("change",h.event.history.change)}a.isWindow(q)||(h.debug("Attaching tab activation events to element",k),k.on("click"+w,h.event.click)),h.instantiate()},instantiate:function(){h.verbose("Storing instance of module",h),k.data(x,h)},destroy:function(){h.debug("Destroying tabs",k),k.removeData(x).off(w)},event:{click:function(b){var c=a(this).data(u.tab);c!==d?(j.history?(h.verbose("Updating page state",b),a.address.value(c)):(h.verbose("Changing tab without state management",b),h.changeTab(c)),b.preventDefault()):h.debug("No tab specified")},history:{change:function(b){var c=b.pathNames.join("/")||h.get.initialPath(),e=j.templates.determineTitle(c)||!1;h.debug("History change event",c,b),g=b,c!==d&&h.changeTab(c),e&&a.address.title(e)}}},refresh:function(){e&&(h.debug("Refreshing tab",e),h.changeTab(e))},cache:{read:function(a){return a!==d?n[a]:!1},add:function(a,b){a=a||e,h.debug("Adding cached content for",a),n[a]=b},remove:function(a){a=a||e,h.debug("Removing cached content for",a),delete n[a]}},set:{state:function(b){a.address.value(b)}},changeTab:function(c){var d=b.history&&b.history.pushState,i=d&&j.ignoreFirstLoad&&o,k=j.auto||a.isPlainObject(j.apiSettings),l=k&&!i?h.utilities.pathToArray(c):h.get.defaultPathArray(c);c=h.utilities.arrayToPath(l),h.deactivate.all(),a.each(l,function(b,d){var m,n,p,q=l.slice(0,b+1),r=h.utilities.arrayToPath(q),s=h.is.tab(r),t=b+1==l.length,u=h.get.tabElement(r);return h.verbose("Looking for tab",d),s?(h.verbose("Tab was found",d),e=r,f=h.utilities.filterArray(l,q),t?p=!0:(m=l.slice(0,b+2),n=h.utilities.arrayToPath(m),p=!h.is.tab(n),p&&h.verbose("Tab parameters found",m)),p&&k?(i?(h.debug("Ignoring remote content on first tab load",r),o=!1,h.cache.add(c,u.html()),h.activate.all(r),a.proxy(j.onTabInit,u)(r,f,g),a.proxy(j.onTabLoad,u)(r,f,g)):(h.activate.navigation(r),h.content.fetch(r,c)),!1):(h.debug("Opened local tab",r),h.activate.all(r),h.cache.read(r)||(h.cache.add(r,!0),h.debug("First time tab loaded calling tab init"),a.proxy(j.onTabInit,u)(r,f,g)),a.proxy(j.onTabLoad,u)(r,f,g),void 0)):(h.error(v.missingTab,d),!1)})},content:{fetch:function(b,c){var i,k,l=h.get.tabElement(b),m={dataType:"html",stateContext:l,success:function(d){h.cache.add(c,d),h.content.update(b,d),b==e?(h.debug("Content loaded",b),h.activate.tab(b)):h.debug("Content loaded in background",b),a.proxy(j.onTabInit,l)(b,f,g),a.proxy(j.onTabLoad,l)(b,f,g)},urlData:{tab:c}},n=l.data(u.promise)||!1,o=n&&"pending"===n.state();c=c||b,k=h.cache.read(c),j.cache&&k?(h.debug("Showing existing content",c),h.content.update(b,k),h.activate.tab(b),a.proxy(j.onTabLoad,l)(b,f,g)):o?(h.debug("Content is already loading",c),l.addClass(t.loading)):a.api!==d?(console.log(j.apiSettings),i=a.extend(!0,{headers:{"X-Remote":!0}},j.apiSettings,m),h.debug("Retrieving remote content",c,i),a.api(i)):h.error(v.api)},update:function(a,b){h.debug("Updating html for",a);var c=h.get.tabElement(a);c.html(b)}},activate:{all:function(a){h.activate.tab(a),h.activate.navigation(a)},tab:function(a){var b=h.get.tabElement(a);h.verbose("Showing tab content for",b),b.addClass(t.active)},navigation:function(a){var b=h.get.navElement(a);h.verbose("Activating tab navigation for",b,a),b.addClass(t.active)}},deactivate:{all:function(){h.deactivate.navigation(),h.deactivate.tabs()},navigation:function(){k.removeClass(t.active)},tabs:function(){l.removeClass(t.active+" "+t.loading)}},is:{tab:function(a){return a!==d?h.get.tabElement(a).size()>0:!1}},get:{initialPath:function(){return k.eq(0).data(u.tab)||l.eq(0).data(u.tab)},path:function(){return a.address.value()},defaultPathArray:function(a){return h.utilities.pathToArray(h.get.defaultPath(a))},defaultPath:function(a){var b=k.filter("[data-"+u.tab+'^="'+a+'/"]').eq(0),c=b.data(u.tab)||!1;if(c){if(h.debug("Found default tab",c),p0?b:c},tab:function(){return e}},utilities:{filterArray:function(b,c){return a.grep(b,function(b){return-1==a.inArray(b,c)})},last:function(b){return a.isArray(b)?b[b.length-1]:!1},pathToArray:function(a){return a===d&&(a=e),"string"==typeof a?a.split("/"):[a]},arrayToPath:function(b){return a.isArray(b)?b.join("/"):!1}},setting:function(b,c){if(a.isPlainObject(b))a.extend(!0,j,b);else{if(c===d)return j[b];j[b]=c}},internal:function(b,c){if(a.isPlainObject(b))a.extend(!0,h,b);else{if(c===d)return h[b];h[b]=c}},debug:function(){j.debug&&(j.performance?h.performance.log(arguments):(h.debug=Function.prototype.bind.call(console.info,console,j.name+":"),h.debug.apply(console,arguments)))},verbose:function(){j.verbose&&j.debug&&(j.performance?h.performance.log(arguments):(h.verbose=Function.prototype.bind.call(console.info,console,j.name+":"),h.verbose.apply(console,arguments)))},error:function(){h.error=Function.prototype.bind.call(console.error,console,j.name+":"),h.error.apply(console,arguments)},performance:{log:function(a){var b,c,d;j.performance&&(b=(new Date).getTime(),d=r||b,c=b-d,r=b,s.push({Element:q,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":c})),clearTimeout(h.performance.timer),h.performance.timer=setTimeout(h.performance.display,100)},display:function(){var b=j.name+":",c=0;r=!1,clearTimeout(h.performance.timer),a.each(s,function(a,b){c+=b["Execution Time"]}),b+=" "+c+"ms",m&&(b+=" '"+m+"'"),(console.group!==d||console.table!==d)&&s.length>0&&(console.groupCollapsed(b),console.table?console.table(s):a.each(s,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),s=[]}},invoke:function(b,c,e){var f,g,h,j=y;return c=c||B,e=q||e,"string"==typeof b&&j!==d&&(b=b.split(/[\. ]/),f=b.length-1,a.each(b,function(c,e){var h=c!=f?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(j[h])&&c!=f)j=j[h];else{if(j[h]!==d)return g=j[h],!1;if(!a.isPlainObject(j[e])||c==f)return j[e]!==d?(g=j[e],!1):!1;j=j[e]}})),a.isFunction(g)?h=g.apply(e,c):g!==d&&(h=g),a.isArray(i)?i.push(h):i!==d?i=[i,h]:h!==d&&(i=h),g}},A?(y===d&&h.initialize(),h.invoke(z)):(y!==d&&h.destroy(),h.initialize()),i!==d?i:this},a.tab=function(c){a(b).tab(c)},a.fn.tab.settings={name:"Tab",debug:!1,verbose:!0,performance:!0,namespace:"tab",onTabInit:function(){},onTabLoad:function(){},templates:{determineTitle:function(){}},auto:!1,history:!0,historyType:"hash",path:!1,context:"body",maxDepth:25,ignoreFirstLoad:!1,alwaysRefresh:!1,cache:!0,apiSettings:!1,error:{api:"You attempted to load content without API module",method:"The method you called is not defined",missingTab:"Tab cannot be found",noContent:"The tab you specified is missing a content url.",path:"History enabled, but no path was specified",recursion:"Max recursive depth reached",state:"The state library has not been initialized"},metadata:{tab:"tab",loaded:"loaded",promise:"promise"},className:{loading:"loading",active:"active"},selector:{tabs:".ui.tab"}}}(jQuery,window,document),function(a,b,c,d){a.fn.transition=function(){{var e,f=a(this),g=f.selector||"",h=(new Date).getTime(),i=[],j=arguments,k=j[0],l=[].slice.call(arguments,1),m="string"==typeof k;b.requestAnimationFrame||b.mozRequestAnimationFrame||b.webkitRequestAnimationFrame||b.msRequestAnimationFrame||function(a){setTimeout(a,0)}}return f.each(function(){var b,n,o,p,q,r,s,t,u,v,w=a(this),x=this;v={initialize:function(){b=v.get.settings.apply(x,j),v.verbose("Converted arguments into settings object",b),o=b.error,p=b.className,t=b.namespace,q=b.metadata,u="module-"+t,r=v.get.animationEvent(),s=v.get.animationName(),n=w.data(u)||v,m&&(m=v.invoke(k)),m===!1&&v.animate(),v.instantiate()},instantiate:function(){v.verbose("Storing instance of module",v),w.data(u,n)},destroy:function(){v.verbose("Destroying previous module for",x),w.removeData(u)},refresh:function(){v.verbose("Refreshing display type on next animation"),delete n.displayType},forceRepaint:function(){v.verbose("Forcing element repaint");var a=w.parent(),b=w.next();0===b.size()?w.detach().appendTo(a):w.detach().insertBefore(b)},repaint:function(){v.verbose("Repainting element");x.offsetWidth},animate:function(a){return b=a||b,v.is.supported()?(v.debug("Preparing animation",b.animation),v.is.animating()&&b.queue?(!b.allowRepeats&&v.has.direction()&&v.is.occuring()&&n.queuing!==!0?v.error(o.repeated):v.queue(b.animation),!1):void(v.can.animate?v.set.animating(b.animation):v.error(o.noAnimation,b.animation))):(v.error(o.support),!1)},reset:function(){v.debug("Resetting animation to beginning conditions"),w.off(r),v.restore.conditions(),v.hide(),v.remove.animating()},queue:function(a){v.debug("Queueing animation of",a),n.queuing=!0,w.one(r,function(){n.queuing=!1,v.repaint(),v.animate.apply(this,b)})},complete:function(){v.verbose("CSS animation complete",b.animation),v.is.looping()||(v.is.outward()?(v.verbose("Animation is outward, hiding element"),v.restore.conditions(),v.remove.display(),v.hide(),a.proxy(b.onHide,this)()):v.is.inward()?(v.verbose("Animation is outward, showing element"),v.restore.conditions(),v.show(),a.proxy(b.onShow,this)()):v.restore.conditions(),v.remove.duration(),v.remove.animating()),a.proxy(b.complete,this)()},has:{direction:function(a){return a=a||b.animation,-1!==a.search(p.inward)||-1!==a.search(p.outward)?(v.debug("Direction already set in animation"),!0):!1}},set:{animating:function(a){a=a||b.animation,v.save.conditions(),v.can.transition()&&!v.has.direction()&&v.set.direction(),v.remove.hidden(),v.set.display(),w.addClass(p.animating).addClass(p.transition).addClass(a).one(r,v.complete),v.set.duration(b.duration),v.debug("Starting tween",b.animation,w.attr("class"))},display:function(){var a=v.get.displayType();"block"!==a&&"none"!==a&&(v.verbose("Setting final visibility to",a),w.css({display:a}))},direction:function(){w.is(":visible")?(v.debug("Automatically determining the direction of animation","Outward"),w.removeClass(p.inward).addClass(p.outward)):(v.debug("Automatically determining the direction of animation","Inward"),w.removeClass(p.outward).addClass(p.inward))},looping:function(){v.debug("Transition set to loop"),w.addClass(p.looping)},duration:function(a){a=a||b.duration,a="number"==typeof a?a+"ms":a,v.verbose("Setting animation duration",a),w.css({"-webkit-animation-duration":a,"-moz-animation-duration":a,"-ms-animation-duration":a,"-o-animation-duration":a,"animation-duration":a})},hidden:function(){w.addClass(p.transition).addClass(p.hidden)},visible:function(){w.addClass(p.transition).addClass(p.visible)}},save:{displayType:function(a){n.displayType=a},transitionExists:function(b,c){a.fn.transition.exists[b]=c,v.verbose("Saving existence of transition",b,c)},conditions:function(){n.cache={className:w.attr("class"),style:w.attr("style")},v.verbose("Saving original attributes",n.cache)}},restore:{conditions:function(){return n.cache===d?!1:(n.cache.className?w.attr("class",n.cache.className):w.removeAttr("class"),n.cache.style?w.attr("style",n.cache.style):"block"===v.get.displayType()&&w.removeAttr("style"),v.is.looping()&&v.remove.looping(),void v.verbose("Restoring original attributes",n.cache))}},remove:{animating:function(){w.removeClass(p.animating)},display:function(){n.displayType!==d&&w.css("display","")},duration:function(){w.css({"-webkit-animation-duration":"","-moz-animation-duration":"","-ms-animation-duration":"","-o-animation-duration":"","animation-duration":""})},hidden:function(){w.removeClass(p.hidden)},visible:function(){w.removeClass(p.visible)},looping:function(){v.debug("Transitions are no longer looping"),w.removeClass(p.looping),v.forceRepaint()}},get:{settings:function(b,c,d){return"object"==typeof b?a.extend(!0,{},a.fn.transition.settings,b):"function"==typeof d?a.extend({},a.fn.transition.settings,{animation:b,complete:d,duration:c}):"string"==typeof c||"number"==typeof c?a.extend({},a.fn.transition.settings,{animation:b,duration:c}):"object"==typeof c?a.extend({},a.fn.transition.settings,c,{animation:b}):"function"==typeof c?a.extend({},a.fn.transition.settings,{animation:b,complete:c}):a.extend({},a.fn.transition.settings,{animation:b})},displayType:function(){return n.displayType===d&&v.can.transition(),n.displayType},transitionExists:function(b){return a.fn.transition.exists[b]},animationName:function(){var a,b=c.createElement("div"),e={animation:"animationName",OAnimation:"oAnimationName",MozAnimation:"mozAnimationName",WebkitAnimation:"webkitAnimationName"};for(a in e)if(b.style[a]!==d)return v.verbose("Determined animation vendor name property",e[a]),e[a];return!1},animationEvent:function(){var a,b=c.createElement("div"),e={animation:"animationend",OAnimation:"oAnimationEnd",MozAnimation:"animationend",WebkitAnimation:"webkitAnimationEnd"};for(a in e)if(b.style[a]!==d)return v.verbose("Determined animation vendor end event",e[a]),e[a];return!1}},can:{animate:function(){return"none"!==w.css(b.animation)?(v.debug("CSS definition found",w.css(b.animation)),!0):(v.debug("Unable to find css definition",w.attr("class")),!1)},transition:function(){var c,e,f,g,h=w.attr("class"),i=b.animation,j=v.get.transitionExists(b.animation);return(j===d||n.displayType===d)&&(v.verbose("Determining whether animation exists"),c=a("
").addClass(h).appendTo(a("body")),e=c.removeClass(p.inward).removeClass(p.outward).addClass(p.animating).addClass(p.transition).addClass(i).css(s),f=c.addClass(p.inward).css(s),g=c.attr("class",h).show().css("display"),v.verbose("Determining final display state",g),e!=f?(v.debug("Transition exists for animation",i),j=!0):(v.debug("Static animation found",i,g),j=!1),c.remove(),v.save.displayType(g),v.save.transitionExists(i,j)),j}},is:{animating:function(){return w.hasClass(p.animating)},inward:function(){return w.hasClass(p.inward)},outward:function(){return w.hasClass(p.outward)},looping:function(){return w.hasClass(p.looping)},occuring:function(a){return a=a||b.animation,w.hasClass(a)},visible:function(){return w.is(":visible")},supported:function(){return s!==!1&&r!==!1}},hide:function(){v.verbose("Hiding element"),v.remove.visible(),v.set.hidden(),v.repaint()},show:function(a){v.verbose("Showing element",a),v.remove.hidden(),v.set.visible(),v.repaint()},start:function(){v.verbose("Starting animation"),w.removeClass(p.disabled)},stop:function(){v.debug("Stopping animation"),w.addClass(p.disabled)},toggle:function(){v.debug("Toggling play status"),w.toggleClass(p.disabled)},setting:function(c,e){if(a.isPlainObject(c))a.extend(!0,b,c);else{if(e===d)return b[c];b[c]=e}},internal:function(b,c){if(a.isPlainObject(b))a.extend(!0,v,b);else{if(c===d)return v[b]; +v[b]=c}},debug:function(){b.debug&&(b.performance?v.performance.log(arguments):(v.debug=Function.prototype.bind.call(console.info,console,b.name+":"),v.debug.apply(console,arguments)))},verbose:function(){b.verbose&&b.debug&&(b.performance?v.performance.log(arguments):(v.verbose=Function.prototype.bind.call(console.info,console,b.name+":"),v.verbose.apply(console,arguments)))},error:function(){v.error=Function.prototype.bind.call(console.error,console,b.name+":"),v.error.apply(console,arguments)},performance:{log:function(a){var c,d,e;b.performance&&(c=(new Date).getTime(),e=h||c,d=c-e,h=c,i.push({Element:x,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":d})),clearTimeout(v.performance.timer),v.performance.timer=setTimeout(v.performance.display,100)},display:function(){var c=b.name+":",e=0;h=!1,clearTimeout(v.performance.timer),a.each(i,function(a,b){e+=b["Execution Time"]}),c+=" "+e+"ms",g&&(c+=" '"+g+"'"),f.size()>1&&(c+=" ("+f.size()+")"),(console.group!==d||console.table!==d)&&i.length>0&&(console.groupCollapsed(c),console.table?console.table(i):a.each(i,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),i=[]}},invoke:function(b,c,f){var g,h,i,j=n;return c=c||l,f=x||f,"string"==typeof b&&j!==d&&(b=b.split(/[\. ]/),g=b.length-1,a.each(b,function(c,e){var f=c!=g?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(j[f])&&c!=g)j=j[f];else{if(j[f]!==d)return h=j[f],!1;if(!a.isPlainObject(j[e])||c==g)return j[e]!==d?(h=j[e],!1):!1;j=j[e]}})),a.isFunction(h)?i=h.apply(f,c):h!==d&&(i=h),a.isArray(e)?e.push(i):e!==d?e=[e,i]:i!==d&&(e=i),h||!1}},v.initialize()}),e!==d?e:this},a.fn.transition.exists={},a.fn.transition.settings={name:"Transition",debug:!1,verbose:!0,performance:!0,namespace:"transition",complete:function(){},onShow:function(){},onHide:function(){},allowRepeats:!1,animation:"fade",duration:"700ms",queue:!0,className:{animating:"animating",disabled:"disabled",hidden:"hidden",inward:"in",loading:"loading",looping:"looping",outward:"out",transition:"ui transition",visible:"visible"},error:{noAnimation:"There is no css animation matching the one you specified.",repeated:"That animation is already occurring, cancelling repeated animation",method:"The method you called is not defined",support:"This browser does not support CSS animations"}}}(jQuery,window,document),function(a,b,c,d){a.fn.video=function(b){var c,e=a(this),f=e.selector||"",g=(new Date).getTime(),h=[],i=arguments[0],j="string"==typeof i,k=[].slice.call(arguments,1);return e.each(function(){var l,m=a.isPlainObject(b)?a.extend(!0,{},a.fn.video.settings,b):a.extend({},a.fn.video.settings),n=m.selector,o=m.className,p=m.error,q=m.metadata,r=m.namespace,s="."+r,t="module-"+r,u=a(this),v=u.find(n.placeholder),w=u.find(n.playButton),x=u.find(n.embed),y=this,z=u.data(t);l={initialize:function(){l.debug("Initializing video"),v.on("click"+s,l.play),w.on("click"+s,l.play),l.instantiate()},instantiate:function(){l.verbose("Storing instance of module",l),z=l,u.data(t,l)},destroy:function(){l.verbose("Destroying previous instance of video"),u.removeData(t).off(s),v.off(s),w.off(s)},change:function(a,b,c){l.debug("Changing video to ",a,b,c),u.data(q.source,a).data(q.id,b).data(q.url,c),m.onChange()},reset:function(){l.debug("Clearing video embed and showing placeholder"),u.removeClass(o.active),x.html(" "),v.show(),m.onReset()},play:function(){l.debug("Playing video");var a=u.data(q.source)||!1,b=u.data(q.url)||!1,c=u.data(q.id)||!1;x.html(l.generate.html(a,c,b)),u.addClass(o.active),m.onPlay()},generate:{html:function(a,b,c){l.debug("Generating embed html");var d,e="auto"==m.width?u.width():m.width,f="auto"==m.height?u.height():m.height;return a&&b?"vimeo"==a?d='':"youtube"==a&&(d=''):c?d='':l.error(p.noVideo),d},url:function(a){var b=m.api?1:0,c=m.autoplay?1:0,d=m.hd?1:0,e=m.showUI?1:0,f=m.showUI?0:1,g="";return"vimeo"==a&&(g="api="+b+"&title="+e+"&byline="+e+"&portrait="+e+"&autoplay="+c,m.color&&(g+="&color="+m.color)),"ustream"==a?(g="autoplay="+c,m.color&&(g+="&color="+m.color)):"youtube"==a&&(g="enablejsapi="+b+"&autoplay="+c+"&autohide="+f+"&hq="+d+"&modestbranding=1",m.color&&(g+="&color="+m.color)),g}},setting:function(b,c){if(a.isPlainObject(b))a.extend(!0,m,b);else{if(c===d)return m[b];m[b]=c}},internal:function(b,c){if(a.isPlainObject(b))a.extend(!0,l,b);else{if(c===d)return l[b];l[b]=c}},debug:function(){m.debug&&(m.performance?l.performance.log(arguments):(l.debug=Function.prototype.bind.call(console.info,console,m.name+":"),l.debug.apply(console,arguments)))},verbose:function(){m.verbose&&m.debug&&(m.performance?l.performance.log(arguments):(l.verbose=Function.prototype.bind.call(console.info,console,m.name+":"),l.verbose.apply(console,arguments)))},error:function(){l.error=Function.prototype.bind.call(console.error,console,m.name+":"),l.error.apply(console,arguments)},performance:{log:function(a){var b,c,d;m.performance&&(b=(new Date).getTime(),d=g||b,c=b-d,g=b,h.push({Element:y,Name:a[0],Arguments:[].slice.call(a,1)||"","Execution Time":c})),clearTimeout(l.performance.timer),l.performance.timer=setTimeout(l.performance.display,100)},display:function(){var b=m.name+":",c=0;g=!1,clearTimeout(l.performance.timer),a.each(h,function(a,b){c+=b["Execution Time"]}),b+=" "+c+"ms",f&&(b+=" '"+f+"'"),e.size()>1&&(b+=" ("+e.size()+")"),(console.group!==d||console.table!==d)&&h.length>0&&(console.groupCollapsed(b),console.table?console.table(h):a.each(h,function(a,b){console.log(b.Name+": "+b["Execution Time"]+"ms")}),console.groupEnd()),h=[]}},invoke:function(b,e,f){var g,h,i,j=z;return e=e||k,f=y||f,"string"==typeof b&&j!==d&&(b=b.split(/[\. ]/),g=b.length-1,a.each(b,function(c,e){var f=c!=g?e+b[c+1].charAt(0).toUpperCase()+b[c+1].slice(1):b;if(a.isPlainObject(j[f])&&c!=g)j=j[f];else{if(j[f]!==d)return h=j[f],!1;if(!a.isPlainObject(j[e])||c==g)return j[e]!==d?(h=j[e],!1):!1;j=j[e]}})),a.isFunction(h)?i=h.apply(f,e):h!==d&&(i=h),a.isArray(c)?c.push(i):c!==d?c=[c,i]:i!==d&&(c=i),h}},j?(z===d&&l.initialize(),l.invoke(i)):(z!==d&&l.destroy(),l.initialize())}),c!==d?c:this},a.fn.video.settings={name:"Video",namespace:"video",debug:!1,verbose:!0,performance:!0,metadata:{source:"source",id:"id",url:"url"},onPlay:function(){},onReset:function(){},onChange:function(){},onPause:function(){},onStop:function(){},width:"auto",height:"auto",autoplay:!1,color:"#442359",hd:!0,showUI:!1,api:!0,error:{noVideo:"No video specified",method:"The method you called is not defined"},className:{active:"active"},selector:{embed:".embed",placeholder:".placeholder",playButton:".play"}}}(jQuery,window,document); \ No newline at end of file From f3b2df2806408e0918903c95d9a47fff9c19fbba Mon Sep 17 00:00:00 2001 From: Peter Dave Hello Date: Sat, 26 Apr 2014 00:30:01 +0800 Subject: [PATCH 04/20] fix version in minified jquery.pjax's comment, fix #3024 --- ajax/libs/jquery.pjax/1.8.0/jquery.pjax.min.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ajax/libs/jquery.pjax/1.8.0/jquery.pjax.min.js b/ajax/libs/jquery.pjax/1.8.0/jquery.pjax.min.js index 23ab61f37..45f975f01 100644 --- a/ajax/libs/jquery.pjax/1.8.0/jquery.pjax.min.js +++ b/ajax/libs/jquery.pjax/1.8.0/jquery.pjax.min.js @@ -1,4 +1,4 @@ -// jquery.pjax.js 1.7.0 +// jquery.pjax.js 1.8.0 // copyright chris wanstrath // https://github.com/defunkt/jquery-pjax From e65d49304c4f9b8ed25f84054d8afeae4f804883 Mon Sep 17 00:00:00 2001 From: juliusrickert Date: Fri, 25 Apr 2014 20:07:35 +0200 Subject: [PATCH 05/20] Create mousetrap-global-bind.js --- .../mousetrap/1.4.6/mousetrap-global-bind.js | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 ajax/libs/mousetrap/1.4.6/mousetrap-global-bind.js diff --git a/ajax/libs/mousetrap/1.4.6/mousetrap-global-bind.js b/ajax/libs/mousetrap/1.4.6/mousetrap-global-bind.js new file mode 100644 index 000000000..022ceb71d --- /dev/null +++ b/ajax/libs/mousetrap/1.4.6/mousetrap-global-bind.js @@ -0,0 +1,36 @@ +/** + * adds a bindGlobal method to Mousetrap that allows you to + * bind specific keyboard shortcuts that will still work + * inside a text input field + * + * usage: + * Mousetrap.bindGlobal('ctrl+s', _saveChanges); + */ +/* global Mousetrap:true */ +Mousetrap = (function(Mousetrap) { + var _globalCallbacks = {}, + _originalStopCallback = Mousetrap.stopCallback; + + Mousetrap.stopCallback = function(e, element, combo, sequence) { + if (_globalCallbacks[combo] || _globalCallbacks[sequence]) { + return false; + } + + return _originalStopCallback(e, element, combo); + }; + + Mousetrap.bindGlobal = function(keys, callback, action) { + Mousetrap.bind(keys, callback, action); + + if (keys instanceof Array) { + for (var i = 0; i < keys.length; i++) { + _globalCallbacks[keys[i]] = true; + } + return; + } + + _globalCallbacks[keys] = true; + }; + + return Mousetrap; +}) (Mousetrap); From a4ead9b3caded13cb3c7c63a333663451a60ff73 Mon Sep 17 00:00:00 2001 From: juliusrickert Date: Fri, 25 Apr 2014 20:08:17 +0200 Subject: [PATCH 06/20] Create mousetrap-global-bind.min.js --- ajax/libs/mousetrap/1.4.6/mousetrap-global-bind.min.js | 1 + 1 file changed, 1 insertion(+) create mode 100644 ajax/libs/mousetrap/1.4.6/mousetrap-global-bind.min.js diff --git a/ajax/libs/mousetrap/1.4.6/mousetrap-global-bind.min.js b/ajax/libs/mousetrap/1.4.6/mousetrap-global-bind.min.js new file mode 100644 index 000000000..636b25e08 --- /dev/null +++ b/ajax/libs/mousetrap/1.4.6/mousetrap-global-bind.min.js @@ -0,0 +1 @@ +Mousetrap=function(a){var d={},e=a.stopCallback;a.stopCallback=function(b,c,a){return d[a]?!1:e(b,c,a)};a.bindGlobal=function(b,c,e){a.bind(b,c,e);if(b instanceof Array)for(c=0;c Date: Fri, 25 Apr 2014 20:09:03 +0200 Subject: [PATCH 07/20] Create mousetrap-pause.js --- ajax/libs/mousetrap/1.4.6/mousetrap-pause.js | 29 ++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 ajax/libs/mousetrap/1.4.6/mousetrap-pause.js diff --git a/ajax/libs/mousetrap/1.4.6/mousetrap-pause.js b/ajax/libs/mousetrap/1.4.6/mousetrap-pause.js new file mode 100644 index 000000000..ca9cafee4 --- /dev/null +++ b/ajax/libs/mousetrap/1.4.6/mousetrap-pause.js @@ -0,0 +1,29 @@ +/** + * adds a pause and unpause method to Mousetrap + * this allows you to enable or disable keyboard shortcuts + * without having to reset Mousetrap and rebind everything + */ +/* global Mousetrap:true */ +Mousetrap = (function(Mousetrap) { + var self = Mousetrap, + _originalStopCallback = self.stopCallback, + enabled = true; + + self.stopCallback = function(e, element, combo) { + if (!enabled) { + return true; + } + + return _originalStopCallback(e, element, combo); + }; + + self.pause = function() { + enabled = false; + }; + + self.unpause = function() { + enabled = true; + }; + + return self; +}) (Mousetrap); From 40e48113855b6ed708526caa8c7e435c1122b127 Mon Sep 17 00:00:00 2001 From: juliusrickert Date: Fri, 25 Apr 2014 20:09:39 +0200 Subject: [PATCH 08/20] Create mousetrap-pause.min.js --- ajax/libs/mousetrap/1.4.6/mousetrap-pause.min.js | 1 + 1 file changed, 1 insertion(+) create mode 100644 ajax/libs/mousetrap/1.4.6/mousetrap-pause.min.js diff --git a/ajax/libs/mousetrap/1.4.6/mousetrap-pause.min.js b/ajax/libs/mousetrap/1.4.6/mousetrap-pause.min.js new file mode 100644 index 000000000..9b6d67c52 --- /dev/null +++ b/ajax/libs/mousetrap/1.4.6/mousetrap-pause.min.js @@ -0,0 +1 @@ +Mousetrap=function(a){var c=a.stopCallback,b=!0;a.stopCallback=function(a,d,e){return b?c(a,d,e):!0};a.pause=function(){b=!1};a.unpause=function(){b=!0};return a}(Mousetrap); From 9f95c2934bbb35bb5b0694717b84ea9d32ae05f1 Mon Sep 17 00:00:00 2001 From: juliusrickert Date: Fri, 25 Apr 2014 20:11:12 +0200 Subject: [PATCH 09/20] Create mousetrap-record.js --- ajax/libs/mousetrap/1.4.6/mousetrap-record.js | 189 ++++++++++++++++++ 1 file changed, 189 insertions(+) create mode 100644 ajax/libs/mousetrap/1.4.6/mousetrap-record.js diff --git a/ajax/libs/mousetrap/1.4.6/mousetrap-record.js b/ajax/libs/mousetrap/1.4.6/mousetrap-record.js new file mode 100644 index 000000000..1b9353371 --- /dev/null +++ b/ajax/libs/mousetrap/1.4.6/mousetrap-record.js @@ -0,0 +1,189 @@ +/** + * This extension allows you to record a sequence using Mousetrap. + * + * @author Dan Tao + */ +(function(Mousetrap) { + /** + * the sequence currently being recorded + * + * @type {Array} + */ + var _recordedSequence = [], + + /** + * a callback to invoke after recording a sequence + * + * @type {Function|null} + */ + _recordedSequenceCallback = null, + + /** + * a list of all of the keys currently held down + * + * @type {Array} + */ + _currentRecordedKeys = [], + + /** + * temporary state where we remember if we've already captured a + * character key in the current combo + * + * @type {boolean} + */ + _recordedCharacterKey = false, + + /** + * a handle for the timer of the current recording + * + * @type {null|number} + */ + _recordTimer = null, + + /** + * the original handleKey method to override when Mousetrap.record() is + * called + * + * @type {Function} + */ + _origHandleKey = Mousetrap.handleKey; + + /** + * handles a character key event + * + * @param {string} character + * @param {Array} modifiers + * @param {Event} e + * @returns void + */ + function _handleKey(character, modifiers, e) { + // remember this character if we're currently recording a sequence + if (e.type == 'keydown') { + if (character.length === 1 && _recordedCharacterKey) { + _recordCurrentCombo(); + } + + for (i = 0; i < modifiers.length; ++i) { + _recordKey(modifiers[i]); + } + _recordKey(character); + + // once a key is released, all keys that were held down at the time + // count as a keypress + } else if (e.type == 'keyup' && _currentRecordedKeys.length > 0) { + _recordCurrentCombo(); + } + } + + /** + * marks a character key as held down while recording a sequence + * + * @param {string} key + * @returns void + */ + function _recordKey(key) { + var i; + + // one-off implementation of Array.indexOf, since IE6-9 don't support it + for (i = 0; i < _currentRecordedKeys.length; ++i) { + if (_currentRecordedKeys[i] === key) { + return; + } + } + + _currentRecordedKeys.push(key); + + if (key.length === 1) { + _recordedCharacterKey = true; + } + } + + /** + * marks whatever key combination that's been recorded so far as finished + * and gets ready for the next combo + * + * @returns void + */ + function _recordCurrentCombo() { + _recordedSequence.push(_currentRecordedKeys); + _currentRecordedKeys = []; + _recordedCharacterKey = false; + _restartRecordTimer(); + } + + /** + * ensures each combo in a sequence is in a predictable order and formats + * key combos to be '+'-delimited + * + * modifies the sequence in-place + * + * @param {Array} sequence + * @returns void + */ + function _normalizeSequence(sequence) { + var i; + + for (i = 0; i < sequence.length; ++i) { + sequence[i].sort(function(x, y) { + // modifier keys always come first, in alphabetical order + if (x.length > 1 && y.length === 1) { + return -1; + } else if (x.length === 1 && y.length > 1) { + return 1; + } + + // character keys come next (list should contain no duplicates, + // so no need for equality check) + return x > y ? 1 : -1; + }); + + sequence[i] = sequence[i].join('+'); + } + } + + /** + * finishes the current recording, passes the recorded sequence to the stored + * callback, and sets Mousetrap.handleKey back to its original function + * + * @returns void + */ + function _finishRecording() { + if (_recordedSequenceCallback) { + _normalizeSequence(_recordedSequence); + _recordedSequenceCallback(_recordedSequence); + } + + // reset all recorded state + _recordedSequence = []; + _recordedSequenceCallback = null; + _currentRecordedKeys = []; + + Mousetrap.handleKey = _origHandleKey; + } + + /** + * called to set a 1 second timeout on the current recording + * + * this is so after each key press in the sequence the recording will wait for + * 1 more second before executing the callback + * + * @returns void + */ + function _restartRecordTimer() { + clearTimeout(_recordTimer); + _recordTimer = setTimeout(_finishRecording, 1000); + } + + /** + * records the next sequence and passes it to a callback once it's + * completed + * + * @param {Function} callback + * @returns void + */ + Mousetrap.record = function(callback) { + Mousetrap.handleKey = _handleKey; + _recordedSequenceCallback = callback; + }; + +})(Mousetrap); From 697a000ddcb263a3b7ee9720e2814ee0f702f461 Mon Sep 17 00:00:00 2001 From: juliusrickert Date: Fri, 25 Apr 2014 20:11:52 +0200 Subject: [PATCH 10/20] Create mousetrap-record.min.js --- ajax/libs/mousetrap/1.4.6/mousetrap-record.min.js | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 ajax/libs/mousetrap/1.4.6/mousetrap-record.min.js diff --git a/ajax/libs/mousetrap/1.4.6/mousetrap-record.min.js b/ajax/libs/mousetrap/1.4.6/mousetrap-record.min.js new file mode 100644 index 000000000..dd2f60e28 --- /dev/null +++ b/ajax/libs/mousetrap/1.4.6/mousetrap-record.min.js @@ -0,0 +1,2 @@ +(function(d){function n(b,a,h){if("keydown"==h.type){1===b.length&&g&&k();for(i=0;ib?1:-1}),b[a]=b[a].join("+")}function p(){f&&(q(e),f(e));e=[]; +f=null;c=[];d.handleKey=r}var e=[],f=null,c=[],g=!1,m=null,r=d.handleKey;d.record=function(b){d.handleKey=n;f=b}})(Mousetrap); From 2466a4c4ed970ec93217486016c54d3daf5c98a8 Mon Sep 17 00:00:00 2001 From: juliusrickert Date: Fri, 25 Apr 2014 20:12:40 +0200 Subject: [PATCH 11/20] Create mousetrap-bind-dictionary.js --- .../1.4.6/mousetrap-bind-dictionary.js | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 ajax/libs/mousetrap/1.4.6/mousetrap-bind-dictionary.js diff --git a/ajax/libs/mousetrap/1.4.6/mousetrap-bind-dictionary.js b/ajax/libs/mousetrap/1.4.6/mousetrap-bind-dictionary.js new file mode 100644 index 000000000..dc7054a64 --- /dev/null +++ b/ajax/libs/mousetrap/1.4.6/mousetrap-bind-dictionary.js @@ -0,0 +1,39 @@ +/** + * Overwrites default Mousetrap.bind method to optionally accept + * an object to bind multiple key events in a single call + * + * You can pass it in like: + * + * Mousetrap.bind({ + * 'a': function() { console.log('a'); }, + * 'b': function() { console.log('b'); } + * }); + * + * And can optionally pass in 'keypress', 'keydown', or 'keyup' + * as a second argument + * + */ +/* global Mousetrap:true */ +Mousetrap = (function(Mousetrap) { + var self = Mousetrap, + _oldBind = self.bind, + args; + + self.bind = function() { + args = arguments; + + // normal call + if (typeof args[0] == 'string' || args[0] instanceof Array) { + return _oldBind(args[0], args[1], args[2]); + } + + // object passed in + for (var key in args[0]) { + if (args[0].hasOwnProperty(key)) { + _oldBind(key, args[0][key], args[1]); + } + } + }; + + return self; +}) (Mousetrap); From 8bb2748fe3505999e01d13095a2e1a6c814133c4 Mon Sep 17 00:00:00 2001 From: juliusrickert Date: Fri, 25 Apr 2014 20:13:08 +0200 Subject: [PATCH 12/20] Create mousetrap-bind-dictionary.min.js --- ajax/libs/mousetrap/1.4.6/mousetrap-bind-dictionary.min.js | 1 + 1 file changed, 1 insertion(+) create mode 100644 ajax/libs/mousetrap/1.4.6/mousetrap-bind-dictionary.min.js diff --git a/ajax/libs/mousetrap/1.4.6/mousetrap-bind-dictionary.min.js b/ajax/libs/mousetrap/1.4.6/mousetrap-bind-dictionary.min.js new file mode 100644 index 000000000..3c4382bad --- /dev/null +++ b/ajax/libs/mousetrap/1.4.6/mousetrap-bind-dictionary.min.js @@ -0,0 +1 @@ +Mousetrap=function(b){var c=b.bind,a;b.bind=function(){a=arguments;if("string"==typeof a[0]||a[0]instanceof Array)return c(a[0],a[1],a[2]);for(var b in a[0])a[0].hasOwnProperty(b)&&c(b,a[0][b],a[1])};return b}(Mousetrap); From 2d1a5e389d5f12fbb87fcc104dfb7c6e737fafa5 Mon Sep 17 00:00:00 2001 From: hackerwins Date: Sat, 26 Apr 2014 16:31:48 +0900 Subject: [PATCH 13/20] add summernote v0.5.1 --- ajax/libs/summernote/0.5.1/summernote-bs2.css | 5268 +++++++++++++++ ajax/libs/summernote/0.5.1/summernote-bs3.css | 5970 +++++++++++++++++ ajax/libs/summernote/0.5.1/summernote.css | 1 + ajax/libs/summernote/0.5.1/summernote.js | 3349 +++++++++ ajax/libs/summernote/0.5.1/summernote.min.js | 2 + ajax/libs/summernote/package.json | 4 +- 6 files changed, 14592 insertions(+), 2 deletions(-) create mode 100644 ajax/libs/summernote/0.5.1/summernote-bs2.css create mode 100644 ajax/libs/summernote/0.5.1/summernote-bs3.css create mode 100644 ajax/libs/summernote/0.5.1/summernote.css create mode 100644 ajax/libs/summernote/0.5.1/summernote.js create mode 100644 ajax/libs/summernote/0.5.1/summernote.min.js diff --git a/ajax/libs/summernote/0.5.1/summernote-bs2.css b/ajax/libs/summernote/0.5.1/summernote-bs2.css new file mode 100644 index 000000000..e4419c215 --- /dev/null +++ b/ajax/libs/summernote/0.5.1/summernote-bs2.css @@ -0,0 +1,5268 @@ +/*! + * Bootstrap v2.3.2 + * + * Copyright 2012 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world @twitter by @mdo and @fat. + */ +.note-editor { + /* Allow for input prepend/append in search forms */ + + /* White icons with optional class, or on hover/focus/active states of certain elements */ + + /* move down carets for tabs */ + +} +.note-editor .clearfix { + *zoom: 1; +} +.note-editor .clearfix:before, +.note-editor .clearfix:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .clearfix:after { + clear: both; +} +.note-editor .hide-text { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} +.note-editor .input-block-level { + display: block; + width: 100%; + min-height: 30px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.note-editor article, +.note-editor aside, +.note-editor details, +.note-editor figcaption, +.note-editor figure, +.note-editor footer, +.note-editor header, +.note-editor hgroup, +.note-editor nav, +.note-editor section { + display: block; +} +.note-editor audio, +.note-editor canvas, +.note-editor video { + display: inline-block; + *display: inline; + *zoom: 1; +} +.note-editor audio:not([controls]) { + display: none; +} +.note-editor html { + font-size: 100%; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} +.note-editor a:focus { + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.note-editor a:hover, +.note-editor a:active { + outline: 0; +} +.note-editor sub, +.note-editor sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} +.note-editor sup { + top: -0.5em; +} +.note-editor sub { + bottom: -0.25em; +} +.note-editor img { + /* Responsive images (ensure images don't scale beyond their parents) */ + + max-width: 100%; + /* Part 1: Set a maxium relative to the parent */ + + width: auto\9; + /* IE7-8 need help adjusting responsive images */ + + height: auto; + /* Part 2: Scale the height according to the width, otherwise you get stretching */ + + vertical-align: middle; + border: 0; + -ms-interpolation-mode: bicubic; +} +.note-editor #map_canvas img, +.note-editor .google-maps img { + max-width: none; +} +.note-editor button, +.note-editor input, +.note-editor select, +.note-editor textarea { + margin: 0; + font-size: 100%; + vertical-align: middle; +} +.note-editor button, +.note-editor input { + *overflow: visible; + line-height: normal; +} +.note-editor button::-moz-focus-inner, +.note-editor input::-moz-focus-inner { + padding: 0; + border: 0; +} +.note-editor button, +.note-editor html input[type="button"], +.note-editor input[type="reset"], +.note-editor input[type="submit"] { + -webkit-appearance: button; + cursor: pointer; +} +.note-editor label, +.note-editor select, +.note-editor button, +.note-editor input[type="button"], +.note-editor input[type="reset"], +.note-editor input[type="submit"], +.note-editor input[type="radio"], +.note-editor input[type="checkbox"] { + cursor: pointer; +} +.note-editor input[type="search"] { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + -webkit-appearance: textfield; +} +.note-editor input[type="search"]::-webkit-search-decoration, +.note-editor input[type="search"]::-webkit-search-cancel-button { + -webkit-appearance: none; +} +.note-editor textarea { + overflow: auto; + vertical-align: top; +} +@media print { + .note-editor * { + text-shadow: none !important; + color: #000 !important; + background: transparent !important; + box-shadow: none !important; + } + .note-editor a, + .note-editor a:visited { + text-decoration: underline; + } + .note-editor a[href]:after { + content: " (" attr(href) ")"; + } + .note-editor abbr[title]:after { + content: " (" attr(title) ")"; + } + .note-editor .ir a:after, + .note-editor a[href^="javascript:"]:after, + .note-editor a[href^="#"]:after { + content: ""; + } + .note-editor pre, + .note-editor blockquote { + border: 1px solid #999; + page-break-inside: avoid; + } + .note-editor thead { + display: table-header-group; + } + .note-editor tr, + .note-editor img { + page-break-inside: avoid; + } + .note-editor img { + max-width: 100% !important; + } + @page { + margin: 0.5cm; + } + .note-editor p, + .note-editor h2, + .note-editor h3 { + orphans: 3; + widows: 3; + } + .note-editor h2, + .note-editor h3 { + page-break-after: avoid; + } +} +.note-editor body { + margin: 0; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 20px; + color: #333333; + background-color: #ffffff; +} +.note-editor a { + color: #0088cc; + text-decoration: none; +} +.note-editor a:hover, +.note-editor a:focus { + color: #005580; + text-decoration: underline; +} +.note-editor .img-rounded { + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; +} +.note-editor .img-polaroid { + padding: 4px; + background-color: #fff; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.2); + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); + -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); +} +.note-editor .img-circle { + -webkit-border-radius: 500px; + -moz-border-radius: 500px; + border-radius: 500px; +} +.note-editor .row { + margin-left: -20px; + *zoom: 1; +} +.note-editor .row:before, +.note-editor .row:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .row:after { + clear: both; +} +.note-editor [class*="span"] { + float: left; + min-height: 1px; + margin-left: 20px; +} +.note-editor .container, +.note-editor .navbar-static-top .container, +.note-editor .navbar-fixed-top .container, +.note-editor .navbar-fixed-bottom .container { + width: 940px; +} +.note-editor .span12 { + width: 940px; +} +.note-editor .span11 { + width: 860px; +} +.note-editor .span10 { + width: 780px; +} +.note-editor .span9 { + width: 700px; +} +.note-editor .span8 { + width: 620px; +} +.note-editor .span7 { + width: 540px; +} +.note-editor .span6 { + width: 460px; +} +.note-editor .span5 { + width: 380px; +} +.note-editor .span4 { + width: 300px; +} +.note-editor .span3 { + width: 220px; +} +.note-editor .span2 { + width: 140px; +} +.note-editor .span1 { + width: 60px; +} +.note-editor .offset12 { + margin-left: 980px; +} +.note-editor .offset11 { + margin-left: 900px; +} +.note-editor .offset10 { + margin-left: 820px; +} +.note-editor .offset9 { + margin-left: 740px; +} +.note-editor .offset8 { + margin-left: 660px; +} +.note-editor .offset7 { + margin-left: 580px; +} +.note-editor .offset6 { + margin-left: 500px; +} +.note-editor .offset5 { + margin-left: 420px; +} +.note-editor .offset4 { + margin-left: 340px; +} +.note-editor .offset3 { + margin-left: 260px; +} +.note-editor .offset2 { + margin-left: 180px; +} +.note-editor .offset1 { + margin-left: 100px; +} +.note-editor .row-fluid { + width: 100%; + *zoom: 1; +} +.note-editor .row-fluid:before, +.note-editor .row-fluid:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .row-fluid:after { + clear: both; +} +.note-editor .row-fluid [class*="span"] { + display: block; + width: 100%; + min-height: 30px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + float: left; + margin-left: 2.127659574468085%; + *margin-left: 2.074468085106383%; +} +.note-editor .row-fluid [class*="span"]:first-child { + margin-left: 0; +} +.note-editor .row-fluid .controls-row [class*="span"] + [class*="span"] { + margin-left: 2.127659574468085%; +} +.note-editor .row-fluid .span12 { + width: 100%; + *width: 99.94680851063829%; +} +.note-editor .row-fluid .span11 { + width: 91.48936170212765%; + *width: 91.43617021276594%; +} +.note-editor .row-fluid .span10 { + width: 82.97872340425532%; + *width: 82.92553191489361%; +} +.note-editor .row-fluid .span9 { + width: 74.46808510638297%; + *width: 74.41489361702126%; +} +.note-editor .row-fluid .span8 { + width: 65.95744680851064%; + *width: 65.90425531914893%; +} +.note-editor .row-fluid .span7 { + width: 57.44680851063829%; + *width: 57.39361702127659%; +} +.note-editor .row-fluid .span6 { + width: 48.93617021276595%; + *width: 48.88297872340425%; +} +.note-editor .row-fluid .span5 { + width: 40.42553191489362%; + *width: 40.37234042553192%; +} +.note-editor .row-fluid .span4 { + width: 31.914893617021278%; + *width: 31.861702127659576%; +} +.note-editor .row-fluid .span3 { + width: 23.404255319148934%; + *width: 23.351063829787233%; +} +.note-editor .row-fluid .span2 { + width: 14.893617021276595%; + *width: 14.840425531914894%; +} +.note-editor .row-fluid .span1 { + width: 6.382978723404255%; + *width: 6.329787234042553%; +} +.note-editor .row-fluid .offset12 { + margin-left: 104.25531914893617%; + *margin-left: 104.14893617021275%; +} +.note-editor .row-fluid .offset12:first-child { + margin-left: 102.12765957446808%; + *margin-left: 102.02127659574467%; +} +.note-editor .row-fluid .offset11 { + margin-left: 95.74468085106382%; + *margin-left: 95.6382978723404%; +} +.note-editor .row-fluid .offset11:first-child { + margin-left: 93.61702127659574%; + *margin-left: 93.51063829787232%; +} +.note-editor .row-fluid .offset10 { + margin-left: 87.23404255319149%; + *margin-left: 87.12765957446807%; +} +.note-editor .row-fluid .offset10:first-child { + margin-left: 85.1063829787234%; + *margin-left: 84.99999999999999%; +} +.note-editor .row-fluid .offset9 { + margin-left: 78.72340425531914%; + *margin-left: 78.61702127659572%; +} +.note-editor .row-fluid .offset9:first-child { + margin-left: 76.59574468085106%; + *margin-left: 76.48936170212764%; +} +.note-editor .row-fluid .offset8 { + margin-left: 70.2127659574468%; + *margin-left: 70.10638297872339%; +} +.note-editor .row-fluid .offset8:first-child { + margin-left: 68.08510638297872%; + *margin-left: 67.9787234042553%; +} +.note-editor .row-fluid .offset7 { + margin-left: 61.70212765957446%; + *margin-left: 61.59574468085106%; +} +.note-editor .row-fluid .offset7:first-child { + margin-left: 59.574468085106375%; + *margin-left: 59.46808510638297%; +} +.note-editor .row-fluid .offset6 { + margin-left: 53.191489361702125%; + *margin-left: 53.085106382978715%; +} +.note-editor .row-fluid .offset6:first-child { + margin-left: 51.063829787234035%; + *margin-left: 50.95744680851063%; +} +.note-editor .row-fluid .offset5 { + margin-left: 44.68085106382979%; + *margin-left: 44.57446808510638%; +} +.note-editor .row-fluid .offset5:first-child { + margin-left: 42.5531914893617%; + *margin-left: 42.4468085106383%; +} +.note-editor .row-fluid .offset4 { + margin-left: 36.170212765957444%; + *margin-left: 36.06382978723405%; +} +.note-editor .row-fluid .offset4:first-child { + margin-left: 34.04255319148936%; + *margin-left: 33.93617021276596%; +} +.note-editor .row-fluid .offset3 { + margin-left: 27.659574468085104%; + *margin-left: 27.5531914893617%; +} +.note-editor .row-fluid .offset3:first-child { + margin-left: 25.53191489361702%; + *margin-left: 25.425531914893618%; +} +.note-editor .row-fluid .offset2 { + margin-left: 19.148936170212764%; + *margin-left: 19.04255319148936%; +} +.note-editor .row-fluid .offset2:first-child { + margin-left: 17.02127659574468%; + *margin-left: 16.914893617021278%; +} +.note-editor .row-fluid .offset1 { + margin-left: 10.638297872340425%; + *margin-left: 10.53191489361702%; +} +.note-editor .row-fluid .offset1:first-child { + margin-left: 8.51063829787234%; + *margin-left: 8.404255319148938%; +} +.note-editor [class*="span"].hide, +.note-editor .row-fluid [class*="span"].hide { + display: none; +} +.note-editor [class*="span"].pull-right, +.note-editor .row-fluid [class*="span"].pull-right { + float: right; +} +.note-editor .container { + margin-right: auto; + margin-left: auto; + *zoom: 1; +} +.note-editor .container:before, +.note-editor .container:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .container:after { + clear: both; +} +.note-editor .container-fluid { + padding-right: 20px; + padding-left: 20px; + *zoom: 1; +} +.note-editor .container-fluid:before, +.note-editor .container-fluid:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .container-fluid:after { + clear: both; +} +.note-editor p { + margin: 0 0 10px; +} +.note-editor .lead { + margin-bottom: 20px; + font-size: 21px; + font-weight: 200; + line-height: 30px; +} +.note-editor small { + font-size: 85%; +} +.note-editor strong { + font-weight: bold; +} +.note-editor em { + font-style: italic; +} +.note-editor cite { + font-style: normal; +} +.note-editor .muted { + color: #999999; +} +.note-editor a.muted:hover, +.note-editor a.muted:focus { + color: #808080; +} +.note-editor .text-warning { + color: #c09853; +} +.note-editor a.text-warning:hover, +.note-editor a.text-warning:focus { + color: #a47e3c; +} +.note-editor .text-error { + color: #b94a48; +} +.note-editor a.text-error:hover, +.note-editor a.text-error:focus { + color: #953b39; +} +.note-editor .text-info { + color: #3a87ad; +} +.note-editor a.text-info:hover, +.note-editor a.text-info:focus { + color: #2d6987; +} +.note-editor .text-success { + color: #468847; +} +.note-editor a.text-success:hover, +.note-editor a.text-success:focus { + color: #356635; +} +.note-editor .text-left { + text-align: left; +} +.note-editor .text-right { + text-align: right; +} +.note-editor .text-center { + text-align: center; +} +.note-editor h1, +.note-editor h2, +.note-editor h3, +.note-editor h4, +.note-editor h5, +.note-editor h6 { + margin: 10px 0; + font-family: inherit; + font-weight: bold; + line-height: 20px; + color: inherit; + text-rendering: optimizelegibility; +} +.note-editor h1 small, +.note-editor h2 small, +.note-editor h3 small, +.note-editor h4 small, +.note-editor h5 small, +.note-editor h6 small { + font-weight: normal; + line-height: 1; + color: #999999; +} +.note-editor h1, +.note-editor h2, +.note-editor h3 { + line-height: 40px; +} +.note-editor h1 { + font-size: 38.5px; +} +.note-editor h2 { + font-size: 31.5px; +} +.note-editor h3 { + font-size: 24.5px; +} +.note-editor h4 { + font-size: 17.5px; +} +.note-editor h5 { + font-size: 14px; +} +.note-editor h6 { + font-size: 11.9px; +} +.note-editor h1 small { + font-size: 24.5px; +} +.note-editor h2 small { + font-size: 17.5px; +} +.note-editor h3 small { + font-size: 14px; +} +.note-editor h4 small { + font-size: 14px; +} +.note-editor .page-header { + padding-bottom: 9px; + margin: 20px 0 30px; + border-bottom: 1px solid #eeeeee; +} +.note-editor ul, +.note-editor ol { + padding: 0; + margin: 0 0 10px 25px; +} +.note-editor ul ul, +.note-editor ul ol, +.note-editor ol ol, +.note-editor ol ul { + margin-bottom: 0; +} +.note-editor li { + line-height: 20px; +} +.note-editor ul.unstyled, +.note-editor ol.unstyled { + margin-left: 0; + list-style: none; +} +.note-editor ul.inline, +.note-editor ol.inline { + margin-left: 0; + list-style: none; +} +.note-editor ul.inline > li, +.note-editor ol.inline > li { + display: inline-block; + *display: inline; + /* IE7 inline-block hack */ + + *zoom: 1; + padding-left: 5px; + padding-right: 5px; +} +.note-editor dl { + margin-bottom: 20px; +} +.note-editor dt, +.note-editor dd { + line-height: 20px; +} +.note-editor dt { + font-weight: bold; +} +.note-editor dd { + margin-left: 10px; +} +.note-editor .dl-horizontal { + *zoom: 1; +} +.note-editor .dl-horizontal:before, +.note-editor .dl-horizontal:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .dl-horizontal:after { + clear: both; +} +.note-editor .dl-horizontal dt { + float: left; + width: 160px; + clear: left; + text-align: right; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} +.note-editor .dl-horizontal dd { + margin-left: 180px; +} +.note-editor hr { + margin: 20px 0; + border: 0; + border-top: 1px solid #eeeeee; + border-bottom: 1px solid #ffffff; +} +.note-editor abbr[title], +.note-editor abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #999999; +} +.note-editor abbr.initialism { + font-size: 90%; + text-transform: uppercase; +} +.note-editor blockquote { + padding: 0 0 0 15px; + margin: 0 0 20px; + border-left: 5px solid #eeeeee; +} +.note-editor blockquote p { + margin-bottom: 0; + font-size: 17.5px; + font-weight: 300; + line-height: 1.25; +} +.note-editor blockquote small { + display: block; + line-height: 20px; + color: #999999; +} +.note-editor blockquote small:before { + content: '\2014 \00A0'; +} +.note-editor blockquote.pull-right { + float: right; + padding-right: 15px; + padding-left: 0; + border-right: 5px solid #eeeeee; + border-left: 0; +} +.note-editor blockquote.pull-right p, +.note-editor blockquote.pull-right small { + text-align: right; +} +.note-editor blockquote.pull-right small:before { + content: ''; +} +.note-editor blockquote.pull-right small:after { + content: '\00A0 \2014'; +} +.note-editor q:before, +.note-editor q:after, +.note-editor blockquote:before, +.note-editor blockquote:after { + content: ""; +} +.note-editor address { + display: block; + margin-bottom: 20px; + font-style: normal; + line-height: 20px; +} +.note-editor code, +.note-editor pre { + padding: 0 3px 2px; + font-family: Monaco, Menlo, Consolas, "Courier New", monospace; + font-size: 12px; + color: #333333; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} +.note-editor code { + padding: 2px 4px; + color: #d14; + background-color: #f7f7f9; + border: 1px solid #e1e1e8; + white-space: nowrap; +} +.note-editor pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 20px; + word-break: break-all; + word-wrap: break-word; + white-space: pre; + white-space: pre-wrap; + background-color: #f5f5f5; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} +.note-editor pre.prettyprint { + margin-bottom: 20px; +} +.note-editor pre code { + padding: 0; + color: inherit; + white-space: pre; + white-space: pre-wrap; + background-color: transparent; + border: 0; +} +.note-editor .pre-scrollable { + max-height: 340px; + overflow-y: scroll; +} +.note-editor form { + margin: 0 0 20px; +} +.note-editor fieldset { + padding: 0; + margin: 0; + border: 0; +} +.note-editor legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: 40px; + color: #333333; + border: 0; + border-bottom: 1px solid #e5e5e5; +} +.note-editor legend small { + font-size: 15px; + color: #999999; +} +.note-editor label, +.note-editor input, +.note-editor button, +.note-editor select, +.note-editor textarea { + font-size: 14px; + font-weight: normal; + line-height: 20px; +} +.note-editor input, +.note-editor button, +.note-editor select, +.note-editor textarea { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; +} +.note-editor label { + display: block; + margin-bottom: 5px; +} +.note-editor select, +.note-editor textarea, +.note-editor input[type="text"], +.note-editor input[type="password"], +.note-editor input[type="datetime"], +.note-editor input[type="datetime-local"], +.note-editor input[type="date"], +.note-editor input[type="month"], +.note-editor input[type="time"], +.note-editor input[type="week"], +.note-editor input[type="number"], +.note-editor input[type="email"], +.note-editor input[type="url"], +.note-editor input[type="search"], +.note-editor input[type="tel"], +.note-editor input[type="color"], +.note-editor .uneditable-input { + display: inline-block; + height: 20px; + padding: 4px 6px; + margin-bottom: 10px; + font-size: 14px; + line-height: 20px; + color: #555555; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + vertical-align: middle; +} +.note-editor input, +.note-editor textarea, +.note-editor .uneditable-input { + width: 206px; +} +.note-editor textarea { + height: auto; +} +.note-editor textarea, +.note-editor input[type="text"], +.note-editor input[type="password"], +.note-editor input[type="datetime"], +.note-editor input[type="datetime-local"], +.note-editor input[type="date"], +.note-editor input[type="month"], +.note-editor input[type="time"], +.note-editor input[type="week"], +.note-editor input[type="number"], +.note-editor input[type="email"], +.note-editor input[type="url"], +.note-editor input[type="search"], +.note-editor input[type="tel"], +.note-editor input[type="color"], +.note-editor .uneditable-input { + background-color: #ffffff; + border: 1px solid #cccccc; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -webkit-transition: border linear .2s, box-shadow linear .2s; + -moz-transition: border linear .2s, box-shadow linear .2s; + -o-transition: border linear .2s, box-shadow linear .2s; + transition: border linear .2s, box-shadow linear .2s; +} +.note-editor textarea:focus, +.note-editor input[type="text"]:focus, +.note-editor input[type="password"]:focus, +.note-editor input[type="datetime"]:focus, +.note-editor input[type="datetime-local"]:focus, +.note-editor input[type="date"]:focus, +.note-editor input[type="month"]:focus, +.note-editor input[type="time"]:focus, +.note-editor input[type="week"]:focus, +.note-editor input[type="number"]:focus, +.note-editor input[type="email"]:focus, +.note-editor input[type="url"]:focus, +.note-editor input[type="search"]:focus, +.note-editor input[type="tel"]:focus, +.note-editor input[type="color"]:focus, +.note-editor .uneditable-input:focus { + border-color: rgba(82, 168, 236, 0.8); + outline: 0; + outline: thin dotted \9; + /* IE6-9 */ + + -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6); + -moz-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6); +} +.note-editor input[type="radio"], +.note-editor input[type="checkbox"] { + margin: 4px 0 0; + *margin-top: 0; + /* IE7 */ + + margin-top: 1px \9; + /* IE8-9 */ + + line-height: normal; +} +.note-editor input[type="file"], +.note-editor input[type="image"], +.note-editor input[type="submit"], +.note-editor input[type="reset"], +.note-editor input[type="button"], +.note-editor input[type="radio"], +.note-editor input[type="checkbox"] { + width: auto; +} +.note-editor select, +.note-editor input[type="file"] { + height: 30px; + /* In IE7, the height of the select element cannot be changed by height, only font-size */ + + *margin-top: 4px; + /* For IE7, add top margin to align select with labels */ + + line-height: 30px; +} +.note-editor select { + width: 220px; + border: 1px solid #cccccc; + background-color: #ffffff; +} +.note-editor select[multiple], +.note-editor select[size] { + height: auto; +} +.note-editor select:focus, +.note-editor input[type="file"]:focus, +.note-editor input[type="radio"]:focus, +.note-editor input[type="checkbox"]:focus { + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.note-editor .uneditable-input, +.note-editor .uneditable-textarea { + color: #999999; + background-color: #fcfcfc; + border-color: #cccccc; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); + -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); + cursor: not-allowed; +} +.note-editor .uneditable-input { + overflow: hidden; + white-space: nowrap; +} +.note-editor .uneditable-textarea { + width: auto; + height: auto; +} +.note-editor input:-moz-placeholder, +.note-editor textarea:-moz-placeholder { + color: #999999; +} +.note-editor input:-ms-input-placeholder, +.note-editor textarea:-ms-input-placeholder { + color: #999999; +} +.note-editor input::-webkit-input-placeholder, +.note-editor textarea::-webkit-input-placeholder { + color: #999999; +} +.note-editor .radio, +.note-editor .checkbox { + min-height: 20px; + padding-left: 20px; +} +.note-editor .radio input[type="radio"], +.note-editor .checkbox input[type="checkbox"] { + float: left; + margin-left: -20px; +} +.note-editor .controls > .radio:first-child, +.note-editor .controls > .checkbox:first-child { + padding-top: 5px; +} +.note-editor .radio.inline, +.note-editor .checkbox.inline { + display: inline-block; + padding-top: 5px; + margin-bottom: 0; + vertical-align: middle; +} +.note-editor .radio.inline + .radio.inline, +.note-editor .checkbox.inline + .checkbox.inline { + margin-left: 10px; +} +.note-editor .input-mini { + width: 60px; +} +.note-editor .input-small { + width: 90px; +} +.note-editor .input-medium { + width: 150px; +} +.note-editor .input-large { + width: 210px; +} +.note-editor .input-xlarge { + width: 270px; +} +.note-editor .input-xxlarge { + width: 530px; +} +.note-editor input[class*="span"], +.note-editor select[class*="span"], +.note-editor textarea[class*="span"], +.note-editor .uneditable-input[class*="span"], +.note-editor .row-fluid input[class*="span"], +.note-editor .row-fluid select[class*="span"], +.note-editor .row-fluid textarea[class*="span"], +.note-editor .row-fluid .uneditable-input[class*="span"] { + float: none; + margin-left: 0; +} +.note-editor .input-append input[class*="span"], +.note-editor .input-append .uneditable-input[class*="span"], +.note-editor .input-prepend input[class*="span"], +.note-editor .input-prepend .uneditable-input[class*="span"], +.note-editor .row-fluid input[class*="span"], +.note-editor .row-fluid select[class*="span"], +.note-editor .row-fluid textarea[class*="span"], +.note-editor .row-fluid .uneditable-input[class*="span"], +.note-editor .row-fluid .input-prepend [class*="span"], +.note-editor .row-fluid .input-append [class*="span"] { + display: inline-block; +} +.note-editor input, +.note-editor textarea, +.note-editor .uneditable-input { + margin-left: 0; +} +.note-editor .controls-row [class*="span"] + [class*="span"] { + margin-left: 20px; +} +.note-editor input.span12, +.note-editor textarea.span12, +.note-editor .uneditable-input.span12 { + width: 926px; +} +.note-editor input.span11, +.note-editor textarea.span11, +.note-editor .uneditable-input.span11 { + width: 846px; +} +.note-editor input.span10, +.note-editor textarea.span10, +.note-editor .uneditable-input.span10 { + width: 766px; +} +.note-editor input.span9, +.note-editor textarea.span9, +.note-editor .uneditable-input.span9 { + width: 686px; +} +.note-editor input.span8, +.note-editor textarea.span8, +.note-editor .uneditable-input.span8 { + width: 606px; +} +.note-editor input.span7, +.note-editor textarea.span7, +.note-editor .uneditable-input.span7 { + width: 526px; +} +.note-editor input.span6, +.note-editor textarea.span6, +.note-editor .uneditable-input.span6 { + width: 446px; +} +.note-editor input.span5, +.note-editor textarea.span5, +.note-editor .uneditable-input.span5 { + width: 366px; +} +.note-editor input.span4, +.note-editor textarea.span4, +.note-editor .uneditable-input.span4 { + width: 286px; +} +.note-editor input.span3, +.note-editor textarea.span3, +.note-editor .uneditable-input.span3 { + width: 206px; +} +.note-editor input.span2, +.note-editor textarea.span2, +.note-editor .uneditable-input.span2 { + width: 126px; +} +.note-editor input.span1, +.note-editor textarea.span1, +.note-editor .uneditable-input.span1 { + width: 46px; +} +.note-editor .controls-row { + *zoom: 1; +} +.note-editor .controls-row:before, +.note-editor .controls-row:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .controls-row:after { + clear: both; +} +.note-editor .controls-row [class*="span"], +.note-editor .row-fluid .controls-row [class*="span"] { + float: left; +} +.note-editor .controls-row .checkbox[class*="span"], +.note-editor .controls-row .radio[class*="span"] { + padding-top: 5px; +} +.note-editor input[disabled], +.note-editor select[disabled], +.note-editor textarea[disabled], +.note-editor input[readonly], +.note-editor select[readonly], +.note-editor textarea[readonly] { + cursor: not-allowed; + background-color: #eeeeee; +} +.note-editor input[type="radio"][disabled], +.note-editor input[type="checkbox"][disabled], +.note-editor input[type="radio"][readonly], +.note-editor input[type="checkbox"][readonly] { + background-color: transparent; +} +.note-editor .control-group.warning .control-label, +.note-editor .control-group.warning .help-block, +.note-editor .control-group.warning .help-inline { + color: #c09853; +} +.note-editor .control-group.warning .checkbox, +.note-editor .control-group.warning .radio, +.note-editor .control-group.warning input, +.note-editor .control-group.warning select, +.note-editor .control-group.warning textarea { + color: #c09853; +} +.note-editor .control-group.warning input, +.note-editor .control-group.warning select, +.note-editor .control-group.warning textarea { + border-color: #c09853; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.note-editor .control-group.warning input:focus, +.note-editor .control-group.warning select:focus, +.note-editor .control-group.warning textarea:focus { + border-color: #a47e3c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; +} +.note-editor .control-group.warning .input-prepend .add-on, +.note-editor .control-group.warning .input-append .add-on { + color: #c09853; + background-color: #fcf8e3; + border-color: #c09853; +} +.note-editor .control-group.error .control-label, +.note-editor .control-group.error .help-block, +.note-editor .control-group.error .help-inline { + color: #b94a48; +} +.note-editor .control-group.error .checkbox, +.note-editor .control-group.error .radio, +.note-editor .control-group.error input, +.note-editor .control-group.error select, +.note-editor .control-group.error textarea { + color: #b94a48; +} +.note-editor .control-group.error input, +.note-editor .control-group.error select, +.note-editor .control-group.error textarea { + border-color: #b94a48; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.note-editor .control-group.error input:focus, +.note-editor .control-group.error select:focus, +.note-editor .control-group.error textarea:focus { + border-color: #953b39; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; +} +.note-editor .control-group.error .input-prepend .add-on, +.note-editor .control-group.error .input-append .add-on { + color: #b94a48; + background-color: #f2dede; + border-color: #b94a48; +} +.note-editor .control-group.success .control-label, +.note-editor .control-group.success .help-block, +.note-editor .control-group.success .help-inline { + color: #468847; +} +.note-editor .control-group.success .checkbox, +.note-editor .control-group.success .radio, +.note-editor .control-group.success input, +.note-editor .control-group.success select, +.note-editor .control-group.success textarea { + color: #468847; +} +.note-editor .control-group.success input, +.note-editor .control-group.success select, +.note-editor .control-group.success textarea { + border-color: #468847; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.note-editor .control-group.success input:focus, +.note-editor .control-group.success select:focus, +.note-editor .control-group.success textarea:focus { + border-color: #356635; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; +} +.note-editor .control-group.success .input-prepend .add-on, +.note-editor .control-group.success .input-append .add-on { + color: #468847; + background-color: #dff0d8; + border-color: #468847; +} +.note-editor .control-group.info .control-label, +.note-editor .control-group.info .help-block, +.note-editor .control-group.info .help-inline { + color: #3a87ad; +} +.note-editor .control-group.info .checkbox, +.note-editor .control-group.info .radio, +.note-editor .control-group.info input, +.note-editor .control-group.info select, +.note-editor .control-group.info textarea { + color: #3a87ad; +} +.note-editor .control-group.info input, +.note-editor .control-group.info select, +.note-editor .control-group.info textarea { + border-color: #3a87ad; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.note-editor .control-group.info input:focus, +.note-editor .control-group.info select:focus, +.note-editor .control-group.info textarea:focus { + border-color: #2d6987; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3; + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3; +} +.note-editor .control-group.info .input-prepend .add-on, +.note-editor .control-group.info .input-append .add-on { + color: #3a87ad; + background-color: #d9edf7; + border-color: #3a87ad; +} +.note-editor input:focus:invalid, +.note-editor textarea:focus:invalid, +.note-editor select:focus:invalid { + color: #b94a48; + border-color: #ee5f5b; +} +.note-editor input:focus:invalid:focus, +.note-editor textarea:focus:invalid:focus, +.note-editor select:focus:invalid:focus { + border-color: #e9322d; + -webkit-box-shadow: 0 0 6px #f8b9b7; + -moz-box-shadow: 0 0 6px #f8b9b7; + box-shadow: 0 0 6px #f8b9b7; +} +.note-editor .form-actions { + padding: 19px 20px 20px; + margin-top: 20px; + margin-bottom: 20px; + background-color: #f5f5f5; + border-top: 1px solid #e5e5e5; + *zoom: 1; +} +.note-editor .form-actions:before, +.note-editor .form-actions:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .form-actions:after { + clear: both; +} +.note-editor .help-block, +.note-editor .help-inline { + color: #595959; +} +.note-editor .help-block { + display: block; + margin-bottom: 10px; +} +.note-editor .help-inline { + display: inline-block; + *display: inline; + /* IE7 inline-block hack */ + + *zoom: 1; + vertical-align: middle; + padding-left: 5px; +} +.note-editor .input-append, +.note-editor .input-prepend { + display: inline-block; + margin-bottom: 10px; + vertical-align: middle; + font-size: 0; + white-space: nowrap; +} +.note-editor .input-append input, +.note-editor .input-prepend input, +.note-editor .input-append select, +.note-editor .input-prepend select, +.note-editor .input-append .uneditable-input, +.note-editor .input-prepend .uneditable-input, +.note-editor .input-append .dropdown-menu, +.note-editor .input-prepend .dropdown-menu, +.note-editor .input-append .popover, +.note-editor .input-prepend .popover { + font-size: 14px; +} +.note-editor .input-append input, +.note-editor .input-prepend input, +.note-editor .input-append select, +.note-editor .input-prepend select, +.note-editor .input-append .uneditable-input, +.note-editor .input-prepend .uneditable-input { + position: relative; + margin-bottom: 0; + *margin-left: 0; + vertical-align: top; + -webkit-border-radius: 0 4px 4px 0; + -moz-border-radius: 0 4px 4px 0; + border-radius: 0 4px 4px 0; +} +.note-editor .input-append input:focus, +.note-editor .input-prepend input:focus, +.note-editor .input-append select:focus, +.note-editor .input-prepend select:focus, +.note-editor .input-append .uneditable-input:focus, +.note-editor .input-prepend .uneditable-input:focus { + z-index: 2; +} +.note-editor .input-append .add-on, +.note-editor .input-prepend .add-on { + display: inline-block; + width: auto; + height: 20px; + min-width: 16px; + padding: 4px 5px; + font-size: 14px; + font-weight: normal; + line-height: 20px; + text-align: center; + text-shadow: 0 1px 0 #ffffff; + background-color: #eeeeee; + border: 1px solid #ccc; +} +.note-editor .input-append .add-on, +.note-editor .input-prepend .add-on, +.note-editor .input-append .btn, +.note-editor .input-prepend .btn, +.note-editor .input-append .btn-group > .dropdown-toggle, +.note-editor .input-prepend .btn-group > .dropdown-toggle { + vertical-align: top; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} +.note-editor .input-append .active, +.note-editor .input-prepend .active { + background-color: #a9dba9; + border-color: #46a546; +} +.note-editor .input-prepend .add-on, +.note-editor .input-prepend .btn { + margin-right: -1px; +} +.note-editor .input-prepend .add-on:first-child, +.note-editor .input-prepend .btn:first-child { + -webkit-border-radius: 4px 0 0 4px; + -moz-border-radius: 4px 0 0 4px; + border-radius: 4px 0 0 4px; +} +.note-editor .input-append input, +.note-editor .input-append select, +.note-editor .input-append .uneditable-input { + -webkit-border-radius: 4px 0 0 4px; + -moz-border-radius: 4px 0 0 4px; + border-radius: 4px 0 0 4px; +} +.note-editor .input-append input + .btn-group .btn:last-child, +.note-editor .input-append select + .btn-group .btn:last-child, +.note-editor .input-append .uneditable-input + .btn-group .btn:last-child { + -webkit-border-radius: 0 4px 4px 0; + -moz-border-radius: 0 4px 4px 0; + border-radius: 0 4px 4px 0; +} +.note-editor .input-append .add-on, +.note-editor .input-append .btn, +.note-editor .input-append .btn-group { + margin-left: -1px; +} +.note-editor .input-append .add-on:last-child, +.note-editor .input-append .btn:last-child, +.note-editor .input-append .btn-group:last-child > .dropdown-toggle { + -webkit-border-radius: 0 4px 4px 0; + -moz-border-radius: 0 4px 4px 0; + border-radius: 0 4px 4px 0; +} +.note-editor .input-prepend.input-append input, +.note-editor .input-prepend.input-append select, +.note-editor .input-prepend.input-append .uneditable-input { + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} +.note-editor .input-prepend.input-append input + .btn-group .btn, +.note-editor .input-prepend.input-append select + .btn-group .btn, +.note-editor .input-prepend.input-append .uneditable-input + .btn-group .btn { + -webkit-border-radius: 0 4px 4px 0; + -moz-border-radius: 0 4px 4px 0; + border-radius: 0 4px 4px 0; +} +.note-editor .input-prepend.input-append .add-on:first-child, +.note-editor .input-prepend.input-append .btn:first-child { + margin-right: -1px; + -webkit-border-radius: 4px 0 0 4px; + -moz-border-radius: 4px 0 0 4px; + border-radius: 4px 0 0 4px; +} +.note-editor .input-prepend.input-append .add-on:last-child, +.note-editor .input-prepend.input-append .btn:last-child { + margin-left: -1px; + -webkit-border-radius: 0 4px 4px 0; + -moz-border-radius: 0 4px 4px 0; + border-radius: 0 4px 4px 0; +} +.note-editor .input-prepend.input-append .btn-group:first-child { + margin-left: 0; +} +.note-editor input.search-query { + padding-right: 14px; + padding-right: 4px \9; + padding-left: 14px; + padding-left: 4px \9; + /* IE7-8 doesn't have border-radius, so don't indent the padding */ + + margin-bottom: 0; + -webkit-border-radius: 15px; + -moz-border-radius: 15px; + border-radius: 15px; +} +.note-editor .form-search .input-append .search-query, +.note-editor .form-search .input-prepend .search-query { + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} +.note-editor .form-search .input-append .search-query { + -webkit-border-radius: 14px 0 0 14px; + -moz-border-radius: 14px 0 0 14px; + border-radius: 14px 0 0 14px; +} +.note-editor .form-search .input-append .btn { + -webkit-border-radius: 0 14px 14px 0; + -moz-border-radius: 0 14px 14px 0; + border-radius: 0 14px 14px 0; +} +.note-editor .form-search .input-prepend .search-query { + -webkit-border-radius: 0 14px 14px 0; + -moz-border-radius: 0 14px 14px 0; + border-radius: 0 14px 14px 0; +} +.note-editor .form-search .input-prepend .btn { + -webkit-border-radius: 14px 0 0 14px; + -moz-border-radius: 14px 0 0 14px; + border-radius: 14px 0 0 14px; +} +.note-editor .form-search input, +.note-editor .form-inline input, +.note-editor .form-horizontal input, +.note-editor .form-search textarea, +.note-editor .form-inline textarea, +.note-editor .form-horizontal textarea, +.note-editor .form-search select, +.note-editor .form-inline select, +.note-editor .form-horizontal select, +.note-editor .form-search .help-inline, +.note-editor .form-inline .help-inline, +.note-editor .form-horizontal .help-inline, +.note-editor .form-search .uneditable-input, +.note-editor .form-inline .uneditable-input, +.note-editor .form-horizontal .uneditable-input, +.note-editor .form-search .input-prepend, +.note-editor .form-inline .input-prepend, +.note-editor .form-horizontal .input-prepend, +.note-editor .form-search .input-append, +.note-editor .form-inline .input-append, +.note-editor .form-horizontal .input-append { + display: inline-block; + *display: inline; + /* IE7 inline-block hack */ + + *zoom: 1; + margin-bottom: 0; + vertical-align: middle; +} +.note-editor .form-search .hide, +.note-editor .form-inline .hide, +.note-editor .form-horizontal .hide { + display: none; +} +.note-editor .form-search label, +.note-editor .form-inline label, +.note-editor .form-search .btn-group, +.note-editor .form-inline .btn-group { + display: inline-block; +} +.note-editor .form-search .input-append, +.note-editor .form-inline .input-append, +.note-editor .form-search .input-prepend, +.note-editor .form-inline .input-prepend { + margin-bottom: 0; +} +.note-editor .form-search .radio, +.note-editor .form-search .checkbox, +.note-editor .form-inline .radio, +.note-editor .form-inline .checkbox { + padding-left: 0; + margin-bottom: 0; + vertical-align: middle; +} +.note-editor .form-search .radio input[type="radio"], +.note-editor .form-search .checkbox input[type="checkbox"], +.note-editor .form-inline .radio input[type="radio"], +.note-editor .form-inline .checkbox input[type="checkbox"] { + float: left; + margin-right: 3px; + margin-left: 0; +} +.note-editor .control-group { + margin-bottom: 10px; +} +.note-editor legend + .control-group { + margin-top: 20px; + -webkit-margin-top-collapse: separate; +} +.note-editor .form-horizontal .control-group { + margin-bottom: 20px; + *zoom: 1; +} +.note-editor .form-horizontal .control-group:before, +.note-editor .form-horizontal .control-group:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .form-horizontal .control-group:after { + clear: both; +} +.note-editor .form-horizontal .control-label { + float: left; + width: 160px; + padding-top: 5px; + text-align: right; +} +.note-editor .form-horizontal .controls { + *display: inline-block; + *padding-left: 20px; + margin-left: 180px; + *margin-left: 0; +} +.note-editor .form-horizontal .controls:first-child { + *padding-left: 180px; +} +.note-editor .form-horizontal .help-block { + margin-bottom: 0; +} +.note-editor .form-horizontal input + .help-block, +.note-editor .form-horizontal select + .help-block, +.note-editor .form-horizontal textarea + .help-block, +.note-editor .form-horizontal .uneditable-input + .help-block, +.note-editor .form-horizontal .input-prepend + .help-block, +.note-editor .form-horizontal .input-append + .help-block { + margin-top: 10px; +} +.note-editor .form-horizontal .form-actions { + padding-left: 180px; +} +.note-editor table { + max-width: 100%; + background-color: transparent; + border-collapse: collapse; + border-spacing: 0; +} +.note-editor .table { + width: 100%; + margin-bottom: 20px; +} +.note-editor .table th, +.note-editor .table td { + padding: 8px; + line-height: 20px; + text-align: left; + vertical-align: top; + border-top: 1px solid #dddddd; +} +.note-editor .table th { + font-weight: bold; +} +.note-editor .table thead th { + vertical-align: bottom; +} +.note-editor .table caption + thead tr:first-child th, +.note-editor .table caption + thead tr:first-child td, +.note-editor .table colgroup + thead tr:first-child th, +.note-editor .table colgroup + thead tr:first-child td, +.note-editor .table thead:first-child tr:first-child th, +.note-editor .table thead:first-child tr:first-child td { + border-top: 0; +} +.note-editor .table tbody + tbody { + border-top: 2px solid #dddddd; +} +.note-editor .table .table { + background-color: #ffffff; +} +.note-editor .table-condensed th, +.note-editor .table-condensed td { + padding: 4px 5px; +} +.note-editor .table-bordered { + border: 1px solid #dddddd; + border-collapse: separate; + *border-collapse: collapse; + border-left: 0; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} +.note-editor .table-bordered th, +.note-editor .table-bordered td { + border-left: 1px solid #dddddd; +} +.note-editor .table-bordered caption + thead tr:first-child th, +.note-editor .table-bordered caption + tbody tr:first-child th, +.note-editor .table-bordered caption + tbody tr:first-child td, +.note-editor .table-bordered colgroup + thead tr:first-child th, +.note-editor .table-bordered colgroup + tbody tr:first-child th, +.note-editor .table-bordered colgroup + tbody tr:first-child td, +.note-editor .table-bordered thead:first-child tr:first-child th, +.note-editor .table-bordered tbody:first-child tr:first-child th, +.note-editor .table-bordered tbody:first-child tr:first-child td { + border-top: 0; +} +.note-editor .table-bordered thead:first-child tr:first-child > th:first-child, +.note-editor .table-bordered tbody:first-child tr:first-child > td:first-child, +.note-editor .table-bordered tbody:first-child tr:first-child > th:first-child { + -webkit-border-top-left-radius: 4px; + -moz-border-radius-topleft: 4px; + border-top-left-radius: 4px; +} +.note-editor .table-bordered thead:first-child tr:first-child > th:last-child, +.note-editor .table-bordered tbody:first-child tr:first-child > td:last-child, +.note-editor .table-bordered tbody:first-child tr:first-child > th:last-child { + -webkit-border-top-right-radius: 4px; + -moz-border-radius-topright: 4px; + border-top-right-radius: 4px; +} +.note-editor .table-bordered thead:last-child tr:last-child > th:first-child, +.note-editor .table-bordered tbody:last-child tr:last-child > td:first-child, +.note-editor .table-bordered tbody:last-child tr:last-child > th:first-child, +.note-editor .table-bordered tfoot:last-child tr:last-child > td:first-child, +.note-editor .table-bordered tfoot:last-child tr:last-child > th:first-child { + -webkit-border-bottom-left-radius: 4px; + -moz-border-radius-bottomleft: 4px; + border-bottom-left-radius: 4px; +} +.note-editor .table-bordered thead:last-child tr:last-child > th:last-child, +.note-editor .table-bordered tbody:last-child tr:last-child > td:last-child, +.note-editor .table-bordered tbody:last-child tr:last-child > th:last-child, +.note-editor .table-bordered tfoot:last-child tr:last-child > td:last-child, +.note-editor .table-bordered tfoot:last-child tr:last-child > th:last-child { + -webkit-border-bottom-right-radius: 4px; + -moz-border-radius-bottomright: 4px; + border-bottom-right-radius: 4px; +} +.note-editor .table-bordered tfoot + tbody:last-child tr:last-child td:first-child { + -webkit-border-bottom-left-radius: 0; + -moz-border-radius-bottomleft: 0; + border-bottom-left-radius: 0; +} +.note-editor .table-bordered tfoot + tbody:last-child tr:last-child td:last-child { + -webkit-border-bottom-right-radius: 0; + -moz-border-radius-bottomright: 0; + border-bottom-right-radius: 0; +} +.note-editor .table-bordered caption + thead tr:first-child th:first-child, +.note-editor .table-bordered caption + tbody tr:first-child td:first-child, +.note-editor .table-bordered colgroup + thead tr:first-child th:first-child, +.note-editor .table-bordered colgroup + tbody tr:first-child td:first-child { + -webkit-border-top-left-radius: 4px; + -moz-border-radius-topleft: 4px; + border-top-left-radius: 4px; +} +.note-editor .table-bordered caption + thead tr:first-child th:last-child, +.note-editor .table-bordered caption + tbody tr:first-child td:last-child, +.note-editor .table-bordered colgroup + thead tr:first-child th:last-child, +.note-editor .table-bordered colgroup + tbody tr:first-child td:last-child { + -webkit-border-top-right-radius: 4px; + -moz-border-radius-topright: 4px; + border-top-right-radius: 4px; +} +.note-editor .table-striped tbody > tr:nth-child(odd) > td, +.note-editor .table-striped tbody > tr:nth-child(odd) > th { + background-color: #f9f9f9; +} +.note-editor .table-hover tbody tr:hover > td, +.note-editor .table-hover tbody tr:hover > th { + background-color: #f5f5f5; +} +.note-editor table td[class*="span"], +.note-editor table th[class*="span"], +.note-editor .row-fluid table td[class*="span"], +.note-editor .row-fluid table th[class*="span"] { + display: table-cell; + float: none; + margin-left: 0; +} +.note-editor .table td.span1, +.note-editor .table th.span1 { + float: none; + width: 44px; + margin-left: 0; +} +.note-editor .table td.span2, +.note-editor .table th.span2 { + float: none; + width: 124px; + margin-left: 0; +} +.note-editor .table td.span3, +.note-editor .table th.span3 { + float: none; + width: 204px; + margin-left: 0; +} +.note-editor .table td.span4, +.note-editor .table th.span4 { + float: none; + width: 284px; + margin-left: 0; +} +.note-editor .table td.span5, +.note-editor .table th.span5 { + float: none; + width: 364px; + margin-left: 0; +} +.note-editor .table td.span6, +.note-editor .table th.span6 { + float: none; + width: 444px; + margin-left: 0; +} +.note-editor .table td.span7, +.note-editor .table th.span7 { + float: none; + width: 524px; + margin-left: 0; +} +.note-editor .table td.span8, +.note-editor .table th.span8 { + float: none; + width: 604px; + margin-left: 0; +} +.note-editor .table td.span9, +.note-editor .table th.span9 { + float: none; + width: 684px; + margin-left: 0; +} +.note-editor .table td.span10, +.note-editor .table th.span10 { + float: none; + width: 764px; + margin-left: 0; +} +.note-editor .table td.span11, +.note-editor .table th.span11 { + float: none; + width: 844px; + margin-left: 0; +} +.note-editor .table td.span12, +.note-editor .table th.span12 { + float: none; + width: 924px; + margin-left: 0; +} +.note-editor .table tbody tr.success > td { + background-color: #dff0d8; +} +.note-editor .table tbody tr.error > td { + background-color: #f2dede; +} +.note-editor .table tbody tr.warning > td { + background-color: #fcf8e3; +} +.note-editor .table tbody tr.info > td { + background-color: #d9edf7; +} +.note-editor .table-hover tbody tr.success:hover > td { + background-color: #d0e9c6; +} +.note-editor .table-hover tbody tr.error:hover > td { + background-color: #ebcccc; +} +.note-editor .table-hover tbody tr.warning:hover > td { + background-color: #faf2cc; +} +.note-editor .table-hover tbody tr.info:hover > td { + background-color: #c4e3f3; +} +.note-editor [class^="icon-"], +.note-editor [class*=" icon-"] { + display: inline-block; + width: 14px; + height: 14px; + *margin-right: .3em; + line-height: 14px; + vertical-align: text-top; + background-image: url("../img/glyphicons-halflings.png"); + background-position: 14px 14px; + background-repeat: no-repeat; + margin-top: 1px; +} +.note-editor .icon-white, +.note-editor .nav-pills > .active > a > [class^="icon-"], +.note-editor .nav-pills > .active > a > [class*=" icon-"], +.note-editor .nav-list > .active > a > [class^="icon-"], +.note-editor .nav-list > .active > a > [class*=" icon-"], +.note-editor .navbar-inverse .nav > .active > a > [class^="icon-"], +.note-editor .navbar-inverse .nav > .active > a > [class*=" icon-"], +.note-editor .dropdown-menu > li > a:hover > [class^="icon-"], +.note-editor .dropdown-menu > li > a:focus > [class^="icon-"], +.note-editor .dropdown-menu > li > a:hover > [class*=" icon-"], +.note-editor .dropdown-menu > li > a:focus > [class*=" icon-"], +.note-editor .dropdown-menu > .active > a > [class^="icon-"], +.note-editor .dropdown-menu > .active > a > [class*=" icon-"], +.note-editor .dropdown-submenu:hover > a > [class^="icon-"], +.note-editor .dropdown-submenu:focus > a > [class^="icon-"], +.note-editor .dropdown-submenu:hover > a > [class*=" icon-"], +.note-editor .dropdown-submenu:focus > a > [class*=" icon-"] { + background-image: url("../img/glyphicons-halflings-white.png"); +} +.note-editor .icon-glass { + background-position: 0 0; +} +.note-editor .icon-music { + background-position: -24px 0; +} +.note-editor .icon-search { + background-position: -48px 0; +} +.note-editor .icon-envelope { + background-position: -72px 0; +} +.note-editor .icon-heart { + background-position: -96px 0; +} +.note-editor .icon-star { + background-position: -120px 0; +} +.note-editor .icon-star-empty { + background-position: -144px 0; +} +.note-editor .icon-user { + background-position: -168px 0; +} +.note-editor .icon-film { + background-position: -192px 0; +} +.note-editor .icon-th-large { + background-position: -216px 0; +} +.note-editor .icon-th { + background-position: -240px 0; +} +.note-editor .icon-th-list { + background-position: -264px 0; +} +.note-editor .icon-ok { + background-position: -288px 0; +} +.note-editor .icon-remove { + background-position: -312px 0; +} +.note-editor .icon-zoom-in { + background-position: -336px 0; +} +.note-editor .icon-zoom-out { + background-position: -360px 0; +} +.note-editor .icon-off { + background-position: -384px 0; +} +.note-editor .icon-signal { + background-position: -408px 0; +} +.note-editor .icon-cog { + background-position: -432px 0; +} +.note-editor .icon-trash { + background-position: -456px 0; +} +.note-editor .icon-home { + background-position: 0 -24px; +} +.note-editor .icon-file { + background-position: -24px -24px; +} +.note-editor .icon-time { + background-position: -48px -24px; +} +.note-editor .icon-road { + background-position: -72px -24px; +} +.note-editor .icon-download-alt { + background-position: -96px -24px; +} +.note-editor .icon-download { + background-position: -120px -24px; +} +.note-editor .icon-upload { + background-position: -144px -24px; +} +.note-editor .icon-inbox { + background-position: -168px -24px; +} +.note-editor .icon-play-circle { + background-position: -192px -24px; +} +.note-editor .icon-repeat { + background-position: -216px -24px; +} +.note-editor .icon-refresh { + background-position: -240px -24px; +} +.note-editor .icon-list-alt { + background-position: -264px -24px; +} +.note-editor .icon-lock { + background-position: -287px -24px; +} +.note-editor .icon-flag { + background-position: -312px -24px; +} +.note-editor .icon-headphones { + background-position: -336px -24px; +} +.note-editor .icon-volume-off { + background-position: -360px -24px; +} +.note-editor .icon-volume-down { + background-position: -384px -24px; +} +.note-editor .icon-volume-up { + background-position: -408px -24px; +} +.note-editor .icon-qrcode { + background-position: -432px -24px; +} +.note-editor .icon-barcode { + background-position: -456px -24px; +} +.note-editor .icon-tag { + background-position: 0 -48px; +} +.note-editor .icon-tags { + background-position: -25px -48px; +} +.note-editor .icon-book { + background-position: -48px -48px; +} +.note-editor .icon-bookmark { + background-position: -72px -48px; +} +.note-editor .icon-print { + background-position: -96px -48px; +} +.note-editor .icon-camera { + background-position: -120px -48px; +} +.note-editor .icon-font { + background-position: -144px -48px; +} +.note-editor .icon-bold { + background-position: -167px -48px; +} +.note-editor .icon-italic { + background-position: -192px -48px; +} +.note-editor .icon-text-height { + background-position: -216px -48px; +} +.note-editor .icon-text-width { + background-position: -240px -48px; +} +.note-editor .icon-align-left { + background-position: -264px -48px; +} +.note-editor .icon-align-center { + background-position: -288px -48px; +} +.note-editor .icon-align-right { + background-position: -312px -48px; +} +.note-editor .icon-align-justify { + background-position: -336px -48px; +} +.note-editor .icon-list { + background-position: -360px -48px; +} +.note-editor .icon-indent-left { + background-position: -384px -48px; +} +.note-editor .icon-indent-right { + background-position: -408px -48px; +} +.note-editor .icon-facetime-video { + background-position: -432px -48px; +} +.note-editor .icon-picture { + background-position: -456px -48px; +} +.note-editor .icon-pencil { + background-position: 0 -72px; +} +.note-editor .icon-map-marker { + background-position: -24px -72px; +} +.note-editor .icon-adjust { + background-position: -48px -72px; +} +.note-editor .icon-tint { + background-position: -72px -72px; +} +.note-editor .icon-edit { + background-position: -96px -72px; +} +.note-editor .icon-share { + background-position: -120px -72px; +} +.note-editor .icon-check { + background-position: -144px -72px; +} +.note-editor .icon-move { + background-position: -168px -72px; +} +.note-editor .icon-step-backward { + background-position: -192px -72px; +} +.note-editor .icon-fast-backward { + background-position: -216px -72px; +} +.note-editor .icon-backward { + background-position: -240px -72px; +} +.note-editor .icon-play { + background-position: -264px -72px; +} +.note-editor .icon-pause { + background-position: -288px -72px; +} +.note-editor .icon-stop { + background-position: -312px -72px; +} +.note-editor .icon-forward { + background-position: -336px -72px; +} +.note-editor .icon-fast-forward { + background-position: -360px -72px; +} +.note-editor .icon-step-forward { + background-position: -384px -72px; +} +.note-editor .icon-eject { + background-position: -408px -72px; +} +.note-editor .icon-chevron-left { + background-position: -432px -72px; +} +.note-editor .icon-chevron-right { + background-position: -456px -72px; +} +.note-editor .icon-plus-sign { + background-position: 0 -96px; +} +.note-editor .icon-minus-sign { + background-position: -24px -96px; +} +.note-editor .icon-remove-sign { + background-position: -48px -96px; +} +.note-editor .icon-ok-sign { + background-position: -72px -96px; +} +.note-editor .icon-question-sign { + background-position: -96px -96px; +} +.note-editor .icon-info-sign { + background-position: -120px -96px; +} +.note-editor .icon-screenshot { + background-position: -144px -96px; +} +.note-editor .icon-remove-circle { + background-position: -168px -96px; +} +.note-editor .icon-ok-circle { + background-position: -192px -96px; +} +.note-editor .icon-ban-circle { + background-position: -216px -96px; +} +.note-editor .icon-arrow-left { + background-position: -240px -96px; +} +.note-editor .icon-arrow-right { + background-position: -264px -96px; +} +.note-editor .icon-arrow-up { + background-position: -289px -96px; +} +.note-editor .icon-arrow-down { + background-position: -312px -96px; +} +.note-editor .icon-share-alt { + background-position: -336px -96px; +} +.note-editor .icon-resize-full { + background-position: -360px -96px; +} +.note-editor .icon-resize-small { + background-position: -384px -96px; +} +.note-editor .icon-plus { + background-position: -408px -96px; +} +.note-editor .icon-minus { + background-position: -433px -96px; +} +.note-editor .icon-asterisk { + background-position: -456px -96px; +} +.note-editor .icon-exclamation-sign { + background-position: 0 -120px; +} +.note-editor .icon-gift { + background-position: -24px -120px; +} +.note-editor .icon-leaf { + background-position: -48px -120px; +} +.note-editor .icon-fire { + background-position: -72px -120px; +} +.note-editor .icon-eye-open { + background-position: -96px -120px; +} +.note-editor .icon-eye-close { + background-position: -120px -120px; +} +.note-editor .icon-warning-sign { + background-position: -144px -120px; +} +.note-editor .icon-plane { + background-position: -168px -120px; +} +.note-editor .icon-calendar { + background-position: -192px -120px; +} +.note-editor .icon-random { + background-position: -216px -120px; + width: 16px; +} +.note-editor .icon-comment { + background-position: -240px -120px; +} +.note-editor .icon-magnet { + background-position: -264px -120px; +} +.note-editor .icon-chevron-up { + background-position: -288px -120px; +} +.note-editor .icon-chevron-down { + background-position: -313px -119px; +} +.note-editor .icon-retweet { + background-position: -336px -120px; +} +.note-editor .icon-shopping-cart { + background-position: -360px -120px; +} +.note-editor .icon-folder-close { + background-position: -384px -120px; + width: 16px; +} +.note-editor .icon-folder-open { + background-position: -408px -120px; + width: 16px; +} +.note-editor .icon-resize-vertical { + background-position: -432px -119px; +} +.note-editor .icon-resize-horizontal { + background-position: -456px -118px; +} +.note-editor .icon-hdd { + background-position: 0 -144px; +} +.note-editor .icon-bullhorn { + background-position: -24px -144px; +} +.note-editor .icon-bell { + background-position: -48px -144px; +} +.note-editor .icon-certificate { + background-position: -72px -144px; +} +.note-editor .icon-thumbs-up { + background-position: -96px -144px; +} +.note-editor .icon-thumbs-down { + background-position: -120px -144px; +} +.note-editor .icon-hand-right { + background-position: -144px -144px; +} +.note-editor .icon-hand-left { + background-position: -168px -144px; +} +.note-editor .icon-hand-up { + background-position: -192px -144px; +} +.note-editor .icon-hand-down { + background-position: -216px -144px; +} +.note-editor .icon-circle-arrow-right { + background-position: -240px -144px; +} +.note-editor .icon-circle-arrow-left { + background-position: -264px -144px; +} +.note-editor .icon-circle-arrow-up { + background-position: -288px -144px; +} +.note-editor .icon-circle-arrow-down { + background-position: -312px -144px; +} +.note-editor .icon-globe { + background-position: -336px -144px; +} +.note-editor .icon-wrench { + background-position: -360px -144px; +} +.note-editor .icon-tasks { + background-position: -384px -144px; +} +.note-editor .icon-filter { + background-position: -408px -144px; +} +.note-editor .icon-briefcase { + background-position: -432px -144px; +} +.note-editor .icon-fullscreen { + background-position: -456px -144px; +} +.note-editor .dropup, +.note-editor .dropdown { + position: relative; +} +.note-editor .dropdown-toggle { + *margin-bottom: -3px; +} +.note-editor .dropdown-toggle:active, +.note-editor .open .dropdown-toggle { + outline: 0; +} +.note-editor .caret { + display: inline-block; + width: 0; + height: 0; + vertical-align: top; + border-top: 4px solid #000000; + border-right: 4px solid transparent; + border-left: 4px solid transparent; + content: ""; +} +.note-editor .dropdown .caret { + margin-top: 8px; + margin-left: 2px; +} +.note-editor .dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; + list-style: none; + background-color: #ffffff; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.2); + *border-right-width: 2px; + *border-bottom-width: 2px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + -webkit-background-clip: padding-box; + -moz-background-clip: padding; + background-clip: padding-box; +} +.note-editor .dropdown-menu.pull-right { + right: 0; + left: auto; +} +.note-editor .dropdown-menu .divider { + *width: 100%; + height: 1px; + margin: 9px 1px; + *margin: -5px 0 5px; + overflow: hidden; + background-color: #e5e5e5; + border-bottom: 1px solid #ffffff; +} +.note-editor .dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 20px; + color: #333333; + white-space: nowrap; +} +.note-editor .dropdown-menu > li > a:hover, +.note-editor .dropdown-menu > li > a:focus, +.note-editor .dropdown-submenu:hover > a, +.note-editor .dropdown-submenu:focus > a { + text-decoration: none; + color: #ffffff; + background-color: #0081c2; + background-image: -moz-linear-gradient(top, #0088cc, #0077b3); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3)); + background-image: -webkit-linear-gradient(top, #0088cc, #0077b3); + background-image: -o-linear-gradient(top, #0088cc, #0077b3); + background-image: linear-gradient(to bottom, #0088cc, #0077b3); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0); +} +.note-editor .dropdown-menu > .active > a, +.note-editor .dropdown-menu > .active > a:hover, +.note-editor .dropdown-menu > .active > a:focus { + color: #ffffff; + text-decoration: none; + outline: 0; + background-color: #0081c2; + background-image: -moz-linear-gradient(top, #0088cc, #0077b3); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3)); + background-image: -webkit-linear-gradient(top, #0088cc, #0077b3); + background-image: -o-linear-gradient(top, #0088cc, #0077b3); + background-image: linear-gradient(to bottom, #0088cc, #0077b3); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0); +} +.note-editor .dropdown-menu > .disabled > a, +.note-editor .dropdown-menu > .disabled > a:hover, +.note-editor .dropdown-menu > .disabled > a:focus { + color: #999999; +} +.note-editor .dropdown-menu > .disabled > a:hover, +.note-editor .dropdown-menu > .disabled > a:focus { + text-decoration: none; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + cursor: default; +} +.note-editor .open { + *z-index: 1000; +} +.note-editor .open > .dropdown-menu { + display: block; +} +.note-editor .dropdown-backdrop { + position: fixed; + left: 0; + right: 0; + bottom: 0; + top: 0; + z-index: 990; +} +.note-editor .pull-right > .dropdown-menu { + right: 0; + left: auto; +} +.note-editor .dropup .caret, +.note-editor .navbar-fixed-bottom .dropdown .caret { + border-top: 0; + border-bottom: 4px solid #000000; + content: ""; +} +.note-editor .dropup .dropdown-menu, +.note-editor .navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 1px; +} +.note-editor .dropdown-submenu { + position: relative; +} +.note-editor .dropdown-submenu > .dropdown-menu { + top: 0; + left: 100%; + margin-top: -6px; + margin-left: -1px; + -webkit-border-radius: 0 6px 6px 6px; + -moz-border-radius: 0 6px 6px 6px; + border-radius: 0 6px 6px 6px; +} +.note-editor .dropdown-submenu:hover > .dropdown-menu { + display: block; +} +.note-editor .dropup .dropdown-submenu > .dropdown-menu { + top: auto; + bottom: 0; + margin-top: 0; + margin-bottom: -2px; + -webkit-border-radius: 5px 5px 5px 0; + -moz-border-radius: 5px 5px 5px 0; + border-radius: 5px 5px 5px 0; +} +.note-editor .dropdown-submenu > a:after { + display: block; + content: " "; + float: right; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; + border-width: 5px 0 5px 5px; + border-left-color: #cccccc; + margin-top: 5px; + margin-right: -10px; +} +.note-editor .dropdown-submenu:hover > a:after { + border-left-color: #ffffff; +} +.note-editor .dropdown-submenu.pull-left { + float: none; +} +.note-editor .dropdown-submenu.pull-left > .dropdown-menu { + left: -100%; + margin-left: 10px; + -webkit-border-radius: 6px 0 6px 6px; + -moz-border-radius: 6px 0 6px 6px; + border-radius: 6px 0 6px 6px; +} +.note-editor .dropdown .dropdown-menu .nav-header { + padding-left: 20px; + padding-right: 20px; +} +.note-editor .typeahead { + z-index: 1051; + margin-top: 2px; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} +.note-editor .well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: #f5f5f5; + border: 1px solid #e3e3e3; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); +} +.note-editor .well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, 0.15); +} +.note-editor .well-large { + padding: 24px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; +} +.note-editor .well-small { + padding: 9px; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} +.note-editor .fade { + opacity: 0; + -webkit-transition: opacity 0.15s linear; + -moz-transition: opacity 0.15s linear; + -o-transition: opacity 0.15s linear; + transition: opacity 0.15s linear; +} +.note-editor .fade.in { + opacity: 1; +} +.note-editor .collapse { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition: height 0.35s ease; + -moz-transition: height 0.35s ease; + -o-transition: height 0.35s ease; + transition: height 0.35s ease; +} +.note-editor .collapse.in { + height: auto; +} +.note-editor .close { + float: right; + font-size: 20px; + font-weight: bold; + line-height: 20px; + color: #000000; + text-shadow: 0 1px 0 #ffffff; + opacity: 0.2; + filter: alpha(opacity=20); +} +.note-editor .close:hover, +.note-editor .close:focus { + color: #000000; + text-decoration: none; + cursor: pointer; + opacity: 0.4; + filter: alpha(opacity=40); +} +.note-editor button.close { + padding: 0; + cursor: pointer; + background: transparent; + border: 0; + -webkit-appearance: none; +} +.note-editor .btn { + display: inline-block; + *display: inline; + /* IE7 inline-block hack */ + + *zoom: 1; + padding: 4px 12px; + margin-bottom: 0; + font-size: 14px; + line-height: 20px; + text-align: center; + vertical-align: middle; + cursor: pointer; + color: #333333; + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); + background-color: #f5f5f5; + background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6)); + background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6); + background-image: -o-linear-gradient(top, #ffffff, #e6e6e6); + background-image: linear-gradient(to bottom, #ffffff, #e6e6e6); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0); + border-color: #e6e6e6 #e6e6e6 #bfbfbf; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + *background-color: #e6e6e6; + /* Darken IE7 buttons by default so they stand out more given they won't have borders */ + + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + border: 1px solid #cccccc; + *border: 0; + border-bottom-color: #b3b3b3; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + *margin-left: .3em; + -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05); + -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05); + box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05); +} +.note-editor .btn:hover, +.note-editor .btn:focus, +.note-editor .btn:active, +.note-editor .btn.active, +.note-editor .btn.disabled, +.note-editor .btn[disabled] { + color: #333333; + background-color: #e6e6e6; + *background-color: #d9d9d9; +} +.note-editor .btn:active, +.note-editor .btn.active { + background-color: #cccccc \9; +} +.note-editor .btn:first-child { + *margin-left: 0; +} +.note-editor .btn:hover, +.note-editor .btn:focus { + color: #333333; + text-decoration: none; + background-position: 0 -15px; + -webkit-transition: background-position 0.1s linear; + -moz-transition: background-position 0.1s linear; + -o-transition: background-position 0.1s linear; + transition: background-position 0.1s linear; +} +.note-editor .btn:focus { + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.note-editor .btn.active, +.note-editor .btn:active { + background-image: none; + outline: 0; + -webkit-box-shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05); + -moz-box-shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05); + box-shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05); +} +.note-editor .btn.disabled, +.note-editor .btn[disabled] { + cursor: default; + background-image: none; + opacity: 0.65; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} +.note-editor .btn-large { + padding: 11px 19px; + font-size: 17.5px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; +} +.note-editor .btn-large [class^="icon-"], +.note-editor .btn-large [class*=" icon-"] { + margin-top: 4px; +} +.note-editor .btn-small { + padding: 2px 10px; + font-size: 11.9px; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} +.note-editor .btn-small [class^="icon-"], +.note-editor .btn-small [class*=" icon-"] { + margin-top: 0; +} +.note-editor .btn-mini [class^="icon-"], +.note-editor .btn-mini [class*=" icon-"] { + margin-top: -1px; +} +.note-editor .btn-mini { + padding: 0 6px; + font-size: 10.5px; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} +.note-editor .btn-block { + display: block; + width: 100%; + padding-left: 0; + padding-right: 0; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.note-editor .btn-block + .btn-block { + margin-top: 5px; +} +.note-editor input[type="submit"].btn-block, +.note-editor input[type="reset"].btn-block, +.note-editor input[type="button"].btn-block { + width: 100%; +} +.note-editor .btn-primary.active, +.note-editor .btn-warning.active, +.note-editor .btn-danger.active, +.note-editor .btn-success.active, +.note-editor .btn-info.active, +.note-editor .btn-inverse.active { + color: rgba(255, 255, 255, 0.75); +} +.note-editor .btn-primary { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #006dcc; + background-image: -moz-linear-gradient(top, #0088cc, #0044cc); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc)); + background-image: -webkit-linear-gradient(top, #0088cc, #0044cc); + background-image: -o-linear-gradient(top, #0088cc, #0044cc); + background-image: linear-gradient(to bottom, #0088cc, #0044cc); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0); + border-color: #0044cc #0044cc #002a80; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + *background-color: #0044cc; + /* Darken IE7 buttons by default so they stand out more given they won't have borders */ + + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); +} +.note-editor .btn-primary:hover, +.note-editor .btn-primary:focus, +.note-editor .btn-primary:active, +.note-editor .btn-primary.active, +.note-editor .btn-primary.disabled, +.note-editor .btn-primary[disabled] { + color: #ffffff; + background-color: #0044cc; + *background-color: #003bb3; +} +.note-editor .btn-primary:active, +.note-editor .btn-primary.active { + background-color: #003399 \9; +} +.note-editor .btn-warning { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #faa732; + background-image: -moz-linear-gradient(top, #fbb450, #f89406); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406)); + background-image: -webkit-linear-gradient(top, #fbb450, #f89406); + background-image: -o-linear-gradient(top, #fbb450, #f89406); + background-image: linear-gradient(to bottom, #fbb450, #f89406); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0); + border-color: #f89406 #f89406 #ad6704; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + *background-color: #f89406; + /* Darken IE7 buttons by default so they stand out more given they won't have borders */ + + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); +} +.note-editor .btn-warning:hover, +.note-editor .btn-warning:focus, +.note-editor .btn-warning:active, +.note-editor .btn-warning.active, +.note-editor .btn-warning.disabled, +.note-editor .btn-warning[disabled] { + color: #ffffff; + background-color: #f89406; + *background-color: #df8505; +} +.note-editor .btn-warning:active, +.note-editor .btn-warning.active { + background-color: #c67605 \9; +} +.note-editor .btn-danger { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #da4f49; + background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f)); + background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f); + background-image: -o-linear-gradient(top, #ee5f5b, #bd362f); + background-image: linear-gradient(to bottom, #ee5f5b, #bd362f); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffbd362f', GradientType=0); + border-color: #bd362f #bd362f #802420; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + *background-color: #bd362f; + /* Darken IE7 buttons by default so they stand out more given they won't have borders */ + + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); +} +.note-editor .btn-danger:hover, +.note-editor .btn-danger:focus, +.note-editor .btn-danger:active, +.note-editor .btn-danger.active, +.note-editor .btn-danger.disabled, +.note-editor .btn-danger[disabled] { + color: #ffffff; + background-color: #bd362f; + *background-color: #a9302a; +} +.note-editor .btn-danger:active, +.note-editor .btn-danger.active { + background-color: #942a25 \9; +} +.note-editor .btn-success { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #5bb75b; + background-image: -moz-linear-gradient(top, #62c462, #51a351); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351)); + background-image: -webkit-linear-gradient(top, #62c462, #51a351); + background-image: -o-linear-gradient(top, #62c462, #51a351); + background-image: linear-gradient(to bottom, #62c462, #51a351); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff51a351', GradientType=0); + border-color: #51a351 #51a351 #387038; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + *background-color: #51a351; + /* Darken IE7 buttons by default so they stand out more given they won't have borders */ + + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); +} +.note-editor .btn-success:hover, +.note-editor .btn-success:focus, +.note-editor .btn-success:active, +.note-editor .btn-success.active, +.note-editor .btn-success.disabled, +.note-editor .btn-success[disabled] { + color: #ffffff; + background-color: #51a351; + *background-color: #499249; +} +.note-editor .btn-success:active, +.note-editor .btn-success.active { + background-color: #408140 \9; +} +.note-editor .btn-info { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #49afcd; + background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4)); + background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4); + background-image: -o-linear-gradient(top, #5bc0de, #2f96b4); + background-image: linear-gradient(to bottom, #5bc0de, #2f96b4); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2f96b4', GradientType=0); + border-color: #2f96b4 #2f96b4 #1f6377; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + *background-color: #2f96b4; + /* Darken IE7 buttons by default so they stand out more given they won't have borders */ + + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); +} +.note-editor .btn-info:hover, +.note-editor .btn-info:focus, +.note-editor .btn-info:active, +.note-editor .btn-info.active, +.note-editor .btn-info.disabled, +.note-editor .btn-info[disabled] { + color: #ffffff; + background-color: #2f96b4; + *background-color: #2a85a0; +} +.note-editor .btn-info:active, +.note-editor .btn-info.active { + background-color: #24748c \9; +} +.note-editor .btn-inverse { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #363636; + background-image: -moz-linear-gradient(top, #444444, #222222); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#444444), to(#222222)); + background-image: -webkit-linear-gradient(top, #444444, #222222); + background-image: -o-linear-gradient(top, #444444, #222222); + background-image: linear-gradient(to bottom, #444444, #222222); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444', endColorstr='#ff222222', GradientType=0); + border-color: #222222 #222222 #000000; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + *background-color: #222222; + /* Darken IE7 buttons by default so they stand out more given they won't have borders */ + + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); +} +.note-editor .btn-inverse:hover, +.note-editor .btn-inverse:focus, +.note-editor .btn-inverse:active, +.note-editor .btn-inverse.active, +.note-editor .btn-inverse.disabled, +.note-editor .btn-inverse[disabled] { + color: #ffffff; + background-color: #222222; + *background-color: #151515; +} +.note-editor .btn-inverse:active, +.note-editor .btn-inverse.active { + background-color: #080808 \9; +} +.note-editor button.btn, +.note-editor input[type="submit"].btn { + *padding-top: 3px; + *padding-bottom: 3px; +} +.note-editor button.btn::-moz-focus-inner, +.note-editor input[type="submit"].btn::-moz-focus-inner { + padding: 0; + border: 0; +} +.note-editor button.btn.btn-large, +.note-editor input[type="submit"].btn.btn-large { + *padding-top: 7px; + *padding-bottom: 7px; +} +.note-editor button.btn.btn-small, +.note-editor input[type="submit"].btn.btn-small { + *padding-top: 3px; + *padding-bottom: 3px; +} +.note-editor button.btn.btn-mini, +.note-editor input[type="submit"].btn.btn-mini { + *padding-top: 1px; + *padding-bottom: 1px; +} +.note-editor .btn-link, +.note-editor .btn-link:active, +.note-editor .btn-link[disabled] { + background-color: transparent; + background-image: none; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; +} +.note-editor .btn-link { + border-color: transparent; + cursor: pointer; + color: #0088cc; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} +.note-editor .btn-link:hover, +.note-editor .btn-link:focus { + color: #005580; + text-decoration: underline; + background-color: transparent; +} +.note-editor .btn-link[disabled]:hover, +.note-editor .btn-link[disabled]:focus { + color: #333333; + text-decoration: none; +} +.note-editor .btn-group { + position: relative; + display: inline-block; + *display: inline; + /* IE7 inline-block hack */ + + *zoom: 1; + font-size: 0; + vertical-align: middle; + white-space: nowrap; + *margin-left: .3em; +} +.note-editor .btn-group:first-child { + *margin-left: 0; +} +.note-editor .btn-group + .btn-group { + margin-left: 5px; +} +.note-editor .btn-toolbar { + font-size: 0; + margin-top: 10px; + margin-bottom: 10px; +} +.note-editor .btn-toolbar > .btn + .btn, +.note-editor .btn-toolbar > .btn-group + .btn, +.note-editor .btn-toolbar > .btn + .btn-group { + margin-left: 5px; +} +.note-editor .btn-group > .btn { + position: relative; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} +.note-editor .btn-group > .btn + .btn { + margin-left: -1px; +} +.note-editor .btn-group > .btn, +.note-editor .btn-group > .dropdown-menu, +.note-editor .btn-group > .popover { + font-size: 14px; +} +.note-editor .btn-group > .btn-mini { + font-size: 10.5px; +} +.note-editor .btn-group > .btn-small { + font-size: 11.9px; +} +.note-editor .btn-group > .btn-large { + font-size: 17.5px; +} +.note-editor .btn-group > .btn:first-child { + margin-left: 0; + -webkit-border-top-left-radius: 4px; + -moz-border-radius-topleft: 4px; + border-top-left-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -moz-border-radius-bottomleft: 4px; + border-bottom-left-radius: 4px; +} +.note-editor .btn-group > .btn:last-child, +.note-editor .btn-group > .dropdown-toggle { + -webkit-border-top-right-radius: 4px; + -moz-border-radius-topright: 4px; + border-top-right-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -moz-border-radius-bottomright: 4px; + border-bottom-right-radius: 4px; +} +.note-editor .btn-group > .btn.large:first-child { + margin-left: 0; + -webkit-border-top-left-radius: 6px; + -moz-border-radius-topleft: 6px; + border-top-left-radius: 6px; + -webkit-border-bottom-left-radius: 6px; + -moz-border-radius-bottomleft: 6px; + border-bottom-left-radius: 6px; +} +.note-editor .btn-group > .btn.large:last-child, +.note-editor .btn-group > .large.dropdown-toggle { + -webkit-border-top-right-radius: 6px; + -moz-border-radius-topright: 6px; + border-top-right-radius: 6px; + -webkit-border-bottom-right-radius: 6px; + -moz-border-radius-bottomright: 6px; + border-bottom-right-radius: 6px; +} +.note-editor .btn-group > .btn:hover, +.note-editor .btn-group > .btn:focus, +.note-editor .btn-group > .btn:active, +.note-editor .btn-group > .btn.active { + z-index: 2; +} +.note-editor .btn-group .dropdown-toggle:active, +.note-editor .btn-group.open .dropdown-toggle { + outline: 0; +} +.note-editor .btn-group > .btn + .dropdown-toggle { + padding-left: 8px; + padding-right: 8px; + -webkit-box-shadow: inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05); + -moz-box-shadow: inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05); + box-shadow: inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05); + *padding-top: 5px; + *padding-bottom: 5px; +} +.note-editor .btn-group > .btn-mini + .dropdown-toggle { + padding-left: 5px; + padding-right: 5px; + *padding-top: 2px; + *padding-bottom: 2px; +} +.note-editor .btn-group > .btn-small + .dropdown-toggle { + *padding-top: 5px; + *padding-bottom: 4px; +} +.note-editor .btn-group > .btn-large + .dropdown-toggle { + padding-left: 12px; + padding-right: 12px; + *padding-top: 7px; + *padding-bottom: 7px; +} +.note-editor .btn-group.open .dropdown-toggle { + background-image: none; + -webkit-box-shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05); + -moz-box-shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05); + box-shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05); +} +.note-editor .btn-group.open .btn.dropdown-toggle { + background-color: #e6e6e6; +} +.note-editor .btn-group.open .btn-primary.dropdown-toggle { + background-color: #0044cc; +} +.note-editor .btn-group.open .btn-warning.dropdown-toggle { + background-color: #f89406; +} +.note-editor .btn-group.open .btn-danger.dropdown-toggle { + background-color: #bd362f; +} +.note-editor .btn-group.open .btn-success.dropdown-toggle { + background-color: #51a351; +} +.note-editor .btn-group.open .btn-info.dropdown-toggle { + background-color: #2f96b4; +} +.note-editor .btn-group.open .btn-inverse.dropdown-toggle { + background-color: #222222; +} +.note-editor .btn .caret { + margin-top: 8px; + margin-left: 0; +} +.note-editor .btn-large .caret { + margin-top: 6px; +} +.note-editor .btn-large .caret { + border-left-width: 5px; + border-right-width: 5px; + border-top-width: 5px; +} +.note-editor .btn-mini .caret, +.note-editor .btn-small .caret { + margin-top: 8px; +} +.note-editor .dropup .btn-large .caret { + border-bottom-width: 5px; +} +.note-editor .btn-primary .caret, +.note-editor .btn-warning .caret, +.note-editor .btn-danger .caret, +.note-editor .btn-info .caret, +.note-editor .btn-success .caret, +.note-editor .btn-inverse .caret { + border-top-color: #ffffff; + border-bottom-color: #ffffff; +} +.note-editor .btn-group-vertical { + display: inline-block; + *display: inline; + /* IE7 inline-block hack */ + + *zoom: 1; +} +.note-editor .btn-group-vertical > .btn { + display: block; + float: none; + max-width: 100%; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} +.note-editor .btn-group-vertical > .btn + .btn { + margin-left: 0; + margin-top: -1px; +} +.note-editor .btn-group-vertical > .btn:first-child { + -webkit-border-radius: 4px 4px 0 0; + -moz-border-radius: 4px 4px 0 0; + border-radius: 4px 4px 0 0; +} +.note-editor .btn-group-vertical > .btn:last-child { + -webkit-border-radius: 0 0 4px 4px; + -moz-border-radius: 0 0 4px 4px; + border-radius: 0 0 4px 4px; +} +.note-editor .btn-group-vertical > .btn-large:first-child { + -webkit-border-radius: 6px 6px 0 0; + -moz-border-radius: 6px 6px 0 0; + border-radius: 6px 6px 0 0; +} +.note-editor .btn-group-vertical > .btn-large:last-child { + -webkit-border-radius: 0 0 6px 6px; + -moz-border-radius: 0 0 6px 6px; + border-radius: 0 0 6px 6px; +} +.note-editor .alert { + padding: 8px 35px 8px 14px; + margin-bottom: 20px; + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); + background-color: #fcf8e3; + border: 1px solid #fbeed5; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} +.note-editor .alert, +.note-editor .alert h4 { + color: #c09853; +} +.note-editor .alert h4 { + margin: 0; +} +.note-editor .alert .close { + position: relative; + top: -2px; + right: -21px; + line-height: 20px; +} +.note-editor .alert-success { + background-color: #dff0d8; + border-color: #d6e9c6; + color: #468847; +} +.note-editor .alert-success h4 { + color: #468847; +} +.note-editor .alert-danger, +.note-editor .alert-error { + background-color: #f2dede; + border-color: #eed3d7; + color: #b94a48; +} +.note-editor .alert-danger h4, +.note-editor .alert-error h4 { + color: #b94a48; +} +.note-editor .alert-info { + background-color: #d9edf7; + border-color: #bce8f1; + color: #3a87ad; +} +.note-editor .alert-info h4 { + color: #3a87ad; +} +.note-editor .alert-block { + padding-top: 14px; + padding-bottom: 14px; +} +.note-editor .alert-block > p, +.note-editor .alert-block > ul { + margin-bottom: 0; +} +.note-editor .alert-block p + p { + margin-top: 5px; +} +.note-editor .nav { + margin-left: 0; + margin-bottom: 20px; + list-style: none; +} +.note-editor .nav > li > a { + display: block; +} +.note-editor .nav > li > a:hover, +.note-editor .nav > li > a:focus { + text-decoration: none; + background-color: #eeeeee; +} +.note-editor .nav > li > a > img { + max-width: none; +} +.note-editor .nav > .pull-right { + float: right; +} +.note-editor .nav-header { + display: block; + padding: 3px 15px; + font-size: 11px; + font-weight: bold; + line-height: 20px; + color: #999999; + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); + text-transform: uppercase; +} +.note-editor .nav li + .nav-header { + margin-top: 9px; +} +.note-editor .nav-list { + padding-left: 15px; + padding-right: 15px; + margin-bottom: 0; +} +.note-editor .nav-list > li > a, +.note-editor .nav-list .nav-header { + margin-left: -15px; + margin-right: -15px; + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); +} +.note-editor .nav-list > li > a { + padding: 3px 15px; +} +.note-editor .nav-list > .active > a, +.note-editor .nav-list > .active > a:hover, +.note-editor .nav-list > .active > a:focus { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2); + background-color: #0088cc; +} +.note-editor .nav-list [class^="icon-"], +.note-editor .nav-list [class*=" icon-"] { + margin-right: 2px; +} +.note-editor .nav-list .divider { + *width: 100%; + height: 1px; + margin: 9px 1px; + *margin: -5px 0 5px; + overflow: hidden; + background-color: #e5e5e5; + border-bottom: 1px solid #ffffff; +} +.note-editor .nav-tabs, +.note-editor .nav-pills { + *zoom: 1; +} +.note-editor .nav-tabs:before, +.note-editor .nav-pills:before, +.note-editor .nav-tabs:after, +.note-editor .nav-pills:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .nav-tabs:after, +.note-editor .nav-pills:after { + clear: both; +} +.note-editor .nav-tabs > li, +.note-editor .nav-pills > li { + float: left; +} +.note-editor .nav-tabs > li > a, +.note-editor .nav-pills > li > a { + padding-right: 12px; + padding-left: 12px; + margin-right: 2px; + line-height: 14px; +} +.note-editor .nav-tabs { + border-bottom: 1px solid #ddd; +} +.note-editor .nav-tabs > li { + margin-bottom: -1px; +} +.note-editor .nav-tabs > li > a { + padding-top: 8px; + padding-bottom: 8px; + line-height: 20px; + border: 1px solid transparent; + -webkit-border-radius: 4px 4px 0 0; + -moz-border-radius: 4px 4px 0 0; + border-radius: 4px 4px 0 0; +} +.note-editor .nav-tabs > li > a:hover, +.note-editor .nav-tabs > li > a:focus { + border-color: #eeeeee #eeeeee #dddddd; +} +.note-editor .nav-tabs > .active > a, +.note-editor .nav-tabs > .active > a:hover, +.note-editor .nav-tabs > .active > a:focus { + color: #555555; + background-color: #ffffff; + border: 1px solid #ddd; + border-bottom-color: transparent; + cursor: default; +} +.note-editor .nav-pills > li > a { + padding-top: 8px; + padding-bottom: 8px; + margin-top: 2px; + margin-bottom: 2px; + -webkit-border-radius: 5px; + -moz-border-radius: 5px; + border-radius: 5px; +} +.note-editor .nav-pills > .active > a, +.note-editor .nav-pills > .active > a:hover, +.note-editor .nav-pills > .active > a:focus { + color: #ffffff; + background-color: #0088cc; +} +.note-editor .nav-stacked > li { + float: none; +} +.note-editor .nav-stacked > li > a { + margin-right: 0; +} +.note-editor .nav-tabs.nav-stacked { + border-bottom: 0; +} +.note-editor .nav-tabs.nav-stacked > li > a { + border: 1px solid #ddd; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} +.note-editor .nav-tabs.nav-stacked > li:first-child > a { + -webkit-border-top-right-radius: 4px; + -moz-border-radius-topright: 4px; + border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + -moz-border-radius-topleft: 4px; + border-top-left-radius: 4px; +} +.note-editor .nav-tabs.nav-stacked > li:last-child > a { + -webkit-border-bottom-right-radius: 4px; + -moz-border-radius-bottomright: 4px; + border-bottom-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -moz-border-radius-bottomleft: 4px; + border-bottom-left-radius: 4px; +} +.note-editor .nav-tabs.nav-stacked > li > a:hover, +.note-editor .nav-tabs.nav-stacked > li > a:focus { + border-color: #ddd; + z-index: 2; +} +.note-editor .nav-pills.nav-stacked > li > a { + margin-bottom: 3px; +} +.note-editor .nav-pills.nav-stacked > li:last-child > a { + margin-bottom: 1px; +} +.note-editor .nav-tabs .dropdown-menu { + -webkit-border-radius: 0 0 6px 6px; + -moz-border-radius: 0 0 6px 6px; + border-radius: 0 0 6px 6px; +} +.note-editor .nav-pills .dropdown-menu { + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; +} +.note-editor .nav .dropdown-toggle .caret { + border-top-color: #0088cc; + border-bottom-color: #0088cc; + margin-top: 6px; +} +.note-editor .nav .dropdown-toggle:hover .caret, +.note-editor .nav .dropdown-toggle:focus .caret { + border-top-color: #005580; + border-bottom-color: #005580; +} +.note-editor .nav-tabs .dropdown-toggle .caret { + margin-top: 8px; +} +.note-editor .nav .active .dropdown-toggle .caret { + border-top-color: #fff; + border-bottom-color: #fff; +} +.note-editor .nav-tabs .active .dropdown-toggle .caret { + border-top-color: #555555; + border-bottom-color: #555555; +} +.note-editor .nav > .dropdown.active > a:hover, +.note-editor .nav > .dropdown.active > a:focus { + cursor: pointer; +} +.note-editor .nav-tabs .open .dropdown-toggle, +.note-editor .nav-pills .open .dropdown-toggle, +.note-editor .nav > li.dropdown.open.active > a:hover, +.note-editor .nav > li.dropdown.open.active > a:focus { + color: #ffffff; + background-color: #999999; + border-color: #999999; +} +.note-editor .nav li.dropdown.open .caret, +.note-editor .nav li.dropdown.open.active .caret, +.note-editor .nav li.dropdown.open a:hover .caret, +.note-editor .nav li.dropdown.open a:focus .caret { + border-top-color: #ffffff; + border-bottom-color: #ffffff; + opacity: 1; + filter: alpha(opacity=100); +} +.note-editor .tabs-stacked .open > a:hover, +.note-editor .tabs-stacked .open > a:focus { + border-color: #999999; +} +.note-editor .tabbable { + *zoom: 1; +} +.note-editor .tabbable:before, +.note-editor .tabbable:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .tabbable:after { + clear: both; +} +.note-editor .tab-content { + overflow: auto; +} +.note-editor .tabs-below > .nav-tabs, +.note-editor .tabs-right > .nav-tabs, +.note-editor .tabs-left > .nav-tabs { + border-bottom: 0; +} +.note-editor .tab-content > .tab-pane, +.note-editor .pill-content > .pill-pane { + display: none; +} +.note-editor .tab-content > .active, +.note-editor .pill-content > .active { + display: block; +} +.note-editor .tabs-below > .nav-tabs { + border-top: 1px solid #ddd; +} +.note-editor .tabs-below > .nav-tabs > li { + margin-top: -1px; + margin-bottom: 0; +} +.note-editor .tabs-below > .nav-tabs > li > a { + -webkit-border-radius: 0 0 4px 4px; + -moz-border-radius: 0 0 4px 4px; + border-radius: 0 0 4px 4px; +} +.note-editor .tabs-below > .nav-tabs > li > a:hover, +.note-editor .tabs-below > .nav-tabs > li > a:focus { + border-bottom-color: transparent; + border-top-color: #ddd; +} +.note-editor .tabs-below > .nav-tabs > .active > a, +.note-editor .tabs-below > .nav-tabs > .active > a:hover, +.note-editor .tabs-below > .nav-tabs > .active > a:focus { + border-color: transparent #ddd #ddd #ddd; +} +.note-editor .tabs-left > .nav-tabs > li, +.note-editor .tabs-right > .nav-tabs > li { + float: none; +} +.note-editor .tabs-left > .nav-tabs > li > a, +.note-editor .tabs-right > .nav-tabs > li > a { + min-width: 74px; + margin-right: 0; + margin-bottom: 3px; +} +.note-editor .tabs-left > .nav-tabs { + float: left; + margin-right: 19px; + border-right: 1px solid #ddd; +} +.note-editor .tabs-left > .nav-tabs > li > a { + margin-right: -1px; + -webkit-border-radius: 4px 0 0 4px; + -moz-border-radius: 4px 0 0 4px; + border-radius: 4px 0 0 4px; +} +.note-editor .tabs-left > .nav-tabs > li > a:hover, +.note-editor .tabs-left > .nav-tabs > li > a:focus { + border-color: #eeeeee #dddddd #eeeeee #eeeeee; +} +.note-editor .tabs-left > .nav-tabs .active > a, +.note-editor .tabs-left > .nav-tabs .active > a:hover, +.note-editor .tabs-left > .nav-tabs .active > a:focus { + border-color: #ddd transparent #ddd #ddd; + *border-right-color: #ffffff; +} +.note-editor .tabs-right > .nav-tabs { + float: right; + margin-left: 19px; + border-left: 1px solid #ddd; +} +.note-editor .tabs-right > .nav-tabs > li > a { + margin-left: -1px; + -webkit-border-radius: 0 4px 4px 0; + -moz-border-radius: 0 4px 4px 0; + border-radius: 0 4px 4px 0; +} +.note-editor .tabs-right > .nav-tabs > li > a:hover, +.note-editor .tabs-right > .nav-tabs > li > a:focus { + border-color: #eeeeee #eeeeee #eeeeee #dddddd; +} +.note-editor .tabs-right > .nav-tabs .active > a, +.note-editor .tabs-right > .nav-tabs .active > a:hover, +.note-editor .tabs-right > .nav-tabs .active > a:focus { + border-color: #ddd #ddd #ddd transparent; + *border-left-color: #ffffff; +} +.note-editor .nav > .disabled > a { + color: #999999; +} +.note-editor .nav > .disabled > a:hover, +.note-editor .nav > .disabled > a:focus { + text-decoration: none; + background-color: transparent; + cursor: default; +} +.note-editor .navbar { + overflow: visible; + margin-bottom: 20px; + *position: relative; + *z-index: 2; +} +.note-editor .navbar-inner { + min-height: 40px; + padding-left: 20px; + padding-right: 20px; + background-color: #fafafa; + background-image: -moz-linear-gradient(top, #ffffff, #f2f2f2); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#f2f2f2)); + background-image: -webkit-linear-gradient(top, #ffffff, #f2f2f2); + background-image: -o-linear-gradient(top, #ffffff, #f2f2f2); + background-image: linear-gradient(to bottom, #ffffff, #f2f2f2); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff2f2f2', GradientType=0); + border: 1px solid #d4d4d4; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065); + -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065); + box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065); + *zoom: 1; +} +.note-editor .navbar-inner:before, +.note-editor .navbar-inner:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .navbar-inner:after { + clear: both; +} +.note-editor .navbar .container { + width: auto; +} +.note-editor .nav-collapse.collapse { + height: auto; + overflow: visible; +} +.note-editor .navbar .brand { + float: left; + display: block; + padding: 10px 20px 10px; + margin-left: -20px; + font-size: 20px; + font-weight: 200; + color: #777777; + text-shadow: 0 1px 0 #ffffff; +} +.note-editor .navbar .brand:hover, +.note-editor .navbar .brand:focus { + text-decoration: none; +} +.note-editor .navbar-text { + margin-bottom: 0; + line-height: 40px; + color: #777777; +} +.note-editor .navbar-link { + color: #777777; +} +.note-editor .navbar-link:hover, +.note-editor .navbar-link:focus { + color: #333333; +} +.note-editor .navbar .divider-vertical { + height: 40px; + margin: 0 9px; + border-left: 1px solid #f2f2f2; + border-right: 1px solid #ffffff; +} +.note-editor .navbar .btn, +.note-editor .navbar .btn-group { + margin-top: 5px; +} +.note-editor .navbar .btn-group .btn, +.note-editor .navbar .input-prepend .btn, +.note-editor .navbar .input-append .btn, +.note-editor .navbar .input-prepend .btn-group, +.note-editor .navbar .input-append .btn-group { + margin-top: 0; +} +.note-editor .navbar-form { + margin-bottom: 0; + *zoom: 1; +} +.note-editor .navbar-form:before, +.note-editor .navbar-form:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .navbar-form:after { + clear: both; +} +.note-editor .navbar-form input, +.note-editor .navbar-form select, +.note-editor .navbar-form .radio, +.note-editor .navbar-form .checkbox { + margin-top: 5px; +} +.note-editor .navbar-form input, +.note-editor .navbar-form select, +.note-editor .navbar-form .btn { + display: inline-block; + margin-bottom: 0; +} +.note-editor .navbar-form input[type="image"], +.note-editor .navbar-form input[type="checkbox"], +.note-editor .navbar-form input[type="radio"] { + margin-top: 3px; +} +.note-editor .navbar-form .input-append, +.note-editor .navbar-form .input-prepend { + margin-top: 5px; + white-space: nowrap; +} +.note-editor .navbar-form .input-append input, +.note-editor .navbar-form .input-prepend input { + margin-top: 0; +} +.note-editor .navbar-search { + position: relative; + float: left; + margin-top: 5px; + margin-bottom: 0; +} +.note-editor .navbar-search .search-query { + margin-bottom: 0; + padding: 4px 14px; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 13px; + font-weight: normal; + line-height: 1; + -webkit-border-radius: 15px; + -moz-border-radius: 15px; + border-radius: 15px; +} +.note-editor .navbar-static-top { + position: static; + margin-bottom: 0; +} +.note-editor .navbar-static-top .navbar-inner { + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} +.note-editor .navbar-fixed-top, +.note-editor .navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + z-index: 1030; + margin-bottom: 0; +} +.note-editor .navbar-fixed-top .navbar-inner, +.note-editor .navbar-static-top .navbar-inner { + border-width: 0 0 1px; +} +.note-editor .navbar-fixed-bottom .navbar-inner { + border-width: 1px 0 0; +} +.note-editor .navbar-fixed-top .navbar-inner, +.note-editor .navbar-fixed-bottom .navbar-inner { + padding-left: 0; + padding-right: 0; + -webkit-border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; +} +.note-editor .navbar-static-top .container, +.note-editor .navbar-fixed-top .container, +.note-editor .navbar-fixed-bottom .container { + width: 940px; +} +.note-editor .navbar-fixed-top { + top: 0; +} +.note-editor .navbar-fixed-top .navbar-inner, +.note-editor .navbar-static-top .navbar-inner { + -webkit-box-shadow: 0 1px 10px rgba(0,0,0,.1); + -moz-box-shadow: 0 1px 10px rgba(0,0,0,.1); + box-shadow: 0 1px 10px rgba(0,0,0,.1); +} +.note-editor .navbar-fixed-bottom { + bottom: 0; +} +.note-editor .navbar-fixed-bottom .navbar-inner { + -webkit-box-shadow: 0 -1px 10px rgba(0,0,0,.1); + -moz-box-shadow: 0 -1px 10px rgba(0,0,0,.1); + box-shadow: 0 -1px 10px rgba(0,0,0,.1); +} +.note-editor .navbar .nav { + position: relative; + left: 0; + display: block; + float: left; + margin: 0 10px 0 0; +} +.note-editor .navbar .nav.pull-right { + float: right; + margin-right: 0; +} +.note-editor .navbar .nav > li { + float: left; +} +.note-editor .navbar .nav > li > a { + float: none; + padding: 10px 15px 10px; + color: #777777; + text-decoration: none; + text-shadow: 0 1px 0 #ffffff; +} +.note-editor .navbar .nav .dropdown-toggle .caret { + margin-top: 8px; +} +.note-editor .navbar .nav > li > a:focus, +.note-editor .navbar .nav > li > a:hover { + background-color: transparent; + color: #333333; + text-decoration: none; +} +.note-editor .navbar .nav > .active > a, +.note-editor .navbar .nav > .active > a:hover, +.note-editor .navbar .nav > .active > a:focus { + color: #555555; + text-decoration: none; + background-color: #e5e5e5; + -webkit-box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125); + -moz-box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125); +} +.note-editor .navbar .btn-navbar { + display: none; + float: right; + padding: 7px 10px; + margin-left: 5px; + margin-right: 5px; + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #ededed; + background-image: -moz-linear-gradient(top, #f2f2f2, #e5e5e5); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f2f2f2), to(#e5e5e5)); + background-image: -webkit-linear-gradient(top, #f2f2f2, #e5e5e5); + background-image: -o-linear-gradient(top, #f2f2f2, #e5e5e5); + background-image: linear-gradient(to bottom, #f2f2f2, #e5e5e5); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2f2f2', endColorstr='#ffe5e5e5', GradientType=0); + border-color: #e5e5e5 #e5e5e5 #bfbfbf; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + *background-color: #e5e5e5; + /* Darken IE7 buttons by default so they stand out more given they won't have borders */ + + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.075); + -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.075); + box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.075); +} +.note-editor .navbar .btn-navbar:hover, +.note-editor .navbar .btn-navbar:focus, +.note-editor .navbar .btn-navbar:active, +.note-editor .navbar .btn-navbar.active, +.note-editor .navbar .btn-navbar.disabled, +.note-editor .navbar .btn-navbar[disabled] { + color: #ffffff; + background-color: #e5e5e5; + *background-color: #d9d9d9; +} +.note-editor .navbar .btn-navbar:active, +.note-editor .navbar .btn-navbar.active { + background-color: #cccccc \9; +} +.note-editor .navbar .btn-navbar .icon-bar { + display: block; + width: 18px; + height: 2px; + background-color: #f5f5f5; + -webkit-border-radius: 1px; + -moz-border-radius: 1px; + border-radius: 1px; + -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); + -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); + box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); +} +.note-editor .btn-navbar .icon-bar + .icon-bar { + margin-top: 3px; +} +.note-editor .navbar .nav > li > .dropdown-menu:before { + content: ''; + display: inline-block; + border-left: 7px solid transparent; + border-right: 7px solid transparent; + border-bottom: 7px solid #ccc; + border-bottom-color: rgba(0, 0, 0, 0.2); + position: absolute; + top: -7px; + left: 9px; +} +.note-editor .navbar .nav > li > .dropdown-menu:after { + content: ''; + display: inline-block; + border-left: 6px solid transparent; + border-right: 6px solid transparent; + border-bottom: 6px solid #ffffff; + position: absolute; + top: -6px; + left: 10px; +} +.note-editor .navbar-fixed-bottom .nav > li > .dropdown-menu:before { + border-top: 7px solid #ccc; + border-top-color: rgba(0, 0, 0, 0.2); + border-bottom: 0; + bottom: -7px; + top: auto; +} +.note-editor .navbar-fixed-bottom .nav > li > .dropdown-menu:after { + border-top: 6px solid #ffffff; + border-bottom: 0; + bottom: -6px; + top: auto; +} +.note-editor .navbar .nav li.dropdown > a:hover .caret, +.note-editor .navbar .nav li.dropdown > a:focus .caret { + border-top-color: #333333; + border-bottom-color: #333333; +} +.note-editor .navbar .nav li.dropdown.open > .dropdown-toggle, +.note-editor .navbar .nav li.dropdown.active > .dropdown-toggle, +.note-editor .navbar .nav li.dropdown.open.active > .dropdown-toggle { + background-color: #e5e5e5; + color: #555555; +} +.note-editor .navbar .nav li.dropdown > .dropdown-toggle .caret { + border-top-color: #777777; + border-bottom-color: #777777; +} +.note-editor .navbar .nav li.dropdown.open > .dropdown-toggle .caret, +.note-editor .navbar .nav li.dropdown.active > .dropdown-toggle .caret, +.note-editor .navbar .nav li.dropdown.open.active > .dropdown-toggle .caret { + border-top-color: #555555; + border-bottom-color: #555555; +} +.note-editor .navbar .pull-right > li > .dropdown-menu, +.note-editor .navbar .nav > li > .dropdown-menu.pull-right { + left: auto; + right: 0; +} +.note-editor .navbar .pull-right > li > .dropdown-menu:before, +.note-editor .navbar .nav > li > .dropdown-menu.pull-right:before { + left: auto; + right: 12px; +} +.note-editor .navbar .pull-right > li > .dropdown-menu:after, +.note-editor .navbar .nav > li > .dropdown-menu.pull-right:after { + left: auto; + right: 13px; +} +.note-editor .navbar .pull-right > li > .dropdown-menu .dropdown-menu, +.note-editor .navbar .nav > li > .dropdown-menu.pull-right .dropdown-menu { + left: auto; + right: 100%; + margin-left: 0; + margin-right: -1px; + -webkit-border-radius: 6px 0 6px 6px; + -moz-border-radius: 6px 0 6px 6px; + border-radius: 6px 0 6px 6px; +} +.note-editor .navbar-inverse .navbar-inner { + background-color: #1b1b1b; + background-image: -moz-linear-gradient(top, #222222, #111111); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#222222), to(#111111)); + background-image: -webkit-linear-gradient(top, #222222, #111111); + background-image: -o-linear-gradient(top, #222222, #111111); + background-image: linear-gradient(to bottom, #222222, #111111); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222', endColorstr='#ff111111', GradientType=0); + border-color: #252525; +} +.note-editor .navbar-inverse .brand, +.note-editor .navbar-inverse .nav > li > a { + color: #999999; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); +} +.note-editor .navbar-inverse .brand:hover, +.note-editor .navbar-inverse .nav > li > a:hover, +.note-editor .navbar-inverse .brand:focus, +.note-editor .navbar-inverse .nav > li > a:focus { + color: #ffffff; +} +.note-editor .navbar-inverse .brand { + color: #999999; +} +.note-editor .navbar-inverse .navbar-text { + color: #999999; +} +.note-editor .navbar-inverse .nav > li > a:focus, +.note-editor .navbar-inverse .nav > li > a:hover { + background-color: transparent; + color: #ffffff; +} +.note-editor .navbar-inverse .nav .active > a, +.note-editor .navbar-inverse .nav .active > a:hover, +.note-editor .navbar-inverse .nav .active > a:focus { + color: #ffffff; + background-color: #111111; +} +.note-editor .navbar-inverse .navbar-link { + color: #999999; +} +.note-editor .navbar-inverse .navbar-link:hover, +.note-editor .navbar-inverse .navbar-link:focus { + color: #ffffff; +} +.note-editor .navbar-inverse .divider-vertical { + border-left-color: #111111; + border-right-color: #222222; +} +.note-editor .navbar-inverse .nav li.dropdown.open > .dropdown-toggle, +.note-editor .navbar-inverse .nav li.dropdown.active > .dropdown-toggle, +.note-editor .navbar-inverse .nav li.dropdown.open.active > .dropdown-toggle { + background-color: #111111; + color: #ffffff; +} +.note-editor .navbar-inverse .nav li.dropdown > a:hover .caret, +.note-editor .navbar-inverse .nav li.dropdown > a:focus .caret { + border-top-color: #ffffff; + border-bottom-color: #ffffff; +} +.note-editor .navbar-inverse .nav li.dropdown > .dropdown-toggle .caret { + border-top-color: #999999; + border-bottom-color: #999999; +} +.note-editor .navbar-inverse .nav li.dropdown.open > .dropdown-toggle .caret, +.note-editor .navbar-inverse .nav li.dropdown.active > .dropdown-toggle .caret, +.note-editor .navbar-inverse .nav li.dropdown.open.active > .dropdown-toggle .caret { + border-top-color: #ffffff; + border-bottom-color: #ffffff; +} +.note-editor .navbar-inverse .navbar-search .search-query { + color: #ffffff; + background-color: #515151; + border-color: #111111; + -webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,.1), 0 1px 0 rgba(255,255,255,.15); + -moz-box-shadow: inset 0 1px 2px rgba(0,0,0,.1), 0 1px 0 rgba(255,255,255,.15); + box-shadow: inset 0 1px 2px rgba(0,0,0,.1), 0 1px 0 rgba(255,255,255,.15); + -webkit-transition: none; + -moz-transition: none; + -o-transition: none; + transition: none; +} +.note-editor .navbar-inverse .navbar-search .search-query:-moz-placeholder { + color: #cccccc; +} +.note-editor .navbar-inverse .navbar-search .search-query:-ms-input-placeholder { + color: #cccccc; +} +.note-editor .navbar-inverse .navbar-search .search-query::-webkit-input-placeholder { + color: #cccccc; +} +.note-editor .navbar-inverse .navbar-search .search-query:focus, +.note-editor .navbar-inverse .navbar-search .search-query.focused { + padding: 5px 15px; + color: #333333; + text-shadow: 0 1px 0 #ffffff; + background-color: #ffffff; + border: 0; + -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); + -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); + box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); + outline: 0; +} +.note-editor .navbar-inverse .btn-navbar { + color: #ffffff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #0e0e0e; + background-image: -moz-linear-gradient(top, #151515, #040404); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#151515), to(#040404)); + background-image: -webkit-linear-gradient(top, #151515, #040404); + background-image: -o-linear-gradient(top, #151515, #040404); + background-image: linear-gradient(to bottom, #151515, #040404); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff151515', endColorstr='#ff040404', GradientType=0); + border-color: #040404 #040404 #000000; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + *background-color: #040404; + /* Darken IE7 buttons by default so they stand out more given they won't have borders */ + + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); +} +.note-editor .navbar-inverse .btn-navbar:hover, +.note-editor .navbar-inverse .btn-navbar:focus, +.note-editor .navbar-inverse .btn-navbar:active, +.note-editor .navbar-inverse .btn-navbar.active, +.note-editor .navbar-inverse .btn-navbar.disabled, +.note-editor .navbar-inverse .btn-navbar[disabled] { + color: #ffffff; + background-color: #040404; + *background-color: #000000; +} +.note-editor .navbar-inverse .btn-navbar:active, +.note-editor .navbar-inverse .btn-navbar.active { + background-color: #000000 \9; +} +.note-editor .breadcrumb { + padding: 8px 15px; + margin: 0 0 20px; + list-style: none; + background-color: #f5f5f5; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} +.note-editor .breadcrumb > li { + display: inline-block; + *display: inline; + /* IE7 inline-block hack */ + + *zoom: 1; + text-shadow: 0 1px 0 #ffffff; +} +.note-editor .breadcrumb > li > .divider { + padding: 0 5px; + color: #ccc; +} +.note-editor .breadcrumb > .active { + color: #999999; +} +.note-editor .pagination { + margin: 20px 0; +} +.note-editor .pagination ul { + display: inline-block; + *display: inline; + /* IE7 inline-block hack */ + + *zoom: 1; + margin-left: 0; + margin-bottom: 0; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); +} +.note-editor .pagination ul > li { + display: inline; +} +.note-editor .pagination ul > li > a, +.note-editor .pagination ul > li > span { + float: left; + padding: 4px 12px; + line-height: 20px; + text-decoration: none; + background-color: #ffffff; + border: 1px solid #dddddd; + border-left-width: 0; +} +.note-editor .pagination ul > li > a:hover, +.note-editor .pagination ul > li > a:focus, +.note-editor .pagination ul > .active > a, +.note-editor .pagination ul > .active > span { + background-color: #f5f5f5; +} +.note-editor .pagination ul > .active > a, +.note-editor .pagination ul > .active > span { + color: #999999; + cursor: default; +} +.note-editor .pagination ul > .disabled > span, +.note-editor .pagination ul > .disabled > a, +.note-editor .pagination ul > .disabled > a:hover, +.note-editor .pagination ul > .disabled > a:focus { + color: #999999; + background-color: transparent; + cursor: default; +} +.note-editor .pagination ul > li:first-child > a, +.note-editor .pagination ul > li:first-child > span { + border-left-width: 1px; + -webkit-border-top-left-radius: 4px; + -moz-border-radius-topleft: 4px; + border-top-left-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -moz-border-radius-bottomleft: 4px; + border-bottom-left-radius: 4px; +} +.note-editor .pagination ul > li:last-child > a, +.note-editor .pagination ul > li:last-child > span { + -webkit-border-top-right-radius: 4px; + -moz-border-radius-topright: 4px; + border-top-right-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -moz-border-radius-bottomright: 4px; + border-bottom-right-radius: 4px; +} +.note-editor .pagination-centered { + text-align: center; +} +.note-editor .pagination-right { + text-align: right; +} +.note-editor .pagination-large ul > li > a, +.note-editor .pagination-large ul > li > span { + padding: 11px 19px; + font-size: 17.5px; +} +.note-editor .pagination-large ul > li:first-child > a, +.note-editor .pagination-large ul > li:first-child > span { + -webkit-border-top-left-radius: 6px; + -moz-border-radius-topleft: 6px; + border-top-left-radius: 6px; + -webkit-border-bottom-left-radius: 6px; + -moz-border-radius-bottomleft: 6px; + border-bottom-left-radius: 6px; +} +.note-editor .pagination-large ul > li:last-child > a, +.note-editor .pagination-large ul > li:last-child > span { + -webkit-border-top-right-radius: 6px; + -moz-border-radius-topright: 6px; + border-top-right-radius: 6px; + -webkit-border-bottom-right-radius: 6px; + -moz-border-radius-bottomright: 6px; + border-bottom-right-radius: 6px; +} +.note-editor .pagination-mini ul > li:first-child > a, +.note-editor .pagination-small ul > li:first-child > a, +.note-editor .pagination-mini ul > li:first-child > span, +.note-editor .pagination-small ul > li:first-child > span { + -webkit-border-top-left-radius: 3px; + -moz-border-radius-topleft: 3px; + border-top-left-radius: 3px; + -webkit-border-bottom-left-radius: 3px; + -moz-border-radius-bottomleft: 3px; + border-bottom-left-radius: 3px; +} +.note-editor .pagination-mini ul > li:last-child > a, +.note-editor .pagination-small ul > li:last-child > a, +.note-editor .pagination-mini ul > li:last-child > span, +.note-editor .pagination-small ul > li:last-child > span { + -webkit-border-top-right-radius: 3px; + -moz-border-radius-topright: 3px; + border-top-right-radius: 3px; + -webkit-border-bottom-right-radius: 3px; + -moz-border-radius-bottomright: 3px; + border-bottom-right-radius: 3px; +} +.note-editor .pagination-small ul > li > a, +.note-editor .pagination-small ul > li > span { + padding: 2px 10px; + font-size: 11.9px; +} +.note-editor .pagination-mini ul > li > a, +.note-editor .pagination-mini ul > li > span { + padding: 0 6px; + font-size: 10.5px; +} +.note-editor .pager { + margin: 20px 0; + list-style: none; + text-align: center; + *zoom: 1; +} +.note-editor .pager:before, +.note-editor .pager:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .pager:after { + clear: both; +} +.note-editor .pager li { + display: inline; +} +.note-editor .pager li > a, +.note-editor .pager li > span { + display: inline-block; + padding: 5px 14px; + background-color: #fff; + border: 1px solid #ddd; + -webkit-border-radius: 15px; + -moz-border-radius: 15px; + border-radius: 15px; +} +.note-editor .pager li > a:hover, +.note-editor .pager li > a:focus { + text-decoration: none; + background-color: #f5f5f5; +} +.note-editor .pager .next > a, +.note-editor .pager .next > span { + float: right; +} +.note-editor .pager .previous > a, +.note-editor .pager .previous > span { + float: left; +} +.note-editor .pager .disabled > a, +.note-editor .pager .disabled > a:hover, +.note-editor .pager .disabled > a:focus, +.note-editor .pager .disabled > span { + color: #999999; + background-color: #fff; + cursor: default; +} +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000000; +} +.modal-backdrop.fade { + opacity: 0; +} +.modal-backdrop, +.modal-backdrop.fade.in { + opacity: 0.8; + filter: alpha(opacity=80); +} +.note-editor .modal { + position: fixed; + top: 10%; + left: 50%; + z-index: 1050; + width: 640px; + margin-left: -280px; + background-color: #ffffff; + border: 1px solid #999; + border: 1px solid rgba(0, 0, 0, 0.3); + *border: 1px solid #999; + /* IE6-7 */ + + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); + -webkit-background-clip: padding-box; + -moz-background-clip: padding-box; + background-clip: padding-box; + outline: none; +} +.note-editor .modal.fade { + -webkit-transition: opacity .3s linear, top .3s ease-out; + -moz-transition: opacity .3s linear, top .3s ease-out; + -o-transition: opacity .3s linear, top .3s ease-out; + transition: opacity .3s linear, top .3s ease-out; + top: -25%; +} +.note-editor .modal.fade.in { + top: 10%; +} +.note-editor .modal-header { + padding: 9px 15px; + border-bottom: 1px solid #eee; +} +.note-editor .modal-header .close { + margin-top: 2px; +} +.note-editor .modal-header h3 { + margin: 0; + line-height: 30px; +} +.note-editor .modal-body { + position: relative; + overflow-y: auto; + max-height: 600px; + padding: 15px; +} +.note-editor .modal-form { + margin-bottom: 0; +} +.note-editor .modal-footer { + padding: 14px 15px 15px; + margin-bottom: 0; + text-align: right; + background-color: #f5f5f5; + border-top: 1px solid #ddd; + -webkit-border-radius: 0 0 6px 6px; + -moz-border-radius: 0 0 6px 6px; + border-radius: 0 0 6px 6px; + -webkit-box-shadow: inset 0 1px 0 #ffffff; + -moz-box-shadow: inset 0 1px 0 #ffffff; + box-shadow: inset 0 1px 0 #ffffff; + *zoom: 1; +} +.note-editor .modal-footer:before, +.note-editor .modal-footer:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .modal-footer:after { + clear: both; +} +.note-editor .modal-footer .btn + .btn { + margin-left: 5px; + margin-bottom: 0; +} +.note-editor .modal-footer .btn-group .btn + .btn { + margin-left: -1px; +} +.note-editor .modal-footer .btn-block + .btn-block { + margin-left: 0; +} +.tooltip { + position: absolute; + z-index: 10000; + display: block; + visibility: visible; + font-size: 11px; + line-height: 1.4; + opacity: 0; + filter: alpha(opacity=0); +} +.tooltip.in { + opacity: 0.8; + filter: alpha(opacity=80); +} +.tooltip.top { + margin-top: -3px; + padding: 5px 0; +} +.tooltip.right { + margin-left: 3px; + padding: 0 5px; +} +.tooltip.bottom { + margin-top: 3px; + padding: 5px 0; +} +.tooltip.left { + margin-left: -3px; + padding: 0 5px; +} +.tooltip-inner { + max-width: 200px; + padding: 8px; + color: #ffffff; + text-align: center; + text-decoration: none; + background-color: #000000; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.tooltip.top .tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-width: 5px 5px 0; + border-top-color: #000000; +} +.tooltip.right .tooltip-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-width: 5px 5px 5px 0; + border-right-color: #000000; +} +.tooltip.left .tooltip-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-width: 5px 0 5px 5px; + border-left-color: #000000; +} +.tooltip.bottom .tooltip-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000000; +} +.note-editor .popover { + position: absolute; + top: 0; + left: 0; + z-index: 1010; + display: none; + max-width: 276px; + padding: 1px; + text-align: left; + background-color: #ffffff; + -webkit-background-clip: padding-box; + -moz-background-clip: padding; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.2); + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + white-space: normal; +} +.note-editor .popover.top { + margin-top: -10px; +} +.note-editor .popover.right { + margin-left: 10px; +} +.note-editor .popover.bottom { + margin-top: 10px; +} +.note-editor .popover.left { + margin-left: -10px; +} +.note-editor .popover-title { + margin: 0; + padding: 8px 14px; + font-size: 14px; + font-weight: normal; + line-height: 18px; + background-color: #f7f7f7; + border-bottom: 1px solid #ebebeb; + -webkit-border-radius: 5px 5px 0 0; + -moz-border-radius: 5px 5px 0 0; + border-radius: 5px 5px 0 0; +} +.note-editor .popover-title:empty { + display: none; +} +.note-editor .popover-content { + padding: 9px 14px; +} +.note-editor .popover .arrow, +.note-editor .popover .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.note-editor .popover .arrow { + border-width: 11px; +} +.note-editor .popover .arrow:after { + border-width: 10px; + content: ""; +} +.note-editor .popover.top .arrow { + left: 50%; + margin-left: -11px; + border-bottom-width: 0; + border-top-color: #999; + border-top-color: rgba(0, 0, 0, 0.25); + bottom: -11px; +} +.note-editor .popover.top .arrow:after { + bottom: 1px; + margin-left: -10px; + border-bottom-width: 0; + border-top-color: #ffffff; +} +.note-editor .popover.right .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-left-width: 0; + border-right-color: #999; + border-right-color: rgba(0, 0, 0, 0.25); +} +.note-editor .popover.right .arrow:after { + left: 1px; + bottom: -10px; + border-left-width: 0; + border-right-color: #ffffff; +} +.note-editor .popover.bottom .arrow { + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #999; + border-bottom-color: rgba(0, 0, 0, 0.25); + top: -11px; +} +.note-editor .popover.bottom .arrow:after { + top: 1px; + margin-left: -10px; + border-top-width: 0; + border-bottom-color: #ffffff; +} +.note-editor .popover.left .arrow { + top: 50%; + right: -11px; + margin-top: -11px; + border-right-width: 0; + border-left-color: #999; + border-left-color: rgba(0, 0, 0, 0.25); +} +.note-editor .popover.left .arrow:after { + right: 1px; + border-right-width: 0; + border-left-color: #ffffff; + bottom: -10px; +} +.note-editor .thumbnails { + margin-left: -20px; + list-style: none; + *zoom: 1; +} +.note-editor .thumbnails:before, +.note-editor .thumbnails:after { + display: table; + content: ""; + line-height: 0; +} +.note-editor .thumbnails:after { + clear: both; +} +.note-editor .row-fluid .thumbnails { + margin-left: 0; +} +.note-editor .thumbnails > li { + float: left; + margin-bottom: 20px; + margin-left: 20px; +} +.note-editor .thumbnail { + display: block; + padding: 4px; + line-height: 20px; + border: 1px solid #ddd; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055); + -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055); + -webkit-transition: all 0.2s ease-in-out; + -moz-transition: all 0.2s ease-in-out; + -o-transition: all 0.2s ease-in-out; + transition: all 0.2s ease-in-out; +} +.note-editor a.thumbnail:hover, +.note-editor a.thumbnail:focus { + border-color: #0088cc; + -webkit-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); + -moz-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); + box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); +} +.note-editor .thumbnail > img { + display: block; + max-width: 100%; + margin-left: auto; + margin-right: auto; +} +.note-editor .thumbnail .caption { + padding: 9px; + color: #555555; +} +.note-editor .media, +.note-editor .media-body { + overflow: hidden; + *overflow: visible; + zoom: 1; +} +.note-editor .media, +.note-editor .media .media { + margin-top: 15px; +} +.note-editor .media:first-child { + margin-top: 0; +} +.note-editor .media-object { + display: block; +} +.note-editor .media-heading { + margin: 0 0 5px; +} +.note-editor .media > .pull-left { + margin-right: 10px; +} +.note-editor .media > .pull-right { + margin-left: 10px; +} +.note-editor .media-list { + margin-left: 0; + list-style: none; +} +.note-editor .label, +.note-editor .badge { + display: inline-block; + padding: 2px 4px; + font-size: 11.844px; + font-weight: bold; + line-height: 14px; + color: #ffffff; + vertical-align: baseline; + white-space: nowrap; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #999999; +} +.note-editor .label { + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; +} +.note-editor .badge { + padding-left: 9px; + padding-right: 9px; + -webkit-border-radius: 9px; + -moz-border-radius: 9px; + border-radius: 9px; +} +.note-editor .label:empty, +.note-editor .badge:empty { + display: none; +} +.note-editor a.label:hover, +.note-editor a.label:focus, +.note-editor a.badge:hover, +.note-editor a.badge:focus { + color: #ffffff; + text-decoration: none; + cursor: pointer; +} +.note-editor .label-important, +.note-editor .badge-important { + background-color: #b94a48; +} +.note-editor .label-important[href], +.note-editor .badge-important[href] { + background-color: #953b39; +} +.note-editor .label-warning, +.note-editor .badge-warning { + background-color: #f89406; +} +.note-editor .label-warning[href], +.note-editor .badge-warning[href] { + background-color: #c67605; +} +.note-editor .label-success, +.note-editor .badge-success { + background-color: #468847; +} +.note-editor .label-success[href], +.note-editor .badge-success[href] { + background-color: #356635; +} +.note-editor .label-info, +.note-editor .badge-info { + background-color: #3a87ad; +} +.note-editor .label-info[href], +.note-editor .badge-info[href] { + background-color: #2d6987; +} +.note-editor .label-inverse, +.note-editor .badge-inverse { + background-color: #333333; +} +.note-editor .label-inverse[href], +.note-editor .badge-inverse[href] { + background-color: #1a1a1a; +} +.note-editor .btn .label, +.note-editor .btn .badge { + position: relative; + top: -1px; +} +.note-editor .btn-mini .label, +.note-editor .btn-mini .badge { + top: 0; +} +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@-moz-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@-ms-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@-o-keyframes progress-bar-stripes { + from { + background-position: 0 0; + } + to { + background-position: 40px 0; + } +} +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +.note-editor .progress { + overflow: hidden; + height: 20px; + margin-bottom: 20px; + background-color: #f7f7f7; + background-image: -moz-linear-gradient(top, #f5f5f5, #f9f9f9); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f5f5f5), to(#f9f9f9)); + background-image: -webkit-linear-gradient(top, #f5f5f5, #f9f9f9); + background-image: -o-linear-gradient(top, #f5f5f5, #f9f9f9); + background-image: linear-gradient(to bottom, #f5f5f5, #f9f9f9); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#fff9f9f9', GradientType=0); + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); + -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} +.note-editor .progress .bar { + width: 0%; + height: 100%; + color: #ffffff; + float: left; + font-size: 12px; + text-align: center; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #0e90d2; + background-image: -moz-linear-gradient(top, #149bdf, #0480be); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#149bdf), to(#0480be)); + background-image: -webkit-linear-gradient(top, #149bdf, #0480be); + background-image: -o-linear-gradient(top, #149bdf, #0480be); + background-image: linear-gradient(to bottom, #149bdf, #0480be); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf', endColorstr='#ff0480be', GradientType=0); + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + -moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + -webkit-transition: width 0.6s ease; + -moz-transition: width 0.6s ease; + -o-transition: width 0.6s ease; + transition: width 0.6s ease; +} +.note-editor .progress .bar + .bar { + -webkit-box-shadow: inset 1px 0 0 rgba(0,0,0,.15), inset 0 -1px 0 rgba(0,0,0,.15); + -moz-box-shadow: inset 1px 0 0 rgba(0,0,0,.15), inset 0 -1px 0 rgba(0,0,0,.15); + box-shadow: inset 1px 0 0 rgba(0,0,0,.15), inset 0 -1px 0 rgba(0,0,0,.15); +} +.note-editor .progress-striped .bar { + background-color: #149bdf; + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + -webkit-background-size: 40px 40px; + -moz-background-size: 40px 40px; + -o-background-size: 40px 40px; + background-size: 40px 40px; +} +.note-editor .progress.active .bar { + -webkit-animation: progress-bar-stripes 2s linear infinite; + -moz-animation: progress-bar-stripes 2s linear infinite; + -ms-animation: progress-bar-stripes 2s linear infinite; + -o-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite; +} +.note-editor .progress-danger .bar, +.note-editor .progress .bar-danger { + background-color: #dd514c; + background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#c43c35)); + background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35); + background-image: -o-linear-gradient(top, #ee5f5b, #c43c35); + background-image: linear-gradient(to bottom, #ee5f5b, #c43c35); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffc43c35', GradientType=0); +} +.note-editor .progress-danger.progress-striped .bar, +.note-editor .progress-striped .bar-danger { + background-color: #ee5f5b; + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.note-editor .progress-success .bar, +.note-editor .progress .bar-success { + background-color: #5eb95e; + background-image: -moz-linear-gradient(top, #62c462, #57a957); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#57a957)); + background-image: -webkit-linear-gradient(top, #62c462, #57a957); + background-image: -o-linear-gradient(top, #62c462, #57a957); + background-image: linear-gradient(to bottom, #62c462, #57a957); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff57a957', GradientType=0); +} +.note-editor .progress-success.progress-striped .bar, +.note-editor .progress-striped .bar-success { + background-color: #62c462; + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.note-editor .progress-info .bar, +.note-editor .progress .bar-info { + background-color: #4bb1cf; + background-image: -moz-linear-gradient(top, #5bc0de, #339bb9); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#339bb9)); + background-image: -webkit-linear-gradient(top, #5bc0de, #339bb9); + background-image: -o-linear-gradient(top, #5bc0de, #339bb9); + background-image: linear-gradient(to bottom, #5bc0de, #339bb9); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff339bb9', GradientType=0); +} +.note-editor .progress-info.progress-striped .bar, +.note-editor .progress-striped .bar-info { + background-color: #5bc0de; + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.note-editor .progress-warning .bar, +.note-editor .progress .bar-warning { + background-color: #faa732; + background-image: -moz-linear-gradient(top, #fbb450, #f89406); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406)); + background-image: -webkit-linear-gradient(top, #fbb450, #f89406); + background-image: -o-linear-gradient(top, #fbb450, #f89406); + background-image: linear-gradient(to bottom, #fbb450, #f89406); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0); +} +.note-editor .progress-warning.progress-striped .bar, +.note-editor .progress-striped .bar-warning { + background-color: #fbb450; + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.note-editor .accordion { + margin-bottom: 20px; +} +.note-editor .accordion-group { + margin-bottom: 2px; + border: 1px solid #e5e5e5; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; +} +.note-editor .accordion-heading { + border-bottom: 0; +} +.note-editor .accordion-heading .accordion-toggle { + display: block; + padding: 8px 15px; +} +.note-editor .accordion-toggle { + cursor: pointer; +} +.note-editor .accordion-inner { + padding: 9px 15px; + border-top: 1px solid #e5e5e5; +} +.note-editor .carousel { + position: relative; + margin-bottom: 20px; + line-height: 1; +} +.note-editor .carousel-inner { + overflow: hidden; + width: 100%; + position: relative; +} +.note-editor .carousel-inner > .item { + display: none; + position: relative; + -webkit-transition: 0.6s ease-in-out left; + -moz-transition: 0.6s ease-in-out left; + -o-transition: 0.6s ease-in-out left; + transition: 0.6s ease-in-out left; +} +.note-editor .carousel-inner > .item > img, +.note-editor .carousel-inner > .item > a > img { + display: block; + line-height: 1; +} +.note-editor .carousel-inner > .active, +.note-editor .carousel-inner > .next, +.note-editor .carousel-inner > .prev { + display: block; +} +.note-editor .carousel-inner > .active { + left: 0; +} +.note-editor .carousel-inner > .next, +.note-editor .carousel-inner > .prev { + position: absolute; + top: 0; + width: 100%; +} +.note-editor .carousel-inner > .next { + left: 100%; +} +.note-editor .carousel-inner > .prev { + left: -100%; +} +.note-editor .carousel-inner > .next.left, +.note-editor .carousel-inner > .prev.right { + left: 0; +} +.note-editor .carousel-inner > .active.left { + left: -100%; +} +.note-editor .carousel-inner > .active.right { + left: 100%; +} +.note-editor .carousel-control { + position: absolute; + top: 40%; + left: 15px; + width: 40px; + height: 40px; + margin-top: -20px; + font-size: 60px; + font-weight: 100; + line-height: 30px; + color: #ffffff; + text-align: center; + background: #222222; + border: 3px solid #ffffff; + -webkit-border-radius: 23px; + -moz-border-radius: 23px; + border-radius: 23px; + opacity: 0.5; + filter: alpha(opacity=50); +} +.note-editor .carousel-control.right { + left: auto; + right: 15px; +} +.note-editor .carousel-control:hover, +.note-editor .carousel-control:focus { + color: #ffffff; + text-decoration: none; + opacity: 0.9; + filter: alpha(opacity=90); +} +.note-editor .carousel-indicators { + position: absolute; + top: 15px; + right: 15px; + z-index: 5; + margin: 0; + list-style: none; +} +.note-editor .carousel-indicators li { + display: block; + float: left; + width: 10px; + height: 10px; + margin-left: 5px; + text-indent: -999px; + background-color: #ccc; + background-color: rgba(255, 255, 255, 0.25); + border-radius: 5px; +} +.note-editor .carousel-indicators .active { + background-color: #fff; +} +.note-editor .carousel-caption { + position: absolute; + left: 0; + right: 0; + bottom: 0; + padding: 15px; + background: #333333; + background: rgba(0, 0, 0, 0.75); +} +.note-editor .carousel-caption h4, +.note-editor .carousel-caption p { + color: #ffffff; + line-height: 20px; +} +.note-editor .carousel-caption h4 { + margin: 0 0 5px; +} +.note-editor .carousel-caption p { + margin-bottom: 0; +} +.note-editor .hero-unit { + padding: 60px; + margin-bottom: 30px; + font-size: 18px; + font-weight: 200; + line-height: 30px; + color: inherit; + background-color: #eeeeee; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; +} +.note-editor .hero-unit h1 { + margin-bottom: 0; + font-size: 60px; + line-height: 1; + color: inherit; + letter-spacing: -1px; +} +.note-editor .hero-unit li { + line-height: 30px; +} +.note-editor .pull-right { + float: right; +} +.note-editor .pull-left { + float: left; +} +.note-editor .hide { + display: none; +} +.note-editor .show { + display: block; +} +.note-editor .invisible { + visibility: hidden; +} +.note-editor .affix { + position: fixed; +} diff --git a/ajax/libs/summernote/0.5.1/summernote-bs3.css b/ajax/libs/summernote/0.5.1/summernote-bs3.css new file mode 100644 index 000000000..5090cd9fe --- /dev/null +++ b/ajax/libs/summernote/0.5.1/summernote-bs3.css @@ -0,0 +1,5970 @@ +.note-editor { + /*! normalize.css v2.1.3 | MIT License | git.io/normalize */ + +} +.note-editor article, +.note-editor aside, +.note-editor details, +.note-editor figcaption, +.note-editor figure, +.note-editor footer, +.note-editor header, +.note-editor hgroup, +.note-editor main, +.note-editor nav, +.note-editor section, +.note-editor summary { + display: block; +} +.note-editor audio, +.note-editor canvas, +.note-editor video { + display: inline-block; +} +.note-editor audio:not([controls]) { + display: none; + height: 0; +} +.note-editor [hidden], +.note-editor template { + display: none; +} +.note-editor html { + font-family: sans-serif; + -ms-text-size-adjust: 100%; + -webkit-text-size-adjust: 100%; +} +.note-editor body { + margin: 0; +} +.note-editor a { + background: transparent; +} +.note-editor a:focus { + outline: thin dotted; +} +.note-editor a:active, +.note-editor a:hover { + outline: 0; +} +.note-editor h1 { + font-size: 2em; + margin: 0.67em 0; +} +.note-editor abbr[title] { + border-bottom: 1px dotted; +} +.note-editor b, +.note-editor strong { + font-weight: bold; +} +.note-editor dfn { + font-style: italic; +} +.note-editor hr { + -moz-box-sizing: content-box; + box-sizing: content-box; + height: 0; +} +.note-editor mark { + background: #ff0; + color: #000; +} +.note-editor code, +.note-editor kbd, +.note-editor pre, +.note-editor samp { + font-family: monospace, serif; + font-size: 1em; +} +.note-editor pre { + white-space: pre-wrap; +} +.note-editor q { + quotes: "\201C" "\201D" "\2018" "\2019"; +} +.note-editor small { + font-size: 80%; +} +.note-editor sub, +.note-editor sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} +.note-editor sup { + top: -0.5em; +} +.note-editor sub { + bottom: -0.25em; +} +.note-editor img { + border: 0; +} +.note-editor svg:not(:root) { + overflow: hidden; +} +.note-editor figure { + margin: 0; +} +.note-editor fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} +.note-editor legend { + border: 0; + padding: 0; +} +.note-editor button, +.note-editor input, +.note-editor select, +.note-editor textarea { + font-family: inherit; + font-size: 100%; + margin: 0; +} +.note-editor button, +.note-editor input { + line-height: normal; +} +.note-editor button, +.note-editor select { + text-transform: none; +} +.note-editor button, +.note-editor html input[type="button"], +.note-editor input[type="reset"], +.note-editor input[type="submit"] { + -webkit-appearance: button; + cursor: pointer; +} +.note-editor button[disabled], +.note-editor html input[disabled] { + cursor: default; +} +.note-editor input[type="checkbox"], +.note-editor input[type="radio"] { + box-sizing: border-box; + padding: 0; +} +.note-editor input[type="search"] { + -webkit-appearance: textfield; + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + box-sizing: content-box; +} +.note-editor input[type="search"]::-webkit-search-cancel-button, +.note-editor input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +.note-editor button::-moz-focus-inner, +.note-editor input::-moz-focus-inner { + border: 0; + padding: 0; +} +.note-editor textarea { + overflow: auto; + vertical-align: top; +} +.note-editor table { + border-collapse: collapse; + border-spacing: 0; +} +@media print { + .note-editor * { + text-shadow: none !important; + color: #000 !important; + background: transparent !important; + box-shadow: none !important; + } + .note-editor a, + .note-editor a:visited { + text-decoration: underline; + } + .note-editor a[href]:after { + content: " (" attr(href) ")"; + } + .note-editor abbr[title]:after { + content: " (" attr(title) ")"; + } + .note-editor .ir a:after, + .note-editor a[href^="javascript:"]:after, + .note-editor a[href^="#"]:after { + content: ""; + } + .note-editor pre, + .note-editor blockquote { + border: 1px solid #999; + page-break-inside: avoid; + } + .note-editor thead { + display: table-header-group; + } + .note-editor tr, + .note-editor img { + page-break-inside: avoid; + } + .note-editor img { + max-width: 100% !important; + } + @page { + margin: 2cm .5cm; + } + .note-editor p, + .note-editor h2, + .note-editor h3 { + orphans: 3; + widows: 3; + } + .note-editor h2, + .note-editor h3 { + page-break-after: avoid; + } + .note-editor .navbar { + display: none; + } + .note-editor .table td, + .note-editor .table th { + background-color: #fff !important; + } + .note-editor .btn > .caret, + .note-editor .dropup > .btn > .caret { + border-top-color: #000 !important; + } + .note-editor .label { + border: 1px solid #000; + } + .note-editor .table { + border-collapse: collapse !important; + } + .note-editor .table-bordered th, + .note-editor .table-bordered td { + border: 1px solid #ddd !important; + } +} +.note-editor *, +.note-editor *:before, +.note-editor *:after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.note-editor html { + font-size: 62.5%; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} +.note-editor body { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 1.428571429; + color: #333333; + background-color: #ffffff; +} +.note-editor input, +.note-editor button, +.note-editor select, +.note-editor textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} +.note-editor a { + color: #428bca; + text-decoration: none; +} +.note-editor a:hover, +.note-editor a:focus { + color: #2a6496; + text-decoration: underline; +} +.note-editor a:focus { + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.note-editor img { + vertical-align: middle; +} +.note-editor .img-responsive { + display: block; + max-width: 100%; + height: auto; +} +.note-editor .img-rounded { + border-radius: 6px; +} +.note-editor .img-thumbnail { + padding: 4px; + line-height: 1.428571429; + background-color: #ffffff; + border: 1px solid #dddddd; + border-radius: 4px; + -webkit-transition: all 0.2s ease-in-out; + transition: all 0.2s ease-in-out; + display: inline-block; + max-width: 100%; + height: auto; +} +.note-editor .img-circle { + border-radius: 50%; +} +.note-editor hr { + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #eeeeee; +} +.note-editor .sr-only { + position: absolute; + width: 1px; + height: 1px; + margin: -1px; + padding: 0; + overflow: hidden; + clip: rect(0, 0, 0, 0); + border: 0; +} +.note-editor p { + margin: 0 0 10px; +} +.note-editor .lead { + margin-bottom: 20px; + font-size: 16px; + font-weight: 200; + line-height: 1.4; +} +@media (min-width: 768px) { + .note-editor .lead { + font-size: 21px; + } +} +.note-editor small, +.note-editor .small { + font-size: 85%; +} +.note-editor cite { + font-style: normal; +} +.note-editor .text-muted { + color: #999999; +} +.note-editor .text-primary { + color: #428bca; +} +.note-editor .text-primary:hover { + color: #3071a9; +} +.note-editor .text-warning { + color: #c09853; +} +.note-editor .text-warning:hover { + color: #a47e3c; +} +.note-editor .text-danger { + color: #b94a48; +} +.note-editor .text-danger:hover { + color: #953b39; +} +.note-editor .text-success { + color: #468847; +} +.note-editor .text-success:hover { + color: #356635; +} +.note-editor .text-info { + color: #3a87ad; +} +.note-editor .text-info:hover { + color: #2d6987; +} +.note-editor .text-left { + text-align: left; +} +.note-editor .text-right { + text-align: right; +} +.note-editor .text-center { + text-align: center; +} +.note-editor h1, +.note-editor h2, +.note-editor h3, +.note-editor h4, +.note-editor h5, +.note-editor h6, +.note-editor .h1, +.note-editor .h2, +.note-editor .h3, +.note-editor .h4, +.note-editor .h5, +.note-editor .h6 { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-weight: 500; + line-height: 1.1; + color: inherit; +} +.note-editor h1 small, +.note-editor h2 small, +.note-editor h3 small, +.note-editor h4 small, +.note-editor h5 small, +.note-editor h6 small, +.note-editor .h1 small, +.note-editor .h2 small, +.note-editor .h3 small, +.note-editor .h4 small, +.note-editor .h5 small, +.note-editor .h6 small, +.note-editor h1 .small, +.note-editor h2 .small, +.note-editor h3 .small, +.note-editor h4 .small, +.note-editor h5 .small, +.note-editor h6 .small, +.note-editor .h1 .small, +.note-editor .h2 .small, +.note-editor .h3 .small, +.note-editor .h4 .small, +.note-editor .h5 .small, +.note-editor .h6 .small { + font-weight: normal; + line-height: 1; + color: #999999; +} +.note-editor h1, +.note-editor h2, +.note-editor h3 { + margin-top: 20px; + margin-bottom: 10px; +} +.note-editor h1 small, +.note-editor h2 small, +.note-editor h3 small, +.note-editor h1 .small, +.note-editor h2 .small, +.note-editor h3 .small { + font-size: 65%; +} +.note-editor h4, +.note-editor h5, +.note-editor h6 { + margin-top: 10px; + margin-bottom: 10px; +} +.note-editor h4 small, +.note-editor h5 small, +.note-editor h6 small, +.note-editor h4 .small, +.note-editor h5 .small, +.note-editor h6 .small { + font-size: 75%; +} +.note-editor h1, +.note-editor .h1 { + font-size: 36px; +} +.note-editor h2, +.note-editor .h2 { + font-size: 30px; +} +.note-editor h3, +.note-editor .h3 { + font-size: 24px; +} +.note-editor h4, +.note-editor .h4 { + font-size: 18px; +} +.note-editor h5, +.note-editor .h5 { + font-size: 14px; +} +.note-editor h6, +.note-editor .h6 { + font-size: 12px; +} +.note-editor .page-header { + padding-bottom: 9px; + margin: 40px 0 20px; + border-bottom: 1px solid #eeeeee; +} +.note-editor ul, +.note-editor ol { + margin-top: 0; + margin-bottom: 10px; +} +.note-editor ul ul, +.note-editor ol ul, +.note-editor ul ol, +.note-editor ol ol { + margin-bottom: 0; +} +.note-editor .list-unstyled { + padding-left: 0; + list-style: none; +} +.note-editor .list-inline { + padding-left: 0; + list-style: none; +} +.note-editor .list-inline > li { + display: inline-block; + padding-left: 5px; + padding-right: 5px; +} +.note-editor dl { + margin-bottom: 20px; +} +.note-editor dt, +.note-editor dd { + line-height: 1.428571429; +} +.note-editor dt { + font-weight: bold; +} +.note-editor dd { + margin-left: 0; +} +@media (min-width: 768px) { + .note-editor .dl-horizontal dt { + float: left; + width: 160px; + clear: left; + text-align: right; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + .note-editor .dl-horizontal dd { + margin-left: 180px; + } + .note-editor .dl-horizontal dd:before, + .note-editor .dl-horizontal dd:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + + } + .note-editor .dl-horizontal dd:after { + clear: both; + } + .note-editor .dl-horizontal dd:before, + .note-editor .dl-horizontal dd:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + + } + .note-editor .dl-horizontal dd:after { + clear: both; + } +} +.note-editor abbr[title], +.note-editor abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #999999; +} +.note-editor abbr.initialism { + font-size: 90%; + text-transform: uppercase; +} +.note-editor blockquote { + padding: 10px 20px; + margin: 0 0 20px; + border-left: 5px solid #eeeeee; +} +.note-editor blockquote p { + font-size: 17.5px; + font-weight: 300; + line-height: 1.25; +} +.note-editor blockquote p:last-child { + margin-bottom: 0; +} +.note-editor blockquote small { + display: block; + line-height: 1.428571429; + color: #999999; +} +.note-editor blockquote small:before { + content: '\2014 \00A0'; +} +.note-editor blockquote.pull-right { + padding-right: 15px; + padding-left: 0; + border-right: 5px solid #eeeeee; + border-left: 0; +} +.note-editor blockquote.pull-right p, +.note-editor blockquote.pull-right small, +.note-editor blockquote.pull-right .small { + text-align: right; +} +.note-editor blockquote.pull-right small:before, +.note-editor blockquote.pull-right .small:before { + content: ''; +} +.note-editor blockquote.pull-right small:after, +.note-editor blockquote.pull-right .small:after { + content: '\00A0 \2014'; +} +.note-editor blockquote:before, +.note-editor blockquote:after { + content: ""; +} +.note-editor address { + margin-bottom: 20px; + font-style: normal; + line-height: 1.428571429; +} +.note-editor code, +.note-editor kdb, +.note-editor pre, +.note-editor samp { + font-family: Monaco, Menlo, Consolas, "Courier New", monospace; +} +.note-editor code { + padding: 2px 4px; + font-size: 90%; + color: #c7254e; + background-color: #f9f2f4; + white-space: nowrap; + border-radius: 4px; +} +.note-editor pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 1.428571429; + word-break: break-all; + word-wrap: break-word; + color: #333333; + background-color: #f5f5f5; + border: 1px solid #cccccc; + border-radius: 4px; +} +.note-editor pre code { + padding: 0; + font-size: inherit; + color: inherit; + white-space: pre-wrap; + background-color: transparent; + border-radius: 0; +} +.note-editor .pre-scrollable { + max-height: 340px; + overflow-y: scroll; +} +.note-editor .container { + margin-right: auto; + margin-left: auto; + padding-left: 15px; + padding-right: 15px; +} +.note-editor .container:before, +.note-editor .container:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .container:after { + clear: both; +} +.note-editor .container:before, +.note-editor .container:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .container:after { + clear: both; +} +.note-editor .row { + margin-left: -15px; + margin-right: -15px; +} +.note-editor .row:before, +.note-editor .row:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .row:after { + clear: both; +} +.note-editor .row:before, +.note-editor .row:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .row:after { + clear: both; +} +.note-editor .col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { + position: relative; + min-height: 1px; + padding-left: 15px; + padding-right: 15px; +} +.note-editor .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 { + float: left; +} +.note-editor .col-xs-12 { + width: 100%; +} +.note-editor .col-xs-11 { + width: 91.66666666666666%; +} +.note-editor .col-xs-10 { + width: 83.33333333333334%; +} +.note-editor .col-xs-9 { + width: 75%; +} +.note-editor .col-xs-8 { + width: 66.66666666666666%; +} +.note-editor .col-xs-7 { + width: 58.333333333333336%; +} +.note-editor .col-xs-6 { + width: 50%; +} +.note-editor .col-xs-5 { + width: 41.66666666666667%; +} +.note-editor .col-xs-4 { + width: 33.33333333333333%; +} +.note-editor .col-xs-3 { + width: 25%; +} +.note-editor .col-xs-2 { + width: 16.666666666666664%; +} +.note-editor .col-xs-1 { + width: 8.333333333333332%; +} +.note-editor .col-xs-pull-12 { + right: 100%; +} +.note-editor .col-xs-pull-11 { + right: 91.66666666666666%; +} +.note-editor .col-xs-pull-10 { + right: 83.33333333333334%; +} +.note-editor .col-xs-pull-9 { + right: 75%; +} +.note-editor .col-xs-pull-8 { + right: 66.66666666666666%; +} +.note-editor .col-xs-pull-7 { + right: 58.333333333333336%; +} +.note-editor .col-xs-pull-6 { + right: 50%; +} +.note-editor .col-xs-pull-5 { + right: 41.66666666666667%; +} +.note-editor .col-xs-pull-4 { + right: 33.33333333333333%; +} +.note-editor .col-xs-pull-3 { + right: 25%; +} +.note-editor .col-xs-pull-2 { + right: 16.666666666666664%; +} +.note-editor .col-xs-pull-1 { + right: 8.333333333333332%; +} +.note-editor .col-xs-push-12 { + left: 100%; +} +.note-editor .col-xs-push-11 { + left: 91.66666666666666%; +} +.note-editor .col-xs-push-10 { + left: 83.33333333333334%; +} +.note-editor .col-xs-push-9 { + left: 75%; +} +.note-editor .col-xs-push-8 { + left: 66.66666666666666%; +} +.note-editor .col-xs-push-7 { + left: 58.333333333333336%; +} +.note-editor .col-xs-push-6 { + left: 50%; +} +.note-editor .col-xs-push-5 { + left: 41.66666666666667%; +} +.note-editor .col-xs-push-4 { + left: 33.33333333333333%; +} +.note-editor .col-xs-push-3 { + left: 25%; +} +.note-editor .col-xs-push-2 { + left: 16.666666666666664%; +} +.note-editor .col-xs-push-1 { + left: 8.333333333333332%; +} +.note-editor .col-xs-offset-12 { + margin-left: 100%; +} +.note-editor .col-xs-offset-11 { + margin-left: 91.66666666666666%; +} +.note-editor .col-xs-offset-10 { + margin-left: 83.33333333333334%; +} +.note-editor .col-xs-offset-9 { + margin-left: 75%; +} +.note-editor .col-xs-offset-8 { + margin-left: 66.66666666666666%; +} +.note-editor .col-xs-offset-7 { + margin-left: 58.333333333333336%; +} +.note-editor .col-xs-offset-6 { + margin-left: 50%; +} +.note-editor .col-xs-offset-5 { + margin-left: 41.66666666666667%; +} +.note-editor .col-xs-offset-4 { + margin-left: 33.33333333333333%; +} +.note-editor .col-xs-offset-3 { + margin-left: 25%; +} +.note-editor .col-xs-offset-2 { + margin-left: 16.666666666666664%; +} +.note-editor .col-xs-offset-1 { + margin-left: 8.333333333333332%; +} +@media (min-width: 768px) { + .note-editor .container { + width: 750px; + } + .note-editor .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 { + float: left; + } + .note-editor .col-sm-12 { + width: 100%; + } + .note-editor .col-sm-11 { + width: 91.66666666666666%; + } + .note-editor .col-sm-10 { + width: 83.33333333333334%; + } + .note-editor .col-sm-9 { + width: 75%; + } + .note-editor .col-sm-8 { + width: 66.66666666666666%; + } + .note-editor .col-sm-7 { + width: 58.333333333333336%; + } + .note-editor .col-sm-6 { + width: 50%; + } + .note-editor .col-sm-5 { + width: 41.66666666666667%; + } + .note-editor .col-sm-4 { + width: 33.33333333333333%; + } + .note-editor .col-sm-3 { + width: 25%; + } + .note-editor .col-sm-2 { + width: 16.666666666666664%; + } + .note-editor .col-sm-1 { + width: 8.333333333333332%; + } + .note-editor .col-sm-pull-12 { + right: 100%; + } + .note-editor .col-sm-pull-11 { + right: 91.66666666666666%; + } + .note-editor .col-sm-pull-10 { + right: 83.33333333333334%; + } + .note-editor .col-sm-pull-9 { + right: 75%; + } + .note-editor .col-sm-pull-8 { + right: 66.66666666666666%; + } + .note-editor .col-sm-pull-7 { + right: 58.333333333333336%; + } + .note-editor .col-sm-pull-6 { + right: 50%; + } + .note-editor .col-sm-pull-5 { + right: 41.66666666666667%; + } + .note-editor .col-sm-pull-4 { + right: 33.33333333333333%; + } + .note-editor .col-sm-pull-3 { + right: 25%; + } + .note-editor .col-sm-pull-2 { + right: 16.666666666666664%; + } + .note-editor .col-sm-pull-1 { + right: 8.333333333333332%; + } + .note-editor .col-sm-push-12 { + left: 100%; + } + .note-editor .col-sm-push-11 { + left: 91.66666666666666%; + } + .note-editor .col-sm-push-10 { + left: 83.33333333333334%; + } + .note-editor .col-sm-push-9 { + left: 75%; + } + .note-editor .col-sm-push-8 { + left: 66.66666666666666%; + } + .note-editor .col-sm-push-7 { + left: 58.333333333333336%; + } + .note-editor .col-sm-push-6 { + left: 50%; + } + .note-editor .col-sm-push-5 { + left: 41.66666666666667%; + } + .note-editor .col-sm-push-4 { + left: 33.33333333333333%; + } + .note-editor .col-sm-push-3 { + left: 25%; + } + .note-editor .col-sm-push-2 { + left: 16.666666666666664%; + } + .note-editor .col-sm-push-1 { + left: 8.333333333333332%; + } + .note-editor .col-sm-offset-12 { + margin-left: 100%; + } + .note-editor .col-sm-offset-11 { + margin-left: 91.66666666666666%; + } + .note-editor .col-sm-offset-10 { + margin-left: 83.33333333333334%; + } + .note-editor .col-sm-offset-9 { + margin-left: 75%; + } + .note-editor .col-sm-offset-8 { + margin-left: 66.66666666666666%; + } + .note-editor .col-sm-offset-7 { + margin-left: 58.333333333333336%; + } + .note-editor .col-sm-offset-6 { + margin-left: 50%; + } + .note-editor .col-sm-offset-5 { + margin-left: 41.66666666666667%; + } + .note-editor .col-sm-offset-4 { + margin-left: 33.33333333333333%; + } + .note-editor .col-sm-offset-3 { + margin-left: 25%; + } + .note-editor .col-sm-offset-2 { + margin-left: 16.666666666666664%; + } + .note-editor .col-sm-offset-1 { + margin-left: 8.333333333333332%; + } +} +@media (min-width: 992px) { + .note-editor .container { + width: 970px; + } + .note-editor .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 { + float: left; + } + .note-editor .col-md-12 { + width: 100%; + } + .note-editor .col-md-11 { + width: 91.66666666666666%; + } + .note-editor .col-md-10 { + width: 83.33333333333334%; + } + .note-editor .col-md-9 { + width: 75%; + } + .note-editor .col-md-8 { + width: 66.66666666666666%; + } + .note-editor .col-md-7 { + width: 58.333333333333336%; + } + .note-editor .col-md-6 { + width: 50%; + } + .note-editor .col-md-5 { + width: 41.66666666666667%; + } + .note-editor .col-md-4 { + width: 33.33333333333333%; + } + .note-editor .col-md-3 { + width: 25%; + } + .note-editor .col-md-2 { + width: 16.666666666666664%; + } + .note-editor .col-md-1 { + width: 8.333333333333332%; + } + .note-editor .col-md-pull-12 { + right: 100%; + } + .note-editor .col-md-pull-11 { + right: 91.66666666666666%; + } + .note-editor .col-md-pull-10 { + right: 83.33333333333334%; + } + .note-editor .col-md-pull-9 { + right: 75%; + } + .note-editor .col-md-pull-8 { + right: 66.66666666666666%; + } + .note-editor .col-md-pull-7 { + right: 58.333333333333336%; + } + .note-editor .col-md-pull-6 { + right: 50%; + } + .note-editor .col-md-pull-5 { + right: 41.66666666666667%; + } + .note-editor .col-md-pull-4 { + right: 33.33333333333333%; + } + .note-editor .col-md-pull-3 { + right: 25%; + } + .note-editor .col-md-pull-2 { + right: 16.666666666666664%; + } + .note-editor .col-md-pull-1 { + right: 8.333333333333332%; + } + .note-editor .col-md-push-12 { + left: 100%; + } + .note-editor .col-md-push-11 { + left: 91.66666666666666%; + } + .note-editor .col-md-push-10 { + left: 83.33333333333334%; + } + .note-editor .col-md-push-9 { + left: 75%; + } + .note-editor .col-md-push-8 { + left: 66.66666666666666%; + } + .note-editor .col-md-push-7 { + left: 58.333333333333336%; + } + .note-editor .col-md-push-6 { + left: 50%; + } + .note-editor .col-md-push-5 { + left: 41.66666666666667%; + } + .note-editor .col-md-push-4 { + left: 33.33333333333333%; + } + .note-editor .col-md-push-3 { + left: 25%; + } + .note-editor .col-md-push-2 { + left: 16.666666666666664%; + } + .note-editor .col-md-push-1 { + left: 8.333333333333332%; + } + .note-editor .col-md-offset-12 { + margin-left: 100%; + } + .note-editor .col-md-offset-11 { + margin-left: 91.66666666666666%; + } + .note-editor .col-md-offset-10 { + margin-left: 83.33333333333334%; + } + .note-editor .col-md-offset-9 { + margin-left: 75%; + } + .note-editor .col-md-offset-8 { + margin-left: 66.66666666666666%; + } + .note-editor .col-md-offset-7 { + margin-left: 58.333333333333336%; + } + .note-editor .col-md-offset-6 { + margin-left: 50%; + } + .note-editor .col-md-offset-5 { + margin-left: 41.66666666666667%; + } + .note-editor .col-md-offset-4 { + margin-left: 33.33333333333333%; + } + .note-editor .col-md-offset-3 { + margin-left: 25%; + } + .note-editor .col-md-offset-2 { + margin-left: 16.666666666666664%; + } + .note-editor .col-md-offset-1 { + margin-left: 8.333333333333332%; + } +} +@media (min-width: 1200px) { + .note-editor .container { + width: 1170px; + } + .note-editor .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 { + float: left; + } + .note-editor .col-lg-12 { + width: 100%; + } + .note-editor .col-lg-11 { + width: 91.66666666666666%; + } + .note-editor .col-lg-10 { + width: 83.33333333333334%; + } + .note-editor .col-lg-9 { + width: 75%; + } + .note-editor .col-lg-8 { + width: 66.66666666666666%; + } + .note-editor .col-lg-7 { + width: 58.333333333333336%; + } + .note-editor .col-lg-6 { + width: 50%; + } + .note-editor .col-lg-5 { + width: 41.66666666666667%; + } + .note-editor .col-lg-4 { + width: 33.33333333333333%; + } + .note-editor .col-lg-3 { + width: 25%; + } + .note-editor .col-lg-2 { + width: 16.666666666666664%; + } + .note-editor .col-lg-1 { + width: 8.333333333333332%; + } + .note-editor .col-lg-pull-12 { + right: 100%; + } + .note-editor .col-lg-pull-11 { + right: 91.66666666666666%; + } + .note-editor .col-lg-pull-10 { + right: 83.33333333333334%; + } + .note-editor .col-lg-pull-9 { + right: 75%; + } + .note-editor .col-lg-pull-8 { + right: 66.66666666666666%; + } + .note-editor .col-lg-pull-7 { + right: 58.333333333333336%; + } + .note-editor .col-lg-pull-6 { + right: 50%; + } + .note-editor .col-lg-pull-5 { + right: 41.66666666666667%; + } + .note-editor .col-lg-pull-4 { + right: 33.33333333333333%; + } + .note-editor .col-lg-pull-3 { + right: 25%; + } + .note-editor .col-lg-pull-2 { + right: 16.666666666666664%; + } + .note-editor .col-lg-pull-1 { + right: 8.333333333333332%; + } + .note-editor .col-lg-push-12 { + left: 100%; + } + .note-editor .col-lg-push-11 { + left: 91.66666666666666%; + } + .note-editor .col-lg-push-10 { + left: 83.33333333333334%; + } + .note-editor .col-lg-push-9 { + left: 75%; + } + .note-editor .col-lg-push-8 { + left: 66.66666666666666%; + } + .note-editor .col-lg-push-7 { + left: 58.333333333333336%; + } + .note-editor .col-lg-push-6 { + left: 50%; + } + .note-editor .col-lg-push-5 { + left: 41.66666666666667%; + } + .note-editor .col-lg-push-4 { + left: 33.33333333333333%; + } + .note-editor .col-lg-push-3 { + left: 25%; + } + .note-editor .col-lg-push-2 { + left: 16.666666666666664%; + } + .note-editor .col-lg-push-1 { + left: 8.333333333333332%; + } + .note-editor .col-lg-offset-12 { + margin-left: 100%; + } + .note-editor .col-lg-offset-11 { + margin-left: 91.66666666666666%; + } + .note-editor .col-lg-offset-10 { + margin-left: 83.33333333333334%; + } + .note-editor .col-lg-offset-9 { + margin-left: 75%; + } + .note-editor .col-lg-offset-8 { + margin-left: 66.66666666666666%; + } + .note-editor .col-lg-offset-7 { + margin-left: 58.333333333333336%; + } + .note-editor .col-lg-offset-6 { + margin-left: 50%; + } + .note-editor .col-lg-offset-5 { + margin-left: 41.66666666666667%; + } + .note-editor .col-lg-offset-4 { + margin-left: 33.33333333333333%; + } + .note-editor .col-lg-offset-3 { + margin-left: 25%; + } + .note-editor .col-lg-offset-2 { + margin-left: 16.666666666666664%; + } + .note-editor .col-lg-offset-1 { + margin-left: 8.333333333333332%; + } +} +.note-editor table { + max-width: 100%; + background-color: transparent; +} +.note-editor th { + text-align: left; +} +.note-editor .table { + width: 100%; + margin-bottom: 20px; +} +.note-editor .table > thead > tr > th, +.note-editor .table > tbody > tr > th, +.note-editor .table > tfoot > tr > th, +.note-editor .table > thead > tr > td, +.note-editor .table > tbody > tr > td, +.note-editor .table > tfoot > tr > td { + padding: 8px; + line-height: 1.428571429; + vertical-align: top; + border-top: 1px solid #dddddd; +} +.note-editor .table > thead > tr > th { + vertical-align: bottom; + border-bottom: 2px solid #dddddd; +} +.note-editor .table > caption + thead > tr:first-child > th, +.note-editor .table > colgroup + thead > tr:first-child > th, +.note-editor .table > thead:first-child > tr:first-child > th, +.note-editor .table > caption + thead > tr:first-child > td, +.note-editor .table > colgroup + thead > tr:first-child > td, +.note-editor .table > thead:first-child > tr:first-child > td { + border-top: 0; +} +.note-editor .table > tbody + tbody { + border-top: 2px solid #dddddd; +} +.note-editor .table .table { + background-color: #ffffff; +} +.note-editor .table-condensed > thead > tr > th, +.note-editor .table-condensed > tbody > tr > th, +.note-editor .table-condensed > tfoot > tr > th, +.note-editor .table-condensed > thead > tr > td, +.note-editor .table-condensed > tbody > tr > td, +.note-editor .table-condensed > tfoot > tr > td { + padding: 5px; +} +.note-editor .table-bordered { + border: 1px solid #dddddd; +} +.note-editor .table-bordered > thead > tr > th, +.note-editor .table-bordered > tbody > tr > th, +.note-editor .table-bordered > tfoot > tr > th, +.note-editor .table-bordered > thead > tr > td, +.note-editor .table-bordered > tbody > tr > td, +.note-editor .table-bordered > tfoot > tr > td { + border: 1px solid #dddddd; +} +.note-editor .table-bordered > thead > tr > th, +.note-editor .table-bordered > thead > tr > td { + border-bottom-width: 2px; +} +.note-editor .table-striped > tbody > tr:nth-child(odd) > td, +.note-editor .table-striped > tbody > tr:nth-child(odd) > th { + background-color: #f9f9f9; +} +.note-editor .table-hover > tbody > tr:hover > td, +.note-editor .table-hover > tbody > tr:hover > th { + background-color: #f5f5f5; +} +.note-editor table col[class*="col-"] { + float: none; + display: table-column; +} +.note-editor table td[class*="col-"], +.note-editor table th[class*="col-"] { + float: none; + display: table-cell; +} +.note-editor .table > thead > tr > td.active, +.note-editor .table > tbody > tr > td.active, +.note-editor .table > tfoot > tr > td.active, +.note-editor .table > thead > tr > th.active, +.note-editor .table > tbody > tr > th.active, +.note-editor .table > tfoot > tr > th.active, +.note-editor .table > thead > tr.active > td, +.note-editor .table > tbody > tr.active > td, +.note-editor .table > tfoot > tr.active > td, +.note-editor .table > thead > tr.active > th, +.note-editor .table > tbody > tr.active > th, +.note-editor .table > tfoot > tr.active > th { + background-color: #f5f5f5; +} +.note-editor .table > thead > tr > td.success, +.note-editor .table > tbody > tr > td.success, +.note-editor .table > tfoot > tr > td.success, +.note-editor .table > thead > tr > th.success, +.note-editor .table > tbody > tr > th.success, +.note-editor .table > tfoot > tr > th.success, +.note-editor .table > thead > tr.success > td, +.note-editor .table > tbody > tr.success > td, +.note-editor .table > tfoot > tr.success > td, +.note-editor .table > thead > tr.success > th, +.note-editor .table > tbody > tr.success > th, +.note-editor .table > tfoot > tr.success > th { + background-color: #dff0d8; + border-color: #d6e9c6; +} +.note-editor .table-hover > tbody > tr > td.success:hover, +.note-editor .table-hover > tbody > tr > th.success:hover, +.note-editor .table-hover > tbody > tr.success:hover > td, +.note-editor .table-hover > tbody > tr.success:hover > th { + background-color: #d0e9c6; + border-color: #c9e2b3; +} +.note-editor .table > thead > tr > td.danger, +.note-editor .table > tbody > tr > td.danger, +.note-editor .table > tfoot > tr > td.danger, +.note-editor .table > thead > tr > th.danger, +.note-editor .table > tbody > tr > th.danger, +.note-editor .table > tfoot > tr > th.danger, +.note-editor .table > thead > tr.danger > td, +.note-editor .table > tbody > tr.danger > td, +.note-editor .table > tfoot > tr.danger > td, +.note-editor .table > thead > tr.danger > th, +.note-editor .table > tbody > tr.danger > th, +.note-editor .table > tfoot > tr.danger > th { + background-color: #f2dede; + border-color: #ebccd1; +} +.note-editor .table-hover > tbody > tr > td.danger:hover, +.note-editor .table-hover > tbody > tr > th.danger:hover, +.note-editor .table-hover > tbody > tr.danger:hover > td, +.note-editor .table-hover > tbody > tr.danger:hover > th { + background-color: #ebcccc; + border-color: #e4b9c0; +} +.note-editor .table > thead > tr > td.warning, +.note-editor .table > tbody > tr > td.warning, +.note-editor .table > tfoot > tr > td.warning, +.note-editor .table > thead > tr > th.warning, +.note-editor .table > tbody > tr > th.warning, +.note-editor .table > tfoot > tr > th.warning, +.note-editor .table > thead > tr.warning > td, +.note-editor .table > tbody > tr.warning > td, +.note-editor .table > tfoot > tr.warning > td, +.note-editor .table > thead > tr.warning > th, +.note-editor .table > tbody > tr.warning > th, +.note-editor .table > tfoot > tr.warning > th { + background-color: #fcf8e3; + border-color: #faebcc; +} +.note-editor .table-hover > tbody > tr > td.warning:hover, +.note-editor .table-hover > tbody > tr > th.warning:hover, +.note-editor .table-hover > tbody > tr.warning:hover > td, +.note-editor .table-hover > tbody > tr.warning:hover > th { + background-color: #faf2cc; + border-color: #f7e1b5; +} +@media (max-width: 767px) { + .note-editor .table-responsive { + width: 100%; + margin-bottom: 15px; + overflow-y: hidden; + overflow-x: scroll; + -ms-overflow-style: -ms-autohiding-scrollbar; + border: 1px solid #dddddd; + -webkit-overflow-scrolling: touch; + } + .note-editor .table-responsive > .table { + margin-bottom: 0; + } + .note-editor .table-responsive > .table > thead > tr > th, + .note-editor .table-responsive > .table > tbody > tr > th, + .note-editor .table-responsive > .table > tfoot > tr > th, + .note-editor .table-responsive > .table > thead > tr > td, + .note-editor .table-responsive > .table > tbody > tr > td, + .note-editor .table-responsive > .table > tfoot > tr > td { + white-space: nowrap; + } + .note-editor .table-responsive > .table-bordered { + border: 0; + } + .note-editor .table-responsive > .table-bordered > thead > tr > th:first-child, + .note-editor .table-responsive > .table-bordered > tbody > tr > th:first-child, + .note-editor .table-responsive > .table-bordered > tfoot > tr > th:first-child, + .note-editor .table-responsive > .table-bordered > thead > tr > td:first-child, + .note-editor .table-responsive > .table-bordered > tbody > tr > td:first-child, + .note-editor .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; + } + .note-editor .table-responsive > .table-bordered > thead > tr > th:last-child, + .note-editor .table-responsive > .table-bordered > tbody > tr > th:last-child, + .note-editor .table-responsive > .table-bordered > tfoot > tr > th:last-child, + .note-editor .table-responsive > .table-bordered > thead > tr > td:last-child, + .note-editor .table-responsive > .table-bordered > tbody > tr > td:last-child, + .note-editor .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; + } + .note-editor .table-responsive > .table-bordered > tbody > tr:last-child > th, + .note-editor .table-responsive > .table-bordered > tfoot > tr:last-child > th, + .note-editor .table-responsive > .table-bordered > tbody > tr:last-child > td, + .note-editor .table-responsive > .table-bordered > tfoot > tr:last-child > td { + border-bottom: 0; + } +} +.note-editor fieldset { + padding: 0; + margin: 0; + border: 0; +} +.note-editor legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: inherit; + color: #333333; + border: 0; + border-bottom: 1px solid #e5e5e5; +} +.note-editor label { + display: inline-block; + margin-bottom: 5px; + font-weight: bold; +} +.note-editor input[type="search"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.note-editor input[type="radio"], +.note-editor input[type="checkbox"] { + margin: 4px 0 0; + margin-top: 1px \9; + /* IE8-9 */ + + line-height: normal; +} +.note-editor input[type="file"] { + display: block; +} +.note-editor select[multiple], +.note-editor select[size] { + height: auto; +} +.note-editor select optgroup { + font-size: inherit; + font-style: inherit; + font-family: inherit; +} +.note-editor input[type="file"]:focus, +.note-editor input[type="radio"]:focus, +.note-editor input[type="checkbox"]:focus { + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.note-editor input[type="number"]::-webkit-outer-spin-button, +.note-editor input[type="number"]::-webkit-inner-spin-button { + height: auto; +} +.note-editor output { + display: block; + padding-top: 7px; + font-size: 14px; + line-height: 1.428571429; + color: #555555; + vertical-align: middle; +} +.note-editor .form-control:-moz-placeholder { + color: #999999; +} +.note-editor .form-control::-moz-placeholder { + color: #999999; +} +.note-editor .form-control:-ms-input-placeholder { + color: #999999; +} +.note-editor .form-control::-webkit-input-placeholder { + color: #999999; +} +.note-editor .form-control { + display: block; + width: 100%; + height: 34px; + padding: 6px 12px; + font-size: 14px; + line-height: 1.428571429; + color: #555555; + vertical-align: middle; + background-color: #ffffff; + background-image: none; + border: 1px solid #cccccc; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; +} +.note-editor .form-control:focus { + border-color: #66afe9; + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6); +} +.note-editor .form-control[disabled], +.note-editor .form-control[readonly], +fieldset[disabled] .note-editor .form-control { + cursor: not-allowed; + background-color: #eeeeee; +} +textarea.note-editor .form-control { + height: auto; +} +.note-editor .form-group { + margin-bottom: 15px; +} +.note-editor .radio, +.note-editor .checkbox { + display: block; + min-height: 20px; + margin-top: 10px; + margin-bottom: 10px; + padding-left: 20px; + vertical-align: middle; +} +.note-editor .radio label, +.note-editor .checkbox label { + display: inline; + margin-bottom: 0; + font-weight: normal; + cursor: pointer; +} +.note-editor .radio input[type="radio"], +.note-editor .radio-inline input[type="radio"], +.note-editor .checkbox input[type="checkbox"], +.note-editor .checkbox-inline input[type="checkbox"] { + float: left; + margin-left: -20px; +} +.note-editor .radio + .radio, +.note-editor .checkbox + .checkbox { + margin-top: -5px; +} +.note-editor .radio-inline, +.note-editor .checkbox-inline { + display: inline-block; + padding-left: 20px; + margin-bottom: 0; + vertical-align: middle; + font-weight: normal; + cursor: pointer; +} +.note-editor .radio-inline + .radio-inline, +.note-editor .checkbox-inline + .checkbox-inline { + margin-top: 0; + margin-left: 10px; +} +.note-editor input[type="radio"][disabled], +.note-editor input[type="checkbox"][disabled], +.note-editor .radio[disabled], +.note-editor .radio-inline[disabled], +.note-editor .checkbox[disabled], +.note-editor .checkbox-inline[disabled], +fieldset[disabled] .note-editor input[type="radio"], +fieldset[disabled] .note-editor input[type="checkbox"], +fieldset[disabled] .note-editor .radio, +fieldset[disabled] .note-editor .radio-inline, +fieldset[disabled] .note-editor .checkbox, +fieldset[disabled] .note-editor .checkbox-inline { + cursor: not-allowed; +} +.note-editor .input-sm { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.note-editor .input-sm { + height: 30px; + line-height: 30px; +} +textarea.note-editor .input-sm { + height: auto; +} +.note-editor .input-lg { + height: 45px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.33; + border-radius: 6px; +} +select.note-editor .input-lg { + height: 45px; + line-height: 45px; +} +textarea.note-editor .input-lg { + height: auto; +} +.note-editor .has-warning .help-block, +.note-editor .has-warning .control-label { + color: #c09853; +} +.note-editor .has-warning .form-control { + border-color: #c09853; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.note-editor .has-warning .form-control:focus { + border-color: #a47e3c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; +} +.note-editor .has-warning .input-group-addon { + color: #c09853; + border-color: #c09853; + background-color: #fcf8e3; +} +.note-editor .has-error .help-block, +.note-editor .has-error .control-label { + color: #b94a48; +} +.note-editor .has-error .form-control { + border-color: #b94a48; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.note-editor .has-error .form-control:focus { + border-color: #953b39; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; +} +.note-editor .has-error .input-group-addon { + color: #b94a48; + border-color: #b94a48; + background-color: #f2dede; +} +.note-editor .has-success .help-block, +.note-editor .has-success .control-label { + color: #468847; +} +.note-editor .has-success .form-control { + border-color: #468847; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.note-editor .has-success .form-control:focus { + border-color: #356635; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; +} +.note-editor .has-success .input-group-addon { + color: #468847; + border-color: #468847; + background-color: #dff0d8; +} +.note-editor .form-control-static { + margin-bottom: 0; +} +.note-editor .help-block { + display: block; + margin-top: 5px; + margin-bottom: 10px; + color: #737373; +} +@media (min-width: 768px) { + .note-editor .form-inline .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .note-editor .form-inline .form-control { + display: inline-block; + } + .note-editor .form-inline .radio, + .note-editor .form-inline .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + padding-left: 0; + } + .note-editor .form-inline .radio input[type="radio"], + .note-editor .form-inline .checkbox input[type="checkbox"] { + float: none; + margin-left: 0; + } +} +.note-editor .form-horizontal .control-label, +.note-editor .form-horizontal .radio, +.note-editor .form-horizontal .checkbox, +.note-editor .form-horizontal .radio-inline, +.note-editor .form-horizontal .checkbox-inline { + margin-top: 0; + margin-bottom: 0; + padding-top: 7px; +} +.note-editor .form-horizontal .form-group { + margin-left: -15px; + margin-right: -15px; +} +.note-editor .form-horizontal .form-group:before, +.note-editor .form-horizontal .form-group:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .form-horizontal .form-group:after { + clear: both; +} +.note-editor .form-horizontal .form-group:before, +.note-editor .form-horizontal .form-group:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .form-horizontal .form-group:after { + clear: both; +} +.note-editor .form-horizontal .form-control-static { + padding-top: 7px; +} +@media (min-width: 768px) { + .note-editor .form-horizontal .control-label { + text-align: right; + } +} +.note-editor .btn { + display: inline-block; + margin-bottom: 0; + font-weight: normal; + text-align: center; + vertical-align: middle; + cursor: pointer; + background-image: none; + border: 1px solid transparent; + white-space: nowrap; + padding: 6px 12px; + font-size: 14px; + line-height: 1.428571429; + border-radius: 4px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + -o-user-select: none; + user-select: none; +} +.note-editor .btn:focus { + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.note-editor .btn:hover, +.note-editor .btn:focus { + color: #333333; + text-decoration: none; +} +.note-editor .btn:active, +.note-editor .btn.active { + outline: 0; + background-image: none; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} +.note-editor .btn.disabled, +.note-editor .btn[disabled], +fieldset[disabled] .note-editor .btn { + cursor: not-allowed; + pointer-events: none; + opacity: 0.65; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + box-shadow: none; +} +.note-editor .btn-default { + color: #333333; + background-color: #ffffff; + border-color: #cccccc; +} +.note-editor .btn-default:hover, +.note-editor .btn-default:focus, +.note-editor .btn-default:active, +.note-editor .btn-default.active, +.open .dropdown-toggle.note-editor .btn-default { + color: #333333; + background-color: #ebebeb; + border-color: #adadad; +} +.note-editor .btn-default:active, +.note-editor .btn-default.active, +.open .dropdown-toggle.note-editor .btn-default { + background-image: none; +} +.note-editor .btn-default.disabled, +.note-editor .btn-default[disabled], +fieldset[disabled] .note-editor .btn-default, +.note-editor .btn-default.disabled:hover, +.note-editor .btn-default[disabled]:hover, +fieldset[disabled] .note-editor .btn-default:hover, +.note-editor .btn-default.disabled:focus, +.note-editor .btn-default[disabled]:focus, +fieldset[disabled] .note-editor .btn-default:focus, +.note-editor .btn-default.disabled:active, +.note-editor .btn-default[disabled]:active, +fieldset[disabled] .note-editor .btn-default:active, +.note-editor .btn-default.disabled.active, +.note-editor .btn-default[disabled].active, +fieldset[disabled] .note-editor .btn-default.active { + background-color: #ffffff; + border-color: #cccccc; +} +.note-editor .btn-primary { + color: #ffffff; + background-color: #428bca; + border-color: #357ebd; +} +.note-editor .btn-primary:hover, +.note-editor .btn-primary:focus, +.note-editor .btn-primary:active, +.note-editor .btn-primary.active, +.open .dropdown-toggle.note-editor .btn-primary { + color: #ffffff; + background-color: #3276b1; + border-color: #285e8e; +} +.note-editor .btn-primary:active, +.note-editor .btn-primary.active, +.open .dropdown-toggle.note-editor .btn-primary { + background-image: none; +} +.note-editor .btn-primary.disabled, +.note-editor .btn-primary[disabled], +fieldset[disabled] .note-editor .btn-primary, +.note-editor .btn-primary.disabled:hover, +.note-editor .btn-primary[disabled]:hover, +fieldset[disabled] .note-editor .btn-primary:hover, +.note-editor .btn-primary.disabled:focus, +.note-editor .btn-primary[disabled]:focus, +fieldset[disabled] .note-editor .btn-primary:focus, +.note-editor .btn-primary.disabled:active, +.note-editor .btn-primary[disabled]:active, +fieldset[disabled] .note-editor .btn-primary:active, +.note-editor .btn-primary.disabled.active, +.note-editor .btn-primary[disabled].active, +fieldset[disabled] .note-editor .btn-primary.active { + background-color: #428bca; + border-color: #357ebd; +} +.note-editor .btn-warning { + color: #ffffff; + background-color: #f0ad4e; + border-color: #eea236; +} +.note-editor .btn-warning:hover, +.note-editor .btn-warning:focus, +.note-editor .btn-warning:active, +.note-editor .btn-warning.active, +.open .dropdown-toggle.note-editor .btn-warning { + color: #ffffff; + background-color: #ed9c28; + border-color: #d58512; +} +.note-editor .btn-warning:active, +.note-editor .btn-warning.active, +.open .dropdown-toggle.note-editor .btn-warning { + background-image: none; +} +.note-editor .btn-warning.disabled, +.note-editor .btn-warning[disabled], +fieldset[disabled] .note-editor .btn-warning, +.note-editor .btn-warning.disabled:hover, +.note-editor .btn-warning[disabled]:hover, +fieldset[disabled] .note-editor .btn-warning:hover, +.note-editor .btn-warning.disabled:focus, +.note-editor .btn-warning[disabled]:focus, +fieldset[disabled] .note-editor .btn-warning:focus, +.note-editor .btn-warning.disabled:active, +.note-editor .btn-warning[disabled]:active, +fieldset[disabled] .note-editor .btn-warning:active, +.note-editor .btn-warning.disabled.active, +.note-editor .btn-warning[disabled].active, +fieldset[disabled] .note-editor .btn-warning.active { + background-color: #f0ad4e; + border-color: #eea236; +} +.note-editor .btn-danger { + color: #ffffff; + background-color: #d9534f; + border-color: #d43f3a; +} +.note-editor .btn-danger:hover, +.note-editor .btn-danger:focus, +.note-editor .btn-danger:active, +.note-editor .btn-danger.active, +.open .dropdown-toggle.note-editor .btn-danger { + color: #ffffff; + background-color: #d2322d; + border-color: #ac2925; +} +.note-editor .btn-danger:active, +.note-editor .btn-danger.active, +.open .dropdown-toggle.note-editor .btn-danger { + background-image: none; +} +.note-editor .btn-danger.disabled, +.note-editor .btn-danger[disabled], +fieldset[disabled] .note-editor .btn-danger, +.note-editor .btn-danger.disabled:hover, +.note-editor .btn-danger[disabled]:hover, +fieldset[disabled] .note-editor .btn-danger:hover, +.note-editor .btn-danger.disabled:focus, +.note-editor .btn-danger[disabled]:focus, +fieldset[disabled] .note-editor .btn-danger:focus, +.note-editor .btn-danger.disabled:active, +.note-editor .btn-danger[disabled]:active, +fieldset[disabled] .note-editor .btn-danger:active, +.note-editor .btn-danger.disabled.active, +.note-editor .btn-danger[disabled].active, +fieldset[disabled] .note-editor .btn-danger.active { + background-color: #d9534f; + border-color: #d43f3a; +} +.note-editor .btn-success { + color: #ffffff; + background-color: #5cb85c; + border-color: #4cae4c; +} +.note-editor .btn-success:hover, +.note-editor .btn-success:focus, +.note-editor .btn-success:active, +.note-editor .btn-success.active, +.open .dropdown-toggle.note-editor .btn-success { + color: #ffffff; + background-color: #47a447; + border-color: #398439; +} +.note-editor .btn-success:active, +.note-editor .btn-success.active, +.open .dropdown-toggle.note-editor .btn-success { + background-image: none; +} +.note-editor .btn-success.disabled, +.note-editor .btn-success[disabled], +fieldset[disabled] .note-editor .btn-success, +.note-editor .btn-success.disabled:hover, +.note-editor .btn-success[disabled]:hover, +fieldset[disabled] .note-editor .btn-success:hover, +.note-editor .btn-success.disabled:focus, +.note-editor .btn-success[disabled]:focus, +fieldset[disabled] .note-editor .btn-success:focus, +.note-editor .btn-success.disabled:active, +.note-editor .btn-success[disabled]:active, +fieldset[disabled] .note-editor .btn-success:active, +.note-editor .btn-success.disabled.active, +.note-editor .btn-success[disabled].active, +fieldset[disabled] .note-editor .btn-success.active { + background-color: #5cb85c; + border-color: #4cae4c; +} +.note-editor .btn-info { + color: #ffffff; + background-color: #5bc0de; + border-color: #46b8da; +} +.note-editor .btn-info:hover, +.note-editor .btn-info:focus, +.note-editor .btn-info:active, +.note-editor .btn-info.active, +.open .dropdown-toggle.note-editor .btn-info { + color: #ffffff; + background-color: #39b3d7; + border-color: #269abc; +} +.note-editor .btn-info:active, +.note-editor .btn-info.active, +.open .dropdown-toggle.note-editor .btn-info { + background-image: none; +} +.note-editor .btn-info.disabled, +.note-editor .btn-info[disabled], +fieldset[disabled] .note-editor .btn-info, +.note-editor .btn-info.disabled:hover, +.note-editor .btn-info[disabled]:hover, +fieldset[disabled] .note-editor .btn-info:hover, +.note-editor .btn-info.disabled:focus, +.note-editor .btn-info[disabled]:focus, +fieldset[disabled] .note-editor .btn-info:focus, +.note-editor .btn-info.disabled:active, +.note-editor .btn-info[disabled]:active, +fieldset[disabled] .note-editor .btn-info:active, +.note-editor .btn-info.disabled.active, +.note-editor .btn-info[disabled].active, +fieldset[disabled] .note-editor .btn-info.active { + background-color: #5bc0de; + border-color: #46b8da; +} +.note-editor .btn-link { + color: #428bca; + font-weight: normal; + cursor: pointer; + border-radius: 0; +} +.note-editor .btn-link, +.note-editor .btn-link:active, +.note-editor .btn-link[disabled], +fieldset[disabled] .note-editor .btn-link { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} +.note-editor .btn-link, +.note-editor .btn-link:hover, +.note-editor .btn-link:focus, +.note-editor .btn-link:active { + border-color: transparent; +} +.note-editor .btn-link:hover, +.note-editor .btn-link:focus { + color: #2a6496; + text-decoration: underline; + background-color: transparent; +} +.note-editor .btn-link[disabled]:hover, +fieldset[disabled] .note-editor .btn-link:hover, +.note-editor .btn-link[disabled]:focus, +fieldset[disabled] .note-editor .btn-link:focus { + color: #999999; + text-decoration: none; +} +.note-editor .btn-lg { + padding: 10px 16px; + font-size: 18px; + line-height: 1.33; + border-radius: 6px; +} +.note-editor .btn-sm, +.note-editor .btn-xs { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.note-editor .btn-xs { + padding: 1px 5px; +} +.note-editor .btn-block { + display: block; + width: 100%; + padding-left: 0; + padding-right: 0; +} +.note-editor .btn-block + .btn-block { + margin-top: 5px; +} +.note-editor input[type="submit"].btn-block, +.note-editor input[type="reset"].btn-block, +.note-editor input[type="button"].btn-block { + width: 100%; +} +.note-editor .fade { + opacity: 0; + -webkit-transition: opacity 0.15s linear; + transition: opacity 0.15s linear; +} +.note-editor .fade.in { + opacity: 1; +} +.note-editor .collapse { + display: none; +} +.note-editor .collapse.in { + display: block; +} +.note-editor .collapsing { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition: height 0.35s ease; + transition: height 0.35s ease; +} +@font-face { + font-family: 'Glyphicons Halflings'; + src: url('../fonts/glyphicons-halflings-regular.eot'); + src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); +} +.note-editor .glyphicon { + position: relative; + top: 1px; + display: inline-block; + font-family: 'Glyphicons Halflings'; + font-style: normal; + font-weight: normal; + line-height: 1; + -webkit-font-smoothing: antialiased; +} +.note-editor .glyphicon:empty { + width: 1em; +} +.note-editor .glyphicon-asterisk:before { + content: "\2a"; +} +.note-editor .glyphicon-plus:before { + content: "\2b"; +} +.note-editor .glyphicon-euro:before { + content: "\20ac"; +} +.note-editor .glyphicon-minus:before { + content: "\2212"; +} +.note-editor .glyphicon-cloud:before { + content: "\2601"; +} +.note-editor .glyphicon-envelope:before { + content: "\2709"; +} +.note-editor .glyphicon-pencil:before { + content: "\270f"; +} +.note-editor .glyphicon-glass:before { + content: "\e001"; +} +.note-editor .glyphicon-music:before { + content: "\e002"; +} +.note-editor .glyphicon-search:before { + content: "\e003"; +} +.note-editor .glyphicon-heart:before { + content: "\e005"; +} +.note-editor .glyphicon-star:before { + content: "\e006"; +} +.note-editor .glyphicon-star-empty:before { + content: "\e007"; +} +.note-editor .glyphicon-user:before { + content: "\e008"; +} +.note-editor .glyphicon-film:before { + content: "\e009"; +} +.note-editor .glyphicon-th-large:before { + content: "\e010"; +} +.note-editor .glyphicon-th:before { + content: "\e011"; +} +.note-editor .glyphicon-th-list:before { + content: "\e012"; +} +.note-editor .glyphicon-ok:before { + content: "\e013"; +} +.note-editor .glyphicon-remove:before { + content: "\e014"; +} +.note-editor .glyphicon-zoom-in:before { + content: "\e015"; +} +.note-editor .glyphicon-zoom-out:before { + content: "\e016"; +} +.note-editor .glyphicon-off:before { + content: "\e017"; +} +.note-editor .glyphicon-signal:before { + content: "\e018"; +} +.note-editor .glyphicon-cog:before { + content: "\e019"; +} +.note-editor .glyphicon-trash:before { + content: "\e020"; +} +.note-editor .glyphicon-home:before { + content: "\e021"; +} +.note-editor .glyphicon-file:before { + content: "\e022"; +} +.note-editor .glyphicon-time:before { + content: "\e023"; +} +.note-editor .glyphicon-road:before { + content: "\e024"; +} +.note-editor .glyphicon-download-alt:before { + content: "\e025"; +} +.note-editor .glyphicon-download:before { + content: "\e026"; +} +.note-editor .glyphicon-upload:before { + content: "\e027"; +} +.note-editor .glyphicon-inbox:before { + content: "\e028"; +} +.note-editor .glyphicon-play-circle:before { + content: "\e029"; +} +.note-editor .glyphicon-repeat:before { + content: "\e030"; +} +.note-editor .glyphicon-refresh:before { + content: "\e031"; +} +.note-editor .glyphicon-list-alt:before { + content: "\e032"; +} +.note-editor .glyphicon-lock:before { + content: "\e033"; +} +.note-editor .glyphicon-flag:before { + content: "\e034"; +} +.note-editor .glyphicon-headphones:before { + content: "\e035"; +} +.note-editor .glyphicon-volume-off:before { + content: "\e036"; +} +.note-editor .glyphicon-volume-down:before { + content: "\e037"; +} +.note-editor .glyphicon-volume-up:before { + content: "\e038"; +} +.note-editor .glyphicon-qrcode:before { + content: "\e039"; +} +.note-editor .glyphicon-barcode:before { + content: "\e040"; +} +.note-editor .glyphicon-tag:before { + content: "\e041"; +} +.note-editor .glyphicon-tags:before { + content: "\e042"; +} +.note-editor .glyphicon-book:before { + content: "\e043"; +} +.note-editor .glyphicon-bookmark:before { + content: "\e044"; +} +.note-editor .glyphicon-print:before { + content: "\e045"; +} +.note-editor .glyphicon-camera:before { + content: "\e046"; +} +.note-editor .glyphicon-font:before { + content: "\e047"; +} +.note-editor .glyphicon-bold:before { + content: "\e048"; +} +.note-editor .glyphicon-italic:before { + content: "\e049"; +} +.note-editor .glyphicon-text-height:before { + content: "\e050"; +} +.note-editor .glyphicon-text-width:before { + content: "\e051"; +} +.note-editor .glyphicon-align-left:before { + content: "\e052"; +} +.note-editor .glyphicon-align-center:before { + content: "\e053"; +} +.note-editor .glyphicon-align-right:before { + content: "\e054"; +} +.note-editor .glyphicon-align-justify:before { + content: "\e055"; +} +.note-editor .glyphicon-list:before { + content: "\e056"; +} +.note-editor .glyphicon-indent-left:before { + content: "\e057"; +} +.note-editor .glyphicon-indent-right:before { + content: "\e058"; +} +.note-editor .glyphicon-facetime-video:before { + content: "\e059"; +} +.note-editor .glyphicon-picture:before { + content: "\e060"; +} +.note-editor .glyphicon-map-marker:before { + content: "\e062"; +} +.note-editor .glyphicon-adjust:before { + content: "\e063"; +} +.note-editor .glyphicon-tint:before { + content: "\e064"; +} +.note-editor .glyphicon-edit:before { + content: "\e065"; +} +.note-editor .glyphicon-share:before { + content: "\e066"; +} +.note-editor .glyphicon-check:before { + content: "\e067"; +} +.note-editor .glyphicon-move:before { + content: "\e068"; +} +.note-editor .glyphicon-step-backward:before { + content: "\e069"; +} +.note-editor .glyphicon-fast-backward:before { + content: "\e070"; +} +.note-editor .glyphicon-backward:before { + content: "\e071"; +} +.note-editor .glyphicon-play:before { + content: "\e072"; +} +.note-editor .glyphicon-pause:before { + content: "\e073"; +} +.note-editor .glyphicon-stop:before { + content: "\e074"; +} +.note-editor .glyphicon-forward:before { + content: "\e075"; +} +.note-editor .glyphicon-fast-forward:before { + content: "\e076"; +} +.note-editor .glyphicon-step-forward:before { + content: "\e077"; +} +.note-editor .glyphicon-eject:before { + content: "\e078"; +} +.note-editor .glyphicon-chevron-left:before { + content: "\e079"; +} +.note-editor .glyphicon-chevron-right:before { + content: "\e080"; +} +.note-editor .glyphicon-plus-sign:before { + content: "\e081"; +} +.note-editor .glyphicon-minus-sign:before { + content: "\e082"; +} +.note-editor .glyphicon-remove-sign:before { + content: "\e083"; +} +.note-editor .glyphicon-ok-sign:before { + content: "\e084"; +} +.note-editor .glyphicon-question-sign:before { + content: "\e085"; +} +.note-editor .glyphicon-info-sign:before { + content: "\e086"; +} +.note-editor .glyphicon-screenshot:before { + content: "\e087"; +} +.note-editor .glyphicon-remove-circle:before { + content: "\e088"; +} +.note-editor .glyphicon-ok-circle:before { + content: "\e089"; +} +.note-editor .glyphicon-ban-circle:before { + content: "\e090"; +} +.note-editor .glyphicon-arrow-left:before { + content: "\e091"; +} +.note-editor .glyphicon-arrow-right:before { + content: "\e092"; +} +.note-editor .glyphicon-arrow-up:before { + content: "\e093"; +} +.note-editor .glyphicon-arrow-down:before { + content: "\e094"; +} +.note-editor .glyphicon-share-alt:before { + content: "\e095"; +} +.note-editor .glyphicon-resize-full:before { + content: "\e096"; +} +.note-editor .glyphicon-resize-small:before { + content: "\e097"; +} +.note-editor .glyphicon-exclamation-sign:before { + content: "\e101"; +} +.note-editor .glyphicon-gift:before { + content: "\e102"; +} +.note-editor .glyphicon-leaf:before { + content: "\e103"; +} +.note-editor .glyphicon-fire:before { + content: "\e104"; +} +.note-editor .glyphicon-eye-open:before { + content: "\e105"; +} +.note-editor .glyphicon-eye-close:before { + content: "\e106"; +} +.note-editor .glyphicon-warning-sign:before { + content: "\e107"; +} +.note-editor .glyphicon-plane:before { + content: "\e108"; +} +.note-editor .glyphicon-calendar:before { + content: "\e109"; +} +.note-editor .glyphicon-random:before { + content: "\e110"; +} +.note-editor .glyphicon-comment:before { + content: "\e111"; +} +.note-editor .glyphicon-magnet:before { + content: "\e112"; +} +.note-editor .glyphicon-chevron-up:before { + content: "\e113"; +} +.note-editor .glyphicon-chevron-down:before { + content: "\e114"; +} +.note-editor .glyphicon-retweet:before { + content: "\e115"; +} +.note-editor .glyphicon-shopping-cart:before { + content: "\e116"; +} +.note-editor .glyphicon-folder-close:before { + content: "\e117"; +} +.note-editor .glyphicon-folder-open:before { + content: "\e118"; +} +.note-editor .glyphicon-resize-vertical:before { + content: "\e119"; +} +.note-editor .glyphicon-resize-horizontal:before { + content: "\e120"; +} +.note-editor .glyphicon-hdd:before { + content: "\e121"; +} +.note-editor .glyphicon-bullhorn:before { + content: "\e122"; +} +.note-editor .glyphicon-bell:before { + content: "\e123"; +} +.note-editor .glyphicon-certificate:before { + content: "\e124"; +} +.note-editor .glyphicon-thumbs-up:before { + content: "\e125"; +} +.note-editor .glyphicon-thumbs-down:before { + content: "\e126"; +} +.note-editor .glyphicon-hand-right:before { + content: "\e127"; +} +.note-editor .glyphicon-hand-left:before { + content: "\e128"; +} +.note-editor .glyphicon-hand-up:before { + content: "\e129"; +} +.note-editor .glyphicon-hand-down:before { + content: "\e130"; +} +.note-editor .glyphicon-circle-arrow-right:before { + content: "\e131"; +} +.note-editor .glyphicon-circle-arrow-left:before { + content: "\e132"; +} +.note-editor .glyphicon-circle-arrow-up:before { + content: "\e133"; +} +.note-editor .glyphicon-circle-arrow-down:before { + content: "\e134"; +} +.note-editor .glyphicon-globe:before { + content: "\e135"; +} +.note-editor .glyphicon-wrench:before { + content: "\e136"; +} +.note-editor .glyphicon-tasks:before { + content: "\e137"; +} +.note-editor .glyphicon-filter:before { + content: "\e138"; +} +.note-editor .glyphicon-briefcase:before { + content: "\e139"; +} +.note-editor .glyphicon-fullscreen:before { + content: "\e140"; +} +.note-editor .glyphicon-dashboard:before { + content: "\e141"; +} +.note-editor .glyphicon-paperclip:before { + content: "\e142"; +} +.note-editor .glyphicon-heart-empty:before { + content: "\e143"; +} +.note-editor .glyphicon-link:before { + content: "\e144"; +} +.note-editor .glyphicon-phone:before { + content: "\e145"; +} +.note-editor .glyphicon-pushpin:before { + content: "\e146"; +} +.note-editor .glyphicon-usd:before { + content: "\e148"; +} +.note-editor .glyphicon-gbp:before { + content: "\e149"; +} +.note-editor .glyphicon-sort:before { + content: "\e150"; +} +.note-editor .glyphicon-sort-by-alphabet:before { + content: "\e151"; +} +.note-editor .glyphicon-sort-by-alphabet-alt:before { + content: "\e152"; +} +.note-editor .glyphicon-sort-by-order:before { + content: "\e153"; +} +.note-editor .glyphicon-sort-by-order-alt:before { + content: "\e154"; +} +.note-editor .glyphicon-sort-by-attributes:before { + content: "\e155"; +} +.note-editor .glyphicon-sort-by-attributes-alt:before { + content: "\e156"; +} +.note-editor .glyphicon-unchecked:before { + content: "\e157"; +} +.note-editor .glyphicon-expand:before { + content: "\e158"; +} +.note-editor .glyphicon-collapse-down:before { + content: "\e159"; +} +.note-editor .glyphicon-collapse-up:before { + content: "\e160"; +} +.note-editor .glyphicon-log-in:before { + content: "\e161"; +} +.note-editor .glyphicon-flash:before { + content: "\e162"; +} +.note-editor .glyphicon-log-out:before { + content: "\e163"; +} +.note-editor .glyphicon-new-window:before { + content: "\e164"; +} +.note-editor .glyphicon-record:before { + content: "\e165"; +} +.note-editor .glyphicon-save:before { + content: "\e166"; +} +.note-editor .glyphicon-open:before { + content: "\e167"; +} +.note-editor .glyphicon-saved:before { + content: "\e168"; +} +.note-editor .glyphicon-import:before { + content: "\e169"; +} +.note-editor .glyphicon-export:before { + content: "\e170"; +} +.note-editor .glyphicon-send:before { + content: "\e171"; +} +.note-editor .glyphicon-floppy-disk:before { + content: "\e172"; +} +.note-editor .glyphicon-floppy-saved:before { + content: "\e173"; +} +.note-editor .glyphicon-floppy-remove:before { + content: "\e174"; +} +.note-editor .glyphicon-floppy-save:before { + content: "\e175"; +} +.note-editor .glyphicon-floppy-open:before { + content: "\e176"; +} +.note-editor .glyphicon-credit-card:before { + content: "\e177"; +} +.note-editor .glyphicon-transfer:before { + content: "\e178"; +} +.note-editor .glyphicon-cutlery:before { + content: "\e179"; +} +.note-editor .glyphicon-header:before { + content: "\e180"; +} +.note-editor .glyphicon-compressed:before { + content: "\e181"; +} +.note-editor .glyphicon-earphone:before { + content: "\e182"; +} +.note-editor .glyphicon-phone-alt:before { + content: "\e183"; +} +.note-editor .glyphicon-tower:before { + content: "\e184"; +} +.note-editor .glyphicon-stats:before { + content: "\e185"; +} +.note-editor .glyphicon-sd-video:before { + content: "\e186"; +} +.note-editor .glyphicon-hd-video:before { + content: "\e187"; +} +.note-editor .glyphicon-subtitles:before { + content: "\e188"; +} +.note-editor .glyphicon-sound-stereo:before { + content: "\e189"; +} +.note-editor .glyphicon-sound-dolby:before { + content: "\e190"; +} +.note-editor .glyphicon-sound-5-1:before { + content: "\e191"; +} +.note-editor .glyphicon-sound-6-1:before { + content: "\e192"; +} +.note-editor .glyphicon-sound-7-1:before { + content: "\e193"; +} +.note-editor .glyphicon-copyright-mark:before { + content: "\e194"; +} +.note-editor .glyphicon-registration-mark:before { + content: "\e195"; +} +.note-editor .glyphicon-cloud-download:before { + content: "\e197"; +} +.note-editor .glyphicon-cloud-upload:before { + content: "\e198"; +} +.note-editor .glyphicon-tree-conifer:before { + content: "\e199"; +} +.note-editor .glyphicon-tree-deciduous:before { + content: "\e200"; +} +.note-editor .caret { + display: inline-block; + width: 0; + height: 0; + margin-left: 2px; + vertical-align: middle; + border-top: 4px solid #000000; + border-right: 4px solid transparent; + border-left: 4px solid transparent; + border-bottom: 0 dotted; +} +.note-editor .dropdown { + position: relative; +} +.note-editor .dropdown-toggle:focus { + outline: 0; +} +.note-editor .dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; + list-style: none; + font-size: 14px; + background-color: #ffffff; + border: 1px solid #cccccc; + border: 1px solid rgba(0, 0, 0, 0.15); + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + background-clip: padding-box; +} +.note-editor .dropdown-menu.pull-right { + right: 0; + left: auto; +} +.note-editor .dropdown-menu .divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.note-editor .dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 1.428571429; + color: #333333; + white-space: nowrap; +} +.note-editor .dropdown-menu > li > a:hover, +.note-editor .dropdown-menu > li > a:focus { + text-decoration: none; + color: #262626; + background-color: #f5f5f5; +} +.note-editor .dropdown-menu > .active > a, +.note-editor .dropdown-menu > .active > a:hover, +.note-editor .dropdown-menu > .active > a:focus { + color: #ffffff; + text-decoration: none; + outline: 0; + background-color: #428bca; +} +.note-editor .dropdown-menu > .disabled > a, +.note-editor .dropdown-menu > .disabled > a:hover, +.note-editor .dropdown-menu > .disabled > a:focus { + color: #999999; +} +.note-editor .dropdown-menu > .disabled > a:hover, +.note-editor .dropdown-menu > .disabled > a:focus { + text-decoration: none; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + cursor: not-allowed; +} +.note-editor .open > .dropdown-menu { + display: block; +} +.note-editor .open > a { + outline: 0; +} +.note-editor .dropdown-header { + display: block; + padding: 3px 20px; + font-size: 12px; + line-height: 1.428571429; + color: #999999; +} +.note-editor .dropdown-backdrop { + position: fixed; + left: 0; + right: 0; + bottom: 0; + top: 0; + z-index: 990; +} +.note-editor .pull-right > .dropdown-menu { + right: 0; + left: auto; +} +.note-editor .dropup .caret, +.note-editor .navbar-fixed-bottom .dropdown .caret { + border-top: 0 dotted; + border-bottom: 4px solid #000000; + content: ""; +} +.note-editor .dropup .dropdown-menu, +.note-editor .navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 1px; +} +@media (min-width: 768px) { + .note-editor .navbar-right .dropdown-menu { + right: 0; + left: auto; + } +} +.btn-default .note-editor .caret { + border-top-color: #333333; +} +.btn-primary .note-editor .caret, +.btn-success .note-editor .caret, +.btn-warning .note-editor .caret, +.btn-danger .note-editor .caret, +.btn-info .note-editor .caret { + border-top-color: #fff; +} +.note-editor .dropup .btn-default .caret { + border-bottom-color: #333333; +} +.note-editor .dropup .btn-primary .caret, +.note-editor .dropup .btn-success .caret, +.note-editor .dropup .btn-warning .caret, +.note-editor .dropup .btn-danger .caret, +.note-editor .dropup .btn-info .caret { + border-bottom-color: #fff; +} +.note-editor .btn-group, +.note-editor .btn-group-vertical { + position: relative; + display: inline-block; + vertical-align: middle; +} +.note-editor .btn-group > .btn, +.note-editor .btn-group-vertical > .btn { + position: relative; + float: left; +} +.note-editor .btn-group > .btn:hover, +.note-editor .btn-group-vertical > .btn:hover, +.note-editor .btn-group > .btn:focus, +.note-editor .btn-group-vertical > .btn:focus, +.note-editor .btn-group > .btn:active, +.note-editor .btn-group-vertical > .btn:active, +.note-editor .btn-group > .btn.active, +.note-editor .btn-group-vertical > .btn.active { + z-index: 2; +} +.note-editor .btn-group > .btn:focus, +.note-editor .btn-group-vertical > .btn:focus { + outline: none; +} +.note-editor .btn-group .btn + .btn, +.note-editor .btn-group .btn + .btn-group, +.note-editor .btn-group .btn-group + .btn, +.note-editor .btn-group .btn-group + .btn-group { + margin-left: -1px; +} +.note-editor .btn-toolbar:before, +.note-editor .btn-toolbar:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .btn-toolbar:after { + clear: both; +} +.note-editor .btn-toolbar:before, +.note-editor .btn-toolbar:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .btn-toolbar:after { + clear: both; +} +.note-editor .btn-toolbar .btn-group { + float: left; +} +.note-editor .btn-toolbar > .btn + .btn, +.note-editor .btn-toolbar > .btn-group + .btn, +.note-editor .btn-toolbar > .btn + .btn-group, +.note-editor .btn-toolbar > .btn-group + .btn-group { + margin-left: 5px; +} +.note-editor .btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { + border-radius: 0; +} +.note-editor .btn-group > .btn:first-child { + margin-left: 0; +} +.note-editor .btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { + border-bottom-right-radius: 0; + border-top-right-radius: 0; +} +.note-editor .btn-group > .btn:last-child:not(:first-child), +.note-editor .btn-group > .dropdown-toggle:not(:first-child) { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} +.note-editor .btn-group > .btn-group { + float: left; +} +.note-editor .btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.note-editor .btn-group > .btn-group:first-child > .btn:last-child, +.note-editor .btn-group > .btn-group:first-child > .dropdown-toggle { + border-bottom-right-radius: 0; + border-top-right-radius: 0; +} +.note-editor .btn-group > .btn-group:last-child > .btn:first-child { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} +.note-editor .btn-group .dropdown-toggle:active, +.note-editor .btn-group.open .dropdown-toggle { + outline: 0; +} +.note-editor .btn-group-xs > .btn { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; + padding: 1px 5px; +} +.note-editor .btn-group-sm > .btn { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.note-editor .btn-group-lg > .btn { + padding: 10px 16px; + font-size: 18px; + line-height: 1.33; + border-radius: 6px; +} +.note-editor .btn-group > .btn + .dropdown-toggle { + padding-left: 5px; + padding-right: 5px; +} +.note-editor .btn-group > .btn-lg + .dropdown-toggle { + padding-left: 12px; + padding-right: 12px; +} +.note-editor .btn-group.open .dropdown-toggle { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} +.note-editor .btn .caret { + margin-left: 0; +} +.note-editor .btn-lg .caret { + border-width: 5px 5px 0; + border-bottom-width: 0; +} +.note-editor .dropup .btn-lg .caret { + border-width: 0 5px 5px; +} +.note-editor .btn-group-vertical > .btn, +.note-editor .btn-group-vertical > .btn-group { + display: block; + float: none; + width: 100%; + max-width: 100%; +} +.note-editor .btn-group-vertical > .btn-group:before, +.note-editor .btn-group-vertical > .btn-group:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .btn-group-vertical > .btn-group:after { + clear: both; +} +.note-editor .btn-group-vertical > .btn-group:before, +.note-editor .btn-group-vertical > .btn-group:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .btn-group-vertical > .btn-group:after { + clear: both; +} +.note-editor .btn-group-vertical > .btn-group > .btn { + float: none; +} +.note-editor .btn-group-vertical > .btn + .btn, +.note-editor .btn-group-vertical > .btn + .btn-group, +.note-editor .btn-group-vertical > .btn-group + .btn, +.note-editor .btn-group-vertical > .btn-group + .btn-group { + margin-top: -1px; + margin-left: 0; +} +.note-editor .btn-group-vertical > .btn:not(:first-child):not(:last-child) { + border-radius: 0; +} +.note-editor .btn-group-vertical > .btn:first-child:not(:last-child) { + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.note-editor .btn-group-vertical > .btn:last-child:not(:first-child) { + border-bottom-left-radius: 4px; + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.note-editor .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.note-editor .btn-group-vertical > .btn-group:first-child > .btn:last-child, +.note-editor .btn-group-vertical > .btn-group:first-child > .dropdown-toggle { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.note-editor .btn-group-vertical > .btn-group:last-child > .btn:first-child { + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.note-editor .btn-group-justified { + display: table; + width: 100%; + table-layout: fixed; + border-collapse: separate; +} +.note-editor .btn-group-justified .btn { + float: none; + display: table-cell; + width: 1%; +} +.note-editor [data-toggle="buttons"] > .btn > input[type="radio"], +.note-editor [data-toggle="buttons"] > .btn > input[type="checkbox"] { + display: none; +} +.note-editor .input-group { + position: relative; + display: table; + border-collapse: separate; +} +.note-editor .input-group.col { + float: none; + padding-left: 0; + padding-right: 0; +} +.note-editor .input-group .form-control { + width: 100%; + margin-bottom: 0; +} +.note-editor .input-group-lg > .form-control, +.note-editor .input-group-lg > .input-group-addon, +.note-editor .input-group-lg > .input-group-btn > .btn { + height: 45px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.33; + border-radius: 6px; +} +select.note-editor .input-group-lg > .form-control, +select.note-editor .input-group-lg > .input-group-addon, +select.note-editor .input-group-lg > .input-group-btn > .btn { + height: 45px; + line-height: 45px; +} +textarea.note-editor .input-group-lg > .form-control, +textarea.note-editor .input-group-lg > .input-group-addon, +textarea.note-editor .input-group-lg > .input-group-btn > .btn { + height: auto; +} +.note-editor .input-group-sm > .form-control, +.note-editor .input-group-sm > .input-group-addon, +.note-editor .input-group-sm > .input-group-btn > .btn { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.note-editor .input-group-sm > .form-control, +select.note-editor .input-group-sm > .input-group-addon, +select.note-editor .input-group-sm > .input-group-btn > .btn { + height: 30px; + line-height: 30px; +} +textarea.note-editor .input-group-sm > .form-control, +textarea.note-editor .input-group-sm > .input-group-addon, +textarea.note-editor .input-group-sm > .input-group-btn > .btn { + height: auto; +} +.note-editor .input-group-addon, +.note-editor .input-group-btn, +.note-editor .input-group .form-control { + display: table-cell; +} +.note-editor .input-group-addon:not(:first-child):not(:last-child), +.note-editor .input-group-btn:not(:first-child):not(:last-child), +.note-editor .input-group .form-control:not(:first-child):not(:last-child) { + border-radius: 0; +} +.note-editor .input-group-addon, +.note-editor .input-group-btn { + width: 1%; + white-space: nowrap; + vertical-align: middle; +} +.note-editor .input-group-addon { + padding: 6px 12px; + font-size: 14px; + font-weight: normal; + line-height: 1; + color: #555555; + text-align: center; + background-color: #eeeeee; + border: 1px solid #cccccc; + border-radius: 4px; +} +.note-editor .input-group-addon.input-sm { + padding: 5px 10px; + font-size: 12px; + border-radius: 3px; +} +.note-editor .input-group-addon.input-lg { + padding: 10px 16px; + font-size: 18px; + border-radius: 6px; +} +.note-editor .input-group-addon input[type="radio"], +.note-editor .input-group-addon input[type="checkbox"] { + margin-top: 0; +} +.note-editor .input-group .form-control:first-child, +.note-editor .input-group-addon:first-child, +.note-editor .input-group-btn:first-child > .btn, +.note-editor .input-group-btn:first-child > .dropdown-toggle, +.note-editor .input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle) { + border-bottom-right-radius: 0; + border-top-right-radius: 0; +} +.note-editor .input-group-addon:first-child { + border-right: 0; +} +.note-editor .input-group .form-control:last-child, +.note-editor .input-group-addon:last-child, +.note-editor .input-group-btn:last-child > .btn, +.note-editor .input-group-btn:last-child > .dropdown-toggle, +.note-editor .input-group-btn:first-child > .btn:not(:first-child) { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} +.note-editor .input-group-addon:last-child { + border-left: 0; +} +.note-editor .input-group-btn { + position: relative; + white-space: nowrap; +} +.note-editor .input-group-btn:first-child > .btn { + margin-right: -1px; +} +.note-editor .input-group-btn:last-child > .btn { + margin-left: -1px; +} +.note-editor .input-group-btn > .btn { + position: relative; +} +.note-editor .input-group-btn > .btn + .btn { + margin-left: -4px; +} +.note-editor .input-group-btn > .btn:hover, +.note-editor .input-group-btn > .btn:active { + z-index: 2; +} +.note-editor .nav { + margin-bottom: 0; + padding-left: 0; + list-style: none; +} +.note-editor .nav:before, +.note-editor .nav:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .nav:after { + clear: both; +} +.note-editor .nav:before, +.note-editor .nav:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .nav:after { + clear: both; +} +.note-editor .nav > li { + position: relative; + display: block; +} +.note-editor .nav > li > a { + position: relative; + display: block; + padding: 10px 15px; +} +.note-editor .nav > li > a:hover, +.note-editor .nav > li > a:focus { + text-decoration: none; + background-color: #eeeeee; +} +.note-editor .nav > li.disabled > a { + color: #999999; +} +.note-editor .nav > li.disabled > a:hover, +.note-editor .nav > li.disabled > a:focus { + color: #999999; + text-decoration: none; + background-color: transparent; + cursor: not-allowed; +} +.note-editor .nav .open > a, +.note-editor .nav .open > a:hover, +.note-editor .nav .open > a:focus { + background-color: #eeeeee; + border-color: #428bca; +} +.note-editor .nav .open > a .caret, +.note-editor .nav .open > a:hover .caret, +.note-editor .nav .open > a:focus .caret { + border-top-color: #2a6496; + border-bottom-color: #2a6496; +} +.note-editor .nav .nav-divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.note-editor .nav > li > a > img { + max-width: none; +} +.note-editor .nav-tabs { + border-bottom: 1px solid #dddddd; +} +.note-editor .nav-tabs > li { + float: left; + margin-bottom: -1px; +} +.note-editor .nav-tabs > li > a { + margin-right: 2px; + line-height: 1.428571429; + border: 1px solid transparent; + border-radius: 4px 4px 0 0; +} +.note-editor .nav-tabs > li > a:hover { + border-color: #eeeeee #eeeeee #dddddd; +} +.note-editor .nav-tabs > li.active > a, +.note-editor .nav-tabs > li.active > a:hover, +.note-editor .nav-tabs > li.active > a:focus { + color: #555555; + background-color: #ffffff; + border: 1px solid #dddddd; + border-bottom-color: transparent; + cursor: default; +} +.note-editor .nav-tabs.nav-justified { + width: 100%; + border-bottom: 0; +} +.note-editor .nav-tabs.nav-justified > li { + float: none; +} +.note-editor .nav-tabs.nav-justified > li > a { + text-align: center; + margin-bottom: 5px; +} +@media (min-width: 768px) { + .note-editor .nav-tabs.nav-justified > li { + display: table-cell; + width: 1%; + } + .note-editor .nav-tabs.nav-justified > li > a { + margin-bottom: 0; + } +} +.note-editor .nav-tabs.nav-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.note-editor .nav-tabs.nav-justified > .active > a, +.note-editor .nav-tabs.nav-justified > .active > a:hover, +.note-editor .nav-tabs.nav-justified > .active > a:focus { + border: 1px solid #dddddd; +} +@media (min-width: 768px) { + .note-editor .nav-tabs.nav-justified > li > a { + border-bottom: 1px solid #dddddd; + border-radius: 4px 4px 0 0; + } + .note-editor .nav-tabs.nav-justified > .active > a, + .note-editor .nav-tabs.nav-justified > .active > a:hover, + .note-editor .nav-tabs.nav-justified > .active > a:focus { + border-bottom-color: #ffffff; + } +} +.note-editor .nav-pills > li { + float: left; +} +.note-editor .nav-pills > li > a { + border-radius: 4px; +} +.note-editor .nav-pills > li + li { + margin-left: 2px; +} +.note-editor .nav-pills > li.active > a, +.note-editor .nav-pills > li.active > a:hover, +.note-editor .nav-pills > li.active > a:focus { + color: #ffffff; + background-color: #428bca; +} +.note-editor .nav-pills > li.active > a .caret, +.note-editor .nav-pills > li.active > a:hover .caret, +.note-editor .nav-pills > li.active > a:focus .caret { + border-top-color: #ffffff; + border-bottom-color: #ffffff; +} +.note-editor .nav-stacked > li { + float: none; +} +.note-editor .nav-stacked > li + li { + margin-top: 2px; + margin-left: 0; +} +.note-editor .nav-justified { + width: 100%; +} +.note-editor .nav-justified > li { + float: none; +} +.note-editor .nav-justified > li > a { + text-align: center; + margin-bottom: 5px; +} +@media (min-width: 768px) { + .note-editor .nav-justified > li { + display: table-cell; + width: 1%; + } + .note-editor .nav-justified > li > a { + margin-bottom: 0; + } +} +.note-editor .nav-tabs-justified { + border-bottom: 0; +} +.note-editor .nav-tabs-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.note-editor .nav-tabs-justified > .active > a, +.note-editor .nav-tabs-justified > .active > a:hover, +.note-editor .nav-tabs-justified > .active > a:focus { + border: 1px solid #dddddd; +} +@media (min-width: 768px) { + .note-editor .nav-tabs-justified > li > a { + border-bottom: 1px solid #dddddd; + border-radius: 4px 4px 0 0; + } + .note-editor .nav-tabs-justified > .active > a, + .note-editor .nav-tabs-justified > .active > a:hover, + .note-editor .nav-tabs-justified > .active > a:focus { + border-bottom-color: #ffffff; + } +} +.note-editor .tab-content > .tab-pane { + display: none; +} +.note-editor .tab-content > .active { + display: block; +} +.note-editor .nav .caret { + border-top-color: #428bca; + border-bottom-color: #428bca; +} +.note-editor .nav a:hover .caret { + border-top-color: #2a6496; + border-bottom-color: #2a6496; +} +.note-editor .nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.note-editor .navbar { + position: relative; + z-index: 1000; + min-height: 50px; + margin-bottom: 20px; + border: 1px solid transparent; +} +.note-editor .navbar:before, +.note-editor .navbar:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .navbar:after { + clear: both; +} +.note-editor .navbar:before, +.note-editor .navbar:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .navbar:after { + clear: both; +} +@media (min-width: 768px) { + .note-editor .navbar { + border-radius: 4px; + } +} +.note-editor .navbar-header:before, +.note-editor .navbar-header:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .navbar-header:after { + clear: both; +} +.note-editor .navbar-header:before, +.note-editor .navbar-header:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .navbar-header:after { + clear: both; +} +@media (min-width: 768px) { + .note-editor .navbar-header { + float: left; + } +} +.note-editor .navbar-collapse { + max-height: 340px; + overflow-x: visible; + padding-right: 15px; + padding-left: 15px; + border-top: 1px solid transparent; + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); + -webkit-overflow-scrolling: touch; +} +.note-editor .navbar-collapse:before, +.note-editor .navbar-collapse:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .navbar-collapse:after { + clear: both; +} +.note-editor .navbar-collapse:before, +.note-editor .navbar-collapse:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .navbar-collapse:after { + clear: both; +} +.note-editor .navbar-collapse.in { + overflow-y: auto; +} +@media (min-width: 768px) { + .note-editor .navbar-collapse { + width: auto; + border-top: 0; + box-shadow: none; + } + .note-editor .navbar-collapse.collapse { + display: block !important; + height: auto !important; + padding-bottom: 0; + overflow: visible !important; + } + .note-editor .navbar-collapse.in { + overflow-y: visible; + } + .note-editor .navbar-collapse .navbar-nav.navbar-left:first-child { + margin-left: -15px; + } + .note-editor .navbar-collapse .navbar-nav.navbar-right:last-child { + margin-right: -15px; + } + .note-editor .navbar-collapse .navbar-text:last-child { + margin-right: 0; + } +} +.note-editor .container > .navbar-header, +.note-editor .container > .navbar-collapse { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .note-editor .container > .navbar-header, + .note-editor .container > .navbar-collapse { + margin-right: 0; + margin-left: 0; + } +} +.note-editor .navbar-static-top { + border-width: 0 0 1px; +} +@media (min-width: 768px) { + .note-editor .navbar-static-top { + border-radius: 0; + } +} +.note-editor .navbar-fixed-top, +.note-editor .navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + border-width: 0 0 1px; +} +@media (min-width: 768px) { + .note-editor .navbar-fixed-top, + .note-editor .navbar-fixed-bottom { + border-radius: 0; + } +} +.note-editor .navbar-fixed-top { + z-index: 1030; + top: 0; +} +.note-editor .navbar-fixed-bottom { + bottom: 0; + margin-bottom: 0; +} +.note-editor .navbar-brand { + float: left; + padding: 15px 15px; + font-size: 18px; + line-height: 20px; +} +.note-editor .navbar-brand:hover, +.note-editor .navbar-brand:focus { + text-decoration: none; +} +@media (min-width: 768px) { + .navbar > .container .note-editor .navbar-brand { + margin-left: -15px; + } +} +.note-editor .navbar-toggle { + position: relative; + float: right; + margin-right: 15px; + padding: 9px 10px; + margin-top: 8px; + margin-bottom: 8px; + background-color: transparent; + border: 1px solid transparent; + border-radius: 4px; +} +.note-editor .navbar-toggle .icon-bar { + display: block; + width: 22px; + height: 2px; + border-radius: 1px; +} +.note-editor .navbar-toggle .icon-bar + .icon-bar { + margin-top: 4px; +} +@media (min-width: 768px) { + .note-editor .navbar-toggle { + display: none; + } +} +.note-editor .navbar-nav { + margin: 7.5px -15px; +} +.note-editor .navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + line-height: 20px; +} +@media (max-width: 767px) { + .note-editor .navbar-nav .open .dropdown-menu { + position: static; + float: none; + width: auto; + margin-top: 0; + background-color: transparent; + border: 0; + box-shadow: none; + } + .note-editor .navbar-nav .open .dropdown-menu > li > a, + .note-editor .navbar-nav .open .dropdown-menu .dropdown-header { + padding: 5px 15px 5px 25px; + } + .note-editor .navbar-nav .open .dropdown-menu > li > a { + line-height: 20px; + } + .note-editor .navbar-nav .open .dropdown-menu > li > a:hover, + .note-editor .navbar-nav .open .dropdown-menu > li > a:focus { + background-image: none; + } +} +@media (min-width: 768px) { + .note-editor .navbar-nav { + float: left; + margin: 0; + } + .note-editor .navbar-nav > li { + float: left; + } + .note-editor .navbar-nav > li > a { + padding-top: 15px; + padding-bottom: 15px; + } +} +@media (min-width: 768px) { + .note-editor .navbar-left { + float: left !important; + } + .note-editor .navbar-right { + float: right !important; + } +} +.note-editor .navbar-form { + margin-left: -15px; + margin-right: -15px; + padding: 10px 15px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + margin-top: 8px; + margin-bottom: 8px; +} +@media (min-width: 768px) { + .note-editor .navbar-form .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .note-editor .navbar-form .form-control { + display: inline-block; + } + .note-editor .navbar-form .radio, + .note-editor .navbar-form .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + padding-left: 0; + } + .note-editor .navbar-form .radio input[type="radio"], + .note-editor .navbar-form .checkbox input[type="checkbox"] { + float: none; + margin-left: 0; + } +} +@media (max-width: 767px) { + .note-editor .navbar-form .form-group { + margin-bottom: 5px; + } +} +@media (min-width: 768px) { + .note-editor .navbar-form { + width: auto; + border: 0; + margin-left: 0; + margin-right: 0; + padding-top: 0; + padding-bottom: 0; + -webkit-box-shadow: none; + box-shadow: none; + } +} +.note-editor .navbar-nav > li > .dropdown-menu { + margin-top: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.note-editor .navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.note-editor .navbar-nav.pull-right > li > .dropdown-menu, +.note-editor .navbar-nav > li > .dropdown-menu.pull-right { + left: auto; + right: 0; +} +.note-editor .navbar-btn { + margin-top: 8px; + margin-bottom: 8px; +} +.note-editor .navbar-text { + float: left; + margin-top: 15px; + margin-bottom: 15px; +} +@media (min-width: 768px) { + .note-editor .navbar-text { + margin-left: 15px; + margin-right: 15px; + } +} +.note-editor .navbar-default { + background-color: #f8f8f8; + border-color: #e7e7e7; +} +.note-editor .navbar-default .navbar-brand { + color: #777777; +} +.note-editor .navbar-default .navbar-brand:hover, +.note-editor .navbar-default .navbar-brand:focus { + color: #5e5e5e; + background-color: transparent; +} +.note-editor .navbar-default .navbar-text { + color: #777777; +} +.note-editor .navbar-default .navbar-nav > li > a { + color: #777777; +} +.note-editor .navbar-default .navbar-nav > li > a:hover, +.note-editor .navbar-default .navbar-nav > li > a:focus { + color: #333333; + background-color: transparent; +} +.note-editor .navbar-default .navbar-nav > .active > a, +.note-editor .navbar-default .navbar-nav > .active > a:hover, +.note-editor .navbar-default .navbar-nav > .active > a:focus { + color: #555555; + background-color: #e7e7e7; +} +.note-editor .navbar-default .navbar-nav > .disabled > a, +.note-editor .navbar-default .navbar-nav > .disabled > a:hover, +.note-editor .navbar-default .navbar-nav > .disabled > a:focus { + color: #cccccc; + background-color: transparent; +} +.note-editor .navbar-default .navbar-toggle { + border-color: #dddddd; +} +.note-editor .navbar-default .navbar-toggle:hover, +.note-editor .navbar-default .navbar-toggle:focus { + background-color: #dddddd; +} +.note-editor .navbar-default .navbar-toggle .icon-bar { + background-color: #cccccc; +} +.note-editor .navbar-default .navbar-collapse, +.note-editor .navbar-default .navbar-form { + border-color: #e7e7e7; +} +.note-editor .navbar-default .navbar-nav > .dropdown > a:hover .caret, +.note-editor .navbar-default .navbar-nav > .dropdown > a:focus .caret { + border-top-color: #333333; + border-bottom-color: #333333; +} +.note-editor .navbar-default .navbar-nav > .open > a, +.note-editor .navbar-default .navbar-nav > .open > a:hover, +.note-editor .navbar-default .navbar-nav > .open > a:focus { + background-color: #e7e7e7; + color: #555555; +} +.note-editor .navbar-default .navbar-nav > .open > a .caret, +.note-editor .navbar-default .navbar-nav > .open > a:hover .caret, +.note-editor .navbar-default .navbar-nav > .open > a:focus .caret { + border-top-color: #555555; + border-bottom-color: #555555; +} +.note-editor .navbar-default .navbar-nav > .dropdown > a .caret { + border-top-color: #777777; + border-bottom-color: #777777; +} +@media (max-width: 767px) { + .note-editor .navbar-default .navbar-nav .open .dropdown-menu > li > a { + color: #777777; + } + .note-editor .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, + .note-editor .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { + color: #333333; + background-color: transparent; + } + .note-editor .navbar-default .navbar-nav .open .dropdown-menu > .active > a, + .note-editor .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, + .note-editor .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #555555; + background-color: #e7e7e7; + } + .note-editor .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, + .note-editor .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .note-editor .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #cccccc; + background-color: transparent; + } +} +.note-editor .navbar-default .navbar-link { + color: #777777; +} +.note-editor .navbar-default .navbar-link:hover { + color: #333333; +} +.note-editor .navbar-inverse { + background-color: #222222; + border-color: #080808; +} +.note-editor .navbar-inverse .navbar-brand { + color: #999999; +} +.note-editor .navbar-inverse .navbar-brand:hover, +.note-editor .navbar-inverse .navbar-brand:focus { + color: #ffffff; + background-color: transparent; +} +.note-editor .navbar-inverse .navbar-text { + color: #999999; +} +.note-editor .navbar-inverse .navbar-nav > li > a { + color: #999999; +} +.note-editor .navbar-inverse .navbar-nav > li > a:hover, +.note-editor .navbar-inverse .navbar-nav > li > a:focus { + color: #ffffff; + background-color: transparent; +} +.note-editor .navbar-inverse .navbar-nav > .active > a, +.note-editor .navbar-inverse .navbar-nav > .active > a:hover, +.note-editor .navbar-inverse .navbar-nav > .active > a:focus { + color: #ffffff; + background-color: #080808; +} +.note-editor .navbar-inverse .navbar-nav > .disabled > a, +.note-editor .navbar-inverse .navbar-nav > .disabled > a:hover, +.note-editor .navbar-inverse .navbar-nav > .disabled > a:focus { + color: #444444; + background-color: transparent; +} +.note-editor .navbar-inverse .navbar-toggle { + border-color: #333333; +} +.note-editor .navbar-inverse .navbar-toggle:hover, +.note-editor .navbar-inverse .navbar-toggle:focus { + background-color: #333333; +} +.note-editor .navbar-inverse .navbar-toggle .icon-bar { + background-color: #ffffff; +} +.note-editor .navbar-inverse .navbar-collapse, +.note-editor .navbar-inverse .navbar-form { + border-color: #101010; +} +.note-editor .navbar-inverse .navbar-nav > .open > a, +.note-editor .navbar-inverse .navbar-nav > .open > a:hover, +.note-editor .navbar-inverse .navbar-nav > .open > a:focus { + background-color: #080808; + color: #ffffff; +} +.note-editor .navbar-inverse .navbar-nav > .dropdown > a:hover .caret { + border-top-color: #ffffff; + border-bottom-color: #ffffff; +} +.note-editor .navbar-inverse .navbar-nav > .dropdown > a .caret { + border-top-color: #999999; + border-bottom-color: #999999; +} +.note-editor .navbar-inverse .navbar-nav > .open > a .caret, +.note-editor .navbar-inverse .navbar-nav > .open > a:hover .caret, +.note-editor .navbar-inverse .navbar-nav > .open > a:focus .caret { + border-top-color: #ffffff; + border-bottom-color: #ffffff; +} +@media (max-width: 767px) { + .note-editor .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { + border-color: #080808; + } + .note-editor .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { + color: #999999; + } + .note-editor .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, + .note-editor .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { + color: #ffffff; + background-color: transparent; + } + .note-editor .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, + .note-editor .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, + .note-editor .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #ffffff; + background-color: #080808; + } + .note-editor .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, + .note-editor .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .note-editor .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #444444; + background-color: transparent; + } +} +.note-editor .navbar-inverse .navbar-link { + color: #999999; +} +.note-editor .navbar-inverse .navbar-link:hover { + color: #ffffff; +} +.note-editor .breadcrumb { + padding: 8px 15px; + margin-bottom: 20px; + list-style: none; + background-color: #f5f5f5; + border-radius: 4px; +} +.note-editor .breadcrumb > li { + display: inline-block; +} +.note-editor .breadcrumb > li + li:before { + content: "/\00a0"; + padding: 0 5px; + color: #cccccc; +} +.note-editor .breadcrumb > .active { + color: #999999; +} +.note-editor .pagination { + display: inline-block; + padding-left: 0; + margin: 20px 0; + border-radius: 4px; +} +.note-editor .pagination > li { + display: inline; +} +.note-editor .pagination > li > a, +.note-editor .pagination > li > span { + position: relative; + float: left; + padding: 6px 12px; + line-height: 1.428571429; + text-decoration: none; + background-color: #ffffff; + border: 1px solid #dddddd; + margin-left: -1px; +} +.note-editor .pagination > li:first-child > a, +.note-editor .pagination > li:first-child > span { + margin-left: 0; + border-bottom-left-radius: 4px; + border-top-left-radius: 4px; +} +.note-editor .pagination > li:last-child > a, +.note-editor .pagination > li:last-child > span { + border-bottom-right-radius: 4px; + border-top-right-radius: 4px; +} +.note-editor .pagination > li > a:hover, +.note-editor .pagination > li > span:hover, +.note-editor .pagination > li > a:focus, +.note-editor .pagination > li > span:focus { + background-color: #eeeeee; +} +.note-editor .pagination > .active > a, +.note-editor .pagination > .active > span, +.note-editor .pagination > .active > a:hover, +.note-editor .pagination > .active > span:hover, +.note-editor .pagination > .active > a:focus, +.note-editor .pagination > .active > span:focus { + z-index: 2; + color: #ffffff; + background-color: #428bca; + border-color: #428bca; + cursor: default; +} +.note-editor .pagination > .disabled > span, +.note-editor .pagination > .disabled > span:hover, +.note-editor .pagination > .disabled > span:focus, +.note-editor .pagination > .disabled > a, +.note-editor .pagination > .disabled > a:hover, +.note-editor .pagination > .disabled > a:focus { + color: #999999; + background-color: #ffffff; + border-color: #dddddd; + cursor: not-allowed; +} +.note-editor .pagination-lg > li > a, +.note-editor .pagination-lg > li > span { + padding: 10px 16px; + font-size: 18px; +} +.note-editor .pagination-lg > li:first-child > a, +.note-editor .pagination-lg > li:first-child > span { + border-bottom-left-radius: 6px; + border-top-left-radius: 6px; +} +.note-editor .pagination-lg > li:last-child > a, +.note-editor .pagination-lg > li:last-child > span { + border-bottom-right-radius: 6px; + border-top-right-radius: 6px; +} +.note-editor .pagination-sm > li > a, +.note-editor .pagination-sm > li > span { + padding: 5px 10px; + font-size: 12px; +} +.note-editor .pagination-sm > li:first-child > a, +.note-editor .pagination-sm > li:first-child > span { + border-bottom-left-radius: 3px; + border-top-left-radius: 3px; +} +.note-editor .pagination-sm > li:last-child > a, +.note-editor .pagination-sm > li:last-child > span { + border-bottom-right-radius: 3px; + border-top-right-radius: 3px; +} +.note-editor .pager { + padding-left: 0; + margin: 20px 0; + list-style: none; + text-align: center; +} +.note-editor .pager:before, +.note-editor .pager:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .pager:after { + clear: both; +} +.note-editor .pager:before, +.note-editor .pager:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .pager:after { + clear: both; +} +.note-editor .pager li { + display: inline; +} +.note-editor .pager li > a, +.note-editor .pager li > span { + display: inline-block; + padding: 5px 14px; + background-color: #ffffff; + border: 1px solid #dddddd; + border-radius: 15px; +} +.note-editor .pager li > a:hover, +.note-editor .pager li > a:focus { + text-decoration: none; + background-color: #eeeeee; +} +.note-editor .pager .next > a, +.note-editor .pager .next > span { + float: right; +} +.note-editor .pager .previous > a, +.note-editor .pager .previous > span { + float: left; +} +.note-editor .pager .disabled > a, +.note-editor .pager .disabled > a:hover, +.note-editor .pager .disabled > a:focus, +.note-editor .pager .disabled > span { + color: #999999; + background-color: #ffffff; + cursor: not-allowed; +} +.note-editor .label { + display: inline; + padding: .2em .6em .3em; + font-size: 75%; + font-weight: bold; + line-height: 1; + color: #ffffff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: .25em; +} +.note-editor .label[href]:hover, +.note-editor .label[href]:focus { + color: #ffffff; + text-decoration: none; + cursor: pointer; +} +.note-editor .label:empty { + display: none; +} +.note-editor .label-default { + background-color: #999999; +} +.note-editor .label-default[href]:hover, +.note-editor .label-default[href]:focus { + background-color: #808080; +} +.note-editor .label-primary { + background-color: #428bca; +} +.note-editor .label-primary[href]:hover, +.note-editor .label-primary[href]:focus { + background-color: #3071a9; +} +.note-editor .label-success { + background-color: #5cb85c; +} +.note-editor .label-success[href]:hover, +.note-editor .label-success[href]:focus { + background-color: #449d44; +} +.note-editor .label-info { + background-color: #5bc0de; +} +.note-editor .label-info[href]:hover, +.note-editor .label-info[href]:focus { + background-color: #31b0d5; +} +.note-editor .label-warning { + background-color: #f0ad4e; +} +.note-editor .label-warning[href]:hover, +.note-editor .label-warning[href]:focus { + background-color: #ec971f; +} +.note-editor .label-danger { + background-color: #d9534f; +} +.note-editor .label-danger[href]:hover, +.note-editor .label-danger[href]:focus { + background-color: #c9302c; +} +.note-editor .badge { + display: inline-block; + min-width: 10px; + padding: 3px 7px; + font-size: 12px; + font-weight: bold; + color: #ffffff; + line-height: 1; + vertical-align: baseline; + white-space: nowrap; + text-align: center; + background-color: #999999; + border-radius: 10px; +} +.note-editor .badge:empty { + display: none; +} +.note-editor a.badge:hover, +.note-editor a.badge:focus { + color: #ffffff; + text-decoration: none; + cursor: pointer; +} +.note-editor .btn .badge { + position: relative; + top: -1px; +} +.note-editor a.list-group-item.active > .badge, +.note-editor .nav-pills > .active > a > .badge { + color: #428bca; + background-color: #ffffff; +} +.note-editor .nav-pills > li > a > .badge { + margin-left: 3px; +} +.note-editor .jumbotron { + padding: 30px; + margin-bottom: 30px; + font-size: 21px; + font-weight: 200; + line-height: 2.1428571435; + color: inherit; + background-color: #eeeeee; +} +.note-editor .jumbotron h1 { + line-height: 1; + color: inherit; +} +.note-editor .jumbotron p { + line-height: 1.4; +} +.container .note-editor .jumbotron { + border-radius: 6px; +} +@media screen and (min-width: 768px) { + .note-editor .jumbotron { + padding-top: 48px; + padding-bottom: 48px; + } + .container .note-editor .jumbotron { + padding-left: 60px; + padding-right: 60px; + } + .note-editor .jumbotron h1 { + font-size: 63px; + } +} +.note-editor .thumbnail { + padding: 4px; + line-height: 1.428571429; + background-color: #ffffff; + border: 1px solid #dddddd; + border-radius: 4px; + -webkit-transition: all 0.2s ease-in-out; + transition: all 0.2s ease-in-out; + display: inline-block; + max-width: 100%; + height: auto; + display: block; + margin-bottom: 20px; +} +.note-editor .thumbnail > img { + display: block; + max-width: 100%; + height: auto; +} +.note-editor a.thumbnail:hover, +.note-editor a.thumbnail:focus, +.note-editor a.thumbnail.active { + border-color: #428bca; +} +.note-editor .thumbnail > img { + margin-left: auto; + margin-right: auto; +} +.note-editor .thumbnail .caption { + padding: 9px; + color: #333333; +} +.note-editor .alert { + padding: 15px; + margin-bottom: 20px; + border: 1px solid transparent; + border-radius: 4px; +} +.note-editor .alert h4 { + margin-top: 0; + color: inherit; +} +.note-editor .alert .alert-link { + font-weight: bold; +} +.note-editor .alert > p, +.note-editor .alert > ul { + margin-bottom: 0; +} +.note-editor .alert > p + p { + margin-top: 5px; +} +.note-editor .alert-dismissable { + padding-right: 35px; +} +.note-editor .alert-dismissable .close { + position: relative; + top: -2px; + right: -21px; + color: inherit; +} +.note-editor .alert-success { + background-color: #dff0d8; + border-color: #d6e9c6; + color: #468847; +} +.note-editor .alert-success hr { + border-top-color: #c9e2b3; +} +.note-editor .alert-success .alert-link { + color: #356635; +} +.note-editor .alert-info { + background-color: #d9edf7; + border-color: #bce8f1; + color: #3a87ad; +} +.note-editor .alert-info hr { + border-top-color: #a6e1ec; +} +.note-editor .alert-info .alert-link { + color: #2d6987; +} +.note-editor .alert-warning { + background-color: #fcf8e3; + border-color: #faebcc; + color: #c09853; +} +.note-editor .alert-warning hr { + border-top-color: #f7e1b5; +} +.note-editor .alert-warning .alert-link { + color: #a47e3c; +} +.note-editor .alert-danger { + background-color: #f2dede; + border-color: #ebccd1; + color: #b94a48; +} +.note-editor .alert-danger hr { + border-top-color: #e4b9c0; +} +.note-editor .alert-danger .alert-link { + color: #953b39; +} +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@-moz-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@-o-keyframes progress-bar-stripes { + from { + background-position: 0 0; + } + to { + background-position: 40px 0; + } +} +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +.note-editor .progress { + overflow: hidden; + height: 20px; + margin-bottom: 20px; + background-color: #f5f5f5; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); +} +.note-editor .progress-bar { + float: left; + width: 0%; + height: 100%; + font-size: 12px; + line-height: 20px; + color: #ffffff; + text-align: center; + background-color: #428bca; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + -webkit-transition: width 0.6s ease; + transition: width 0.6s ease; +} +.note-editor .progress-striped .progress-bar { + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: 40px 40px; +} +.note-editor .progress.active .progress-bar { + -webkit-animation: progress-bar-stripes 2s linear infinite; + -moz-animation: progress-bar-stripes 2s linear infinite; + -ms-animation: progress-bar-stripes 2s linear infinite; + -o-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite; +} +.note-editor .progress-bar-success { + background-color: #5cb85c; +} +.progress-striped .note-editor .progress-bar-success { + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.note-editor .progress-bar-info { + background-color: #5bc0de; +} +.progress-striped .note-editor .progress-bar-info { + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.note-editor .progress-bar-warning { + background-color: #f0ad4e; +} +.progress-striped .note-editor .progress-bar-warning { + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.note-editor .progress-bar-danger { + background-color: #d9534f; +} +.progress-striped .note-editor .progress-bar-danger { + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.note-editor .media, +.note-editor .media-body { + overflow: hidden; + zoom: 1; +} +.note-editor .media, +.note-editor .media .media { + margin-top: 15px; +} +.note-editor .media:first-child { + margin-top: 0; +} +.note-editor .media-object { + display: block; +} +.note-editor .media-heading { + margin: 0 0 5px; +} +.note-editor .media > .pull-left { + margin-right: 10px; +} +.note-editor .media > .pull-right { + margin-left: 10px; +} +.note-editor .media-list { + padding-left: 0; + list-style: none; +} +.note-editor .list-group { + margin-bottom: 20px; + padding-left: 0; +} +.note-editor .list-group-item { + position: relative; + display: block; + padding: 10px 15px; + margin-bottom: -1px; + background-color: #ffffff; + border: 1px solid #dddddd; +} +.note-editor .list-group-item:first-child { + border-top-right-radius: 4px; + border-top-left-radius: 4px; +} +.note-editor .list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +.note-editor .list-group-item > .badge { + float: right; +} +.note-editor .list-group-item > .badge + .badge { + margin-right: 5px; +} +.note-editor a.list-group-item { + color: #555555; +} +.note-editor a.list-group-item .list-group-item-heading { + color: #333333; +} +.note-editor a.list-group-item:hover, +.note-editor a.list-group-item:focus { + text-decoration: none; + background-color: #f5f5f5; +} +.note-editor a.list-group-item.active, +.note-editor a.list-group-item.active:hover, +.note-editor a.list-group-item.active:focus { + z-index: 2; + color: #ffffff; + background-color: #428bca; + border-color: #428bca; +} +.note-editor a.list-group-item.active .list-group-item-heading, +.note-editor a.list-group-item.active:hover .list-group-item-heading, +.note-editor a.list-group-item.active:focus .list-group-item-heading { + color: inherit; +} +.note-editor a.list-group-item.active .list-group-item-text, +.note-editor a.list-group-item.active:hover .list-group-item-text, +.note-editor a.list-group-item.active:focus .list-group-item-text { + color: #e1edf7; +} +.note-editor .list-group-item-heading { + margin-top: 0; + margin-bottom: 5px; +} +.note-editor .list-group-item-text { + margin-bottom: 0; + line-height: 1.3; +} +.note-editor .panel { + margin-bottom: 20px; + background-color: #ffffff; + border: 1px solid transparent; + border-radius: 4px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); +} +.note-editor .panel-body { + padding: 15px; +} +.note-editor .panel-body:before, +.note-editor .panel-body:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .panel-body:after { + clear: both; +} +.note-editor .panel-body:before, +.note-editor .panel-body:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.note-editor .panel-body:after { + clear: both; +} +.note-editor .panel > .list-group { + margin-bottom: 0; +} +.note-editor .panel > .list-group .list-group-item { + border-width: 1px 0; +} +.note-editor .panel > .list-group .list-group-item:first-child { + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.note-editor .panel > .list-group .list-group-item:last-child { + border-bottom: 0; +} +.note-editor .panel-heading + .list-group .list-group-item:first-child { + border-top-width: 0; +} +.note-editor .panel > .table, +.note-editor .panel > .table-responsive { + margin-bottom: 0; +} +.note-editor .panel > .panel-body + .table, +.note-editor .panel > .panel-body + .table-responsive { + border-top: 1px solid #dddddd; +} +.note-editor .panel > .table-bordered, +.note-editor .panel > .table-responsive > .table-bordered { + border: 0; +} +.note-editor .panel > .table-bordered > thead > tr > th:first-child, +.note-editor .panel > .table-responsive > .table-bordered > thead > tr > th:first-child, +.note-editor .panel > .table-bordered > tbody > tr > th:first-child, +.note-editor .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, +.note-editor .panel > .table-bordered > tfoot > tr > th:first-child, +.note-editor .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, +.note-editor .panel > .table-bordered > thead > tr > td:first-child, +.note-editor .panel > .table-responsive > .table-bordered > thead > tr > td:first-child, +.note-editor .panel > .table-bordered > tbody > tr > td:first-child, +.note-editor .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, +.note-editor .panel > .table-bordered > tfoot > tr > td:first-child, +.note-editor .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; +} +.note-editor .panel > .table-bordered > thead > tr > th:last-child, +.note-editor .panel > .table-responsive > .table-bordered > thead > tr > th:last-child, +.note-editor .panel > .table-bordered > tbody > tr > th:last-child, +.note-editor .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, +.note-editor .panel > .table-bordered > tfoot > tr > th:last-child, +.note-editor .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, +.note-editor .panel > .table-bordered > thead > tr > td:last-child, +.note-editor .panel > .table-responsive > .table-bordered > thead > tr > td:last-child, +.note-editor .panel > .table-bordered > tbody > tr > td:last-child, +.note-editor .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, +.note-editor .panel > .table-bordered > tfoot > tr > td:last-child, +.note-editor .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; +} +.note-editor .panel > .table-bordered > thead > tr:last-child > th, +.note-editor .panel > .table-responsive > .table-bordered > thead > tr:last-child > th, +.note-editor .panel > .table-bordered > tbody > tr:last-child > th, +.note-editor .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, +.note-editor .panel > .table-bordered > tfoot > tr:last-child > th, +.note-editor .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th, +.note-editor .panel > .table-bordered > thead > tr:last-child > td, +.note-editor .panel > .table-responsive > .table-bordered > thead > tr:last-child > td, +.note-editor .panel > .table-bordered > tbody > tr:last-child > td, +.note-editor .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, +.note-editor .panel > .table-bordered > tfoot > tr:last-child > td, +.note-editor .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td { + border-bottom: 0; +} +.note-editor .panel-heading { + padding: 10px 15px; + border-bottom: 1px solid transparent; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} +.note-editor .panel-title { + margin-top: 0; + margin-bottom: 0; + font-size: 16px; +} +.note-editor .panel-title > a { + color: inherit; +} +.note-editor .panel-footer { + padding: 10px 15px; + background-color: #f5f5f5; + border-top: 1px solid #dddddd; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.note-editor .panel-group .panel { + margin-bottom: 0; + border-radius: 4px; + overflow: hidden; +} +.note-editor .panel-group .panel + .panel { + margin-top: 5px; +} +.note-editor .panel-group .panel-heading { + border-bottom: 0; +} +.note-editor .panel-group .panel-heading + .panel-collapse .panel-body { + border-top: 1px solid #dddddd; +} +.note-editor .panel-group .panel-footer { + border-top: 0; +} +.note-editor .panel-group .panel-footer + .panel-collapse .panel-body { + border-bottom: 1px solid #dddddd; +} +.note-editor .panel-default { + border-color: #dddddd; +} +.note-editor .panel-default > .panel-heading { + color: #333333; + background-color: #f5f5f5; + border-color: #dddddd; +} +.note-editor .panel-default > .panel-heading + .panel-collapse .panel-body { + border-top-color: #dddddd; +} +.note-editor .panel-default > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #dddddd; +} +.note-editor .panel-primary { + border-color: #428bca; +} +.note-editor .panel-primary > .panel-heading { + color: #ffffff; + background-color: #428bca; + border-color: #428bca; +} +.note-editor .panel-primary > .panel-heading + .panel-collapse .panel-body { + border-top-color: #428bca; +} +.note-editor .panel-primary > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #428bca; +} +.note-editor .panel-success { + border-color: #d6e9c6; +} +.note-editor .panel-success > .panel-heading { + color: #468847; + background-color: #dff0d8; + border-color: #d6e9c6; +} +.note-editor .panel-success > .panel-heading + .panel-collapse .panel-body { + border-top-color: #d6e9c6; +} +.note-editor .panel-success > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #d6e9c6; +} +.note-editor .panel-warning { + border-color: #faebcc; +} +.note-editor .panel-warning > .panel-heading { + color: #c09853; + background-color: #fcf8e3; + border-color: #faebcc; +} +.note-editor .panel-warning > .panel-heading + .panel-collapse .panel-body { + border-top-color: #faebcc; +} +.note-editor .panel-warning > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #faebcc; +} +.note-editor .panel-danger { + border-color: #ebccd1; +} +.note-editor .panel-danger > .panel-heading { + color: #b94a48; + background-color: #f2dede; + border-color: #ebccd1; +} +.note-editor .panel-danger > .panel-heading + .panel-collapse .panel-body { + border-top-color: #ebccd1; +} +.note-editor .panel-danger > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #ebccd1; +} +.note-editor .panel-info { + border-color: #bce8f1; +} +.note-editor .panel-info > .panel-heading { + color: #3a87ad; + background-color: #d9edf7; + border-color: #bce8f1; +} +.note-editor .panel-info > .panel-heading + .panel-collapse .panel-body { + border-top-color: #bce8f1; +} +.note-editor .panel-info > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #bce8f1; +} +.note-editor .well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: #f5f5f5; + border: 1px solid #e3e3e3; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); +} +.note-editor .well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, 0.15); +} +.note-editor .well-lg { + padding: 24px; + border-radius: 6px; +} +.note-editor .well-sm { + padding: 9px; + border-radius: 3px; +} +.note-editor .close { + float: right; + font-size: 21px; + font-weight: bold; + line-height: 1; + color: #000000; + text-shadow: 0 1px 0 #ffffff; + opacity: 0.2; + filter: alpha(opacity=20); +} +.note-editor .close:hover, +.note-editor .close:focus { + color: #000000; + text-decoration: none; + cursor: pointer; + opacity: 0.5; + filter: alpha(opacity=50); +} +button.note-editor .close { + padding: 0; + cursor: pointer; + background: transparent; + border: 0; + -webkit-appearance: none; +} +.modal-open { + overflow: hidden; +} +.modal { + display: none; + overflow: auto; + overflow-y: scroll; + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; +} +.modal.fade .modal-dialog { + -webkit-transform: translate(0, -25%); + -ms-transform: translate(0, -25%); + transform: translate(0, -25%); + -webkit-transition: -webkit-transform 0.3s ease-out; + -moz-transition: -moz-transform 0.3s ease-out; + -o-transition: -o-transform 0.3s ease-out; + transition: transform 0.3s ease-out; +} +.modal.in .modal-dialog { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + transform: translate(0, 0); +} +.modal-dialog { + margin-left: auto; + margin-right: auto; + width: auto; + padding: 10px; + z-index: 1050; +} +.modal-content { + position: relative; + background-color: #ffffff; + border: 1px solid #999999; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 6px; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + background-clip: padding-box; + outline: none; +} +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1030; + background-color: #000000; +} +.modal-backdrop.fade { + opacity: 0; + filter: alpha(opacity=0); +} +.modal-backdrop.in { + opacity: 0.5; + filter: alpha(opacity=50); +} +.modal-header { + padding: 15px; + border-bottom: 1px solid #e5e5e5; + min-height: 16.428571429px; +} +.modal-header .close { + margin-top: -2px; +} +.modal-title { + margin: 0; + line-height: 1.428571429; +} +.modal-body { + position: relative; + padding: 20px; +} +.modal-footer { + margin-top: 15px; + padding: 19px 20px 20px; + text-align: right; + border-top: 1px solid #e5e5e5; +} +.modal-footer:before, +.modal-footer:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.modal-footer:after { + clear: both; +} +.modal-footer:before, +.modal-footer:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.modal-footer:after { + clear: both; +} +.modal-footer .btn + .btn { + margin-left: 5px; + margin-bottom: 0; +} +.modal-footer .btn-group .btn + .btn { + margin-left: -1px; +} +.modal-footer .btn-block + .btn-block { + margin-left: 0; +} +@media screen and (min-width: 768px) { + .modal-dialog { + width: 600px; + padding-top: 30px; + padding-bottom: 30px; + } + .modal-content { + -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); + box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); + } +} +.tooltip { + position: absolute; + z-index: 1030; + display: block; + visibility: visible; + font-size: 12px; + line-height: 1.4; + opacity: 0; + filter: alpha(opacity=0); +} +.tooltip.in { + opacity: 0.9; + filter: alpha(opacity=90); +} +.tooltip.top { + margin-top: -3px; + padding: 5px 0; +} +.tooltip.right { + margin-left: 3px; + padding: 0 5px; +} +.tooltip.bottom { + margin-top: 3px; + padding: 5px 0; +} +.tooltip.left { + margin-left: -3px; + padding: 0 5px; +} +.tooltip-inner { + max-width: 200px; + padding: 3px 8px; + color: #ffffff; + text-align: center; + text-decoration: none; + background-color: #000000; + border-radius: 4px; +} +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.tooltip.top .tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-width: 5px 5px 0; + border-top-color: #000000; +} +.tooltip.top-left .tooltip-arrow { + bottom: 0; + left: 5px; + border-width: 5px 5px 0; + border-top-color: #000000; +} +.tooltip.top-right .tooltip-arrow { + bottom: 0; + right: 5px; + border-width: 5px 5px 0; + border-top-color: #000000; +} +.tooltip.right .tooltip-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-width: 5px 5px 5px 0; + border-right-color: #000000; +} +.tooltip.left .tooltip-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-width: 5px 0 5px 5px; + border-left-color: #000000; +} +.tooltip.bottom .tooltip-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000000; +} +.tooltip.bottom-left .tooltip-arrow { + top: 0; + left: 5px; + border-width: 0 5px 5px; + border-bottom-color: #000000; +} +.tooltip.bottom-right .tooltip-arrow { + top: 0; + right: 5px; + border-width: 0 5px 5px; + border-bottom-color: #000000; +} +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1010; + display: none; + max-width: 276px; + padding: 1px; + text-align: left; + background-color: #ffffff; + background-clip: padding-box; + border: 1px solid #cccccc; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + white-space: normal; +} +.popover.top { + margin-top: -10px; +} +.popover.right { + margin-left: 10px; +} +.popover.bottom { + margin-top: 10px; +} +.popover.left { + margin-left: -10px; +} +.popover-title { + margin: 0; + padding: 8px 14px; + font-size: 14px; + font-weight: normal; + line-height: 18px; + background-color: #f7f7f7; + border-bottom: 1px solid #ebebeb; + border-radius: 5px 5px 0 0; +} +.popover-content { + padding: 9px 14px; +} +.popover .arrow, +.popover .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.popover .arrow { + border-width: 11px; +} +.popover .arrow:after { + border-width: 10px; + content: ""; +} +.popover.top .arrow { + left: 50%; + margin-left: -11px; + border-bottom-width: 0; + border-top-color: #999999; + border-top-color: rgba(0, 0, 0, 0.25); + bottom: -11px; +} +.popover.top .arrow:after { + content: " "; + bottom: 1px; + margin-left: -10px; + border-bottom-width: 0; + border-top-color: #ffffff; +} +.popover.right .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-left-width: 0; + border-right-color: #999999; + border-right-color: rgba(0, 0, 0, 0.25); +} +.popover.right .arrow:after { + content: " "; + left: 1px; + bottom: -10px; + border-left-width: 0; + border-right-color: #ffffff; +} +.popover.bottom .arrow { + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #999999; + border-bottom-color: rgba(0, 0, 0, 0.25); + top: -11px; +} +.popover.bottom .arrow:after { + content: " "; + top: 1px; + margin-left: -10px; + border-top-width: 0; + border-bottom-color: #ffffff; +} +.popover.left .arrow { + top: 50%; + right: -11px; + margin-top: -11px; + border-right-width: 0; + border-left-color: #999999; + border-left-color: rgba(0, 0, 0, 0.25); +} +.popover.left .arrow:after { + content: " "; + right: 1px; + border-right-width: 0; + border-left-color: #ffffff; + bottom: -10px; +} +.carousel { + position: relative; +} +.carousel-inner { + position: relative; + overflow: hidden; + width: 100%; +} +.carousel-inner > .item { + display: none; + position: relative; + -webkit-transition: 0.6s ease-in-out left; + transition: 0.6s ease-in-out left; +} +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + display: block; + max-width: 100%; + height: auto; + line-height: 1; +} +.carousel-inner > .active, +.carousel-inner > .next, +.carousel-inner > .prev { + display: block; +} +.carousel-inner > .active { + left: 0; +} +.carousel-inner > .next, +.carousel-inner > .prev { + position: absolute; + top: 0; + width: 100%; +} +.carousel-inner > .next { + left: 100%; +} +.carousel-inner > .prev { + left: -100%; +} +.carousel-inner > .next.left, +.carousel-inner > .prev.right { + left: 0; +} +.carousel-inner > .active.left { + left: -100%; +} +.carousel-inner > .active.right { + left: 100%; +} +.carousel-control { + position: absolute; + top: 0; + left: 0; + bottom: 0; + width: 15%; + opacity: 0.5; + filter: alpha(opacity=50); + font-size: 20px; + color: #ffffff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); +} +.carousel-control.left { + background-image: -webkit-gradient(linear, 0% top, 100% top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001))); + background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.5) 0%), color-stop(rgba(0, 0, 0, 0.0001) 100%)); + background-image: -moz-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); + background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); +} +.carousel-control.right { + left: auto; + right: 0; + background-image: -webkit-gradient(linear, 0% top, 100% top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5))); + background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.0001) 0%), color-stop(rgba(0, 0, 0, 0.5) 100%)); + background-image: -moz-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); + background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); +} +.carousel-control:hover, +.carousel-control:focus { + color: #ffffff; + text-decoration: none; + opacity: 0.9; + filter: alpha(opacity=90); +} +.carousel-control .icon-prev, +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-left, +.carousel-control .glyphicon-chevron-right { + position: absolute; + top: 50%; + z-index: 5; + display: inline-block; +} +.carousel-control .icon-prev, +.carousel-control .glyphicon-chevron-left { + left: 50%; +} +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-right { + right: 50%; +} +.carousel-control .icon-prev, +.carousel-control .icon-next { + width: 20px; + height: 20px; + margin-top: -10px; + margin-left: -10px; + font-family: serif; +} +.carousel-control .icon-prev:before { + content: '\2039'; +} +.carousel-control .icon-next:before { + content: '\203a'; +} +.carousel-indicators { + position: absolute; + bottom: 10px; + left: 50%; + z-index: 15; + width: 60%; + margin-left: -30%; + padding-left: 0; + list-style: none; + text-align: center; +} +.carousel-indicators li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + border: 1px solid #ffffff; + border-radius: 10px; + cursor: pointer; +} +.carousel-indicators .active { + margin: 0; + width: 12px; + height: 12px; + background-color: #ffffff; +} +.carousel-caption { + position: absolute; + left: 15%; + right: 15%; + bottom: 20px; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #ffffff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); +} +.carousel-caption .btn { + text-shadow: none; +} +@media screen and (min-width: 768px) { + .carousel-control .glyphicons-chevron-left, + .carousel-control .glyphicons-chevron-right, + .carousel-control .icon-prev, + .carousel-control .icon-next { + width: 30px; + height: 30px; + margin-top: -15px; + margin-left: -15px; + font-size: 30px; + } + .carousel-caption { + left: 20%; + right: 20%; + padding-bottom: 30px; + } + .carousel-indicators { + bottom: 20px; + } +} +.clearfix:before, +.clearfix:after { + content: " "; + /* 1 */ + + display: table; + /* 2 */ + +} +.clearfix:after { + clear: both; +} +.center-block { + display: block; + margin-left: auto; + margin-right: auto; +} +.pull-right { + float: right !important; +} +.pull-left { + float: left !important; +} +.hide { + display: none !important; +} +.show { + display: block !important; +} +.invisible { + visibility: hidden; +} +.text-hide { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} +.hidden { + display: none !important; + visibility: hidden !important; +} +.affix { + position: fixed; +} +@-ms-viewport { + width: device-width; +} +.visible-xs, +tr.visible-xs, +th.visible-xs, +td.visible-xs { + display: none !important; +} +@media (max-width: 767px) { + .visible-xs { + display: block !important; + } + tr.visible-xs { + display: table-row !important; + } + th.visible-xs, + td.visible-xs { + display: table-cell !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-xs.visible-sm { + display: block !important; + } + tr.visible-xs.visible-sm { + display: table-row !important; + } + th.visible-xs.visible-sm, + td.visible-xs.visible-sm { + display: table-cell !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-xs.visible-md { + display: block !important; + } + tr.visible-xs.visible-md { + display: table-row !important; + } + th.visible-xs.visible-md, + td.visible-xs.visible-md { + display: table-cell !important; + } +} +@media (min-width: 1200px) { + .visible-xs.visible-lg { + display: block !important; + } + tr.visible-xs.visible-lg { + display: table-row !important; + } + th.visible-xs.visible-lg, + td.visible-xs.visible-lg { + display: table-cell !important; + } +} +.visible-sm, +tr.visible-sm, +th.visible-sm, +td.visible-sm { + display: none !important; +} +@media (max-width: 767px) { + .visible-sm.visible-xs { + display: block !important; + } + tr.visible-sm.visible-xs { + display: table-row !important; + } + th.visible-sm.visible-xs, + td.visible-sm.visible-xs { + display: table-cell !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm { + display: block !important; + } + tr.visible-sm { + display: table-row !important; + } + th.visible-sm, + td.visible-sm { + display: table-cell !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-sm.visible-md { + display: block !important; + } + tr.visible-sm.visible-md { + display: table-row !important; + } + th.visible-sm.visible-md, + td.visible-sm.visible-md { + display: table-cell !important; + } +} +@media (min-width: 1200px) { + .visible-sm.visible-lg { + display: block !important; + } + tr.visible-sm.visible-lg { + display: table-row !important; + } + th.visible-sm.visible-lg, + td.visible-sm.visible-lg { + display: table-cell !important; + } +} +.visible-md, +tr.visible-md, +th.visible-md, +td.visible-md { + display: none !important; +} +@media (max-width: 767px) { + .visible-md.visible-xs { + display: block !important; + } + tr.visible-md.visible-xs { + display: table-row !important; + } + th.visible-md.visible-xs, + td.visible-md.visible-xs { + display: table-cell !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-md.visible-sm { + display: block !important; + } + tr.visible-md.visible-sm { + display: table-row !important; + } + th.visible-md.visible-sm, + td.visible-md.visible-sm { + display: table-cell !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md { + display: block !important; + } + tr.visible-md { + display: table-row !important; + } + th.visible-md, + td.visible-md { + display: table-cell !important; + } +} +@media (min-width: 1200px) { + .visible-md.visible-lg { + display: block !important; + } + tr.visible-md.visible-lg { + display: table-row !important; + } + th.visible-md.visible-lg, + td.visible-md.visible-lg { + display: table-cell !important; + } +} +.visible-lg, +tr.visible-lg, +th.visible-lg, +td.visible-lg { + display: none !important; +} +@media (max-width: 767px) { + .visible-lg.visible-xs { + display: block !important; + } + tr.visible-lg.visible-xs { + display: table-row !important; + } + th.visible-lg.visible-xs, + td.visible-lg.visible-xs { + display: table-cell !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-lg.visible-sm { + display: block !important; + } + tr.visible-lg.visible-sm { + display: table-row !important; + } + th.visible-lg.visible-sm, + td.visible-lg.visible-sm { + display: table-cell !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-lg.visible-md { + display: block !important; + } + tr.visible-lg.visible-md { + display: table-row !important; + } + th.visible-lg.visible-md, + td.visible-lg.visible-md { + display: table-cell !important; + } +} +@media (min-width: 1200px) { + .visible-lg { + display: block !important; + } + tr.visible-lg { + display: table-row !important; + } + th.visible-lg, + td.visible-lg { + display: table-cell !important; + } +} +.hidden-xs { + display: block !important; +} +tr.hidden-xs { + display: table-row !important; +} +th.hidden-xs, +td.hidden-xs { + display: table-cell !important; +} +@media (max-width: 767px) { + .hidden-xs, + tr.hidden-xs, + th.hidden-xs, + td.hidden-xs { + display: none !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .hidden-xs.hidden-sm, + tr.hidden-xs.hidden-sm, + th.hidden-xs.hidden-sm, + td.hidden-xs.hidden-sm { + display: none !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-xs.hidden-md, + tr.hidden-xs.hidden-md, + th.hidden-xs.hidden-md, + td.hidden-xs.hidden-md { + display: none !important; + } +} +@media (min-width: 1200px) { + .hidden-xs.hidden-lg, + tr.hidden-xs.hidden-lg, + th.hidden-xs.hidden-lg, + td.hidden-xs.hidden-lg { + display: none !important; + } +} +.hidden-sm { + display: block !important; +} +tr.hidden-sm { + display: table-row !important; +} +th.hidden-sm, +td.hidden-sm { + display: table-cell !important; +} +@media (max-width: 767px) { + .hidden-sm.hidden-xs, + tr.hidden-sm.hidden-xs, + th.hidden-sm.hidden-xs, + td.hidden-sm.hidden-xs { + display: none !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .hidden-sm, + tr.hidden-sm, + th.hidden-sm, + td.hidden-sm { + display: none !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-sm.hidden-md, + tr.hidden-sm.hidden-md, + th.hidden-sm.hidden-md, + td.hidden-sm.hidden-md { + display: none !important; + } +} +@media (min-width: 1200px) { + .hidden-sm.hidden-lg, + tr.hidden-sm.hidden-lg, + th.hidden-sm.hidden-lg, + td.hidden-sm.hidden-lg { + display: none !important; + } +} +.hidden-md { + display: block !important; +} +tr.hidden-md { + display: table-row !important; +} +th.hidden-md, +td.hidden-md { + display: table-cell !important; +} +@media (max-width: 767px) { + .hidden-md.hidden-xs, + tr.hidden-md.hidden-xs, + th.hidden-md.hidden-xs, + td.hidden-md.hidden-xs { + display: none !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .hidden-md.hidden-sm, + tr.hidden-md.hidden-sm, + th.hidden-md.hidden-sm, + td.hidden-md.hidden-sm { + display: none !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-md, + tr.hidden-md, + th.hidden-md, + td.hidden-md { + display: none !important; + } +} +@media (min-width: 1200px) { + .hidden-md.hidden-lg, + tr.hidden-md.hidden-lg, + th.hidden-md.hidden-lg, + td.hidden-md.hidden-lg { + display: none !important; + } +} +.hidden-lg { + display: block !important; +} +tr.hidden-lg { + display: table-row !important; +} +th.hidden-lg, +td.hidden-lg { + display: table-cell !important; +} +@media (max-width: 767px) { + .hidden-lg.hidden-xs, + tr.hidden-lg.hidden-xs, + th.hidden-lg.hidden-xs, + td.hidden-lg.hidden-xs { + display: none !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .hidden-lg.hidden-sm, + tr.hidden-lg.hidden-sm, + th.hidden-lg.hidden-sm, + td.hidden-lg.hidden-sm { + display: none !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-lg.hidden-md, + tr.hidden-lg.hidden-md, + th.hidden-lg.hidden-md, + td.hidden-lg.hidden-md { + display: none !important; + } +} +@media (min-width: 1200px) { + .hidden-lg, + tr.hidden-lg, + th.hidden-lg, + td.hidden-lg { + display: none !important; + } +} +.visible-print, +tr.visible-print, +th.visible-print, +td.visible-print { + display: none !important; +} +@media print { + .visible-print { + display: block !important; + } + tr.visible-print { + display: table-row !important; + } + th.visible-print, + td.visible-print { + display: table-cell !important; + } + .hidden-print, + tr.hidden-print, + th.hidden-print, + td.hidden-print { + display: none !important; + } +} diff --git a/ajax/libs/summernote/0.5.1/summernote.css b/ajax/libs/summernote/0.5.1/summernote.css new file mode 100644 index 000000000..4dc3d1b48 --- /dev/null +++ b/ajax/libs/summernote/0.5.1/summernote.css @@ -0,0 +1 @@ +.note-editor{border:1px solid #a9a9a9}.note-editor .note-dropzone{position:absolute;z-index:1;display:none;color:#87cefa;background-color:white;border:2px dashed #87cefa;opacity:.95;pointer-event:none}.note-editor .note-dropzone .note-dropzone-message{display:table-cell;font-size:28px;font-weight:bold;text-align:center;vertical-align:middle}.note-editor .note-dropzone.hover{color:#098ddf;border:2px dashed #098ddf}.note-editor.dragover .note-dropzone{display:table}.note-editor.fullscreen{position:fixed;top:0;left:0;z-index:1050;width:100%}.note-editor.fullscreen .note-editable{background-color:white}.note-editor.fullscreen .note-resizebar{display:none}.note-editor.codeview .note-editable{display:none}.note-editor.codeview .note-codable{display:block}.note-editor .note-toolbar{padding-bottom:5px;padding-left:5px;margin:0;background-color:#f5f5f5;border-bottom:1px solid #a9a9a9}.note-editor .note-toolbar>.btn-group{margin-top:5px;margin-right:5px;margin-left:0}.note-editor .note-toolbar .note-table .dropdown-menu{min-width:0;padding:5px}.note-editor .note-toolbar .note-table .dropdown-menu .note-dimension-picker{font-size:18px}.note-editor .note-toolbar .note-table .dropdown-menu .note-dimension-picker .note-dimension-picker-mousecatcher{position:absolute!important;z-index:3;width:10em;height:10em;cursor:pointer}.note-editor .note-toolbar .note-table .dropdown-menu .note-dimension-picker .note-dimension-picker-unhighlighted{position:relative!important;z-index:1;width:5em;height:5em;background:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASAgMAAAAroGbEAAAACVBMVEUAAIj4+Pjp6ekKlAqjAAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfYAR0BKhmnaJzPAAAAG0lEQVQI12NgAAOtVatWMTCohoaGUY+EmIkEAEruEzK2J7tvAAAAAElFTkSuQmCC') repeat}.note-editor .note-toolbar .note-table .dropdown-menu .note-dimension-picker .note-dimension-picker-highlighted{position:absolute!important;z-index:2;width:1em;height:1em;background:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASAgMAAAAroGbEAAAACVBMVEUAAIjd6vvD2f9LKLW+AAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfYAR0BKwNDEVT0AAAAG0lEQVQI12NgAAOtVatWMTCohoaGUY+EmIkEAEruEzK2J7tvAAAAAElFTkSuQmCC') repeat}.note-editor .note-toolbar .note-style h1,.note-editor .note-toolbar .note-style h2,.note-editor .note-toolbar .note-style h3,.note-editor .note-toolbar .note-style h4,.note-editor .note-toolbar .note-style h5,.note-editor .note-toolbar .note-style h6,.note-editor .note-toolbar .note-style blockquote{margin:0}.note-editor .note-toolbar .note-color .dropdown-toggle{width:20px;padding-left:5px}.note-editor .note-toolbar .note-color .dropdown-menu{min-width:290px}.note-editor .note-toolbar .note-color .dropdown-menu .btn-group{margin:0}.note-editor .note-toolbar .note-color .dropdown-menu .btn-group:first-child{margin:0 5px}.note-editor .note-toolbar .note-color .dropdown-menu .btn-group .note-palette-title{margin:2px 7px;font-size:12px;text-align:center;border-bottom:1px solid #eee}.note-editor .note-toolbar .note-color .dropdown-menu .btn-group .note-color-reset{padding:0 3px;margin:5px;font-size:12px;cursor:pointer;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.note-editor .note-toolbar .note-color .dropdown-menu .btn-group .note-color-reset:hover{background:#eee}.note-editor .note-toolbar .note-para .dropdown-menu{min-width:216px;padding:5px}.note-editor .note-toolbar .note-para .dropdown-menu>div:first-child{margin-right:5px}.note-editor .note-statusbar{background-color:#f5f5f5}.note-editor .note-statusbar .note-resizebar{width:100%;height:8px;cursor:s-resize;border-top:1px solid #a9a9a9}.note-editor .note-statusbar .note-resizebar .note-icon-bar{width:20px;margin:1px auto;border-top:1px solid #a9a9a9}.note-editor .note-popover .popover{max-width:none}.note-editor .note-popover .popover .popover-content{padding:5px}.note-editor .note-popover .popover .popover-content a{display:inline-block;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.note-editor .note-popover .popover .popover-content .btn-group+.btn-group{margin-left:5px}.note-editor .note-popover .popover .arrow{left:20px}.note-editor .note-handle .note-control-selection{position:absolute;display:none;border:1px solid black}.note-editor .note-handle .note-control-selection>div{position:absolute}.note-editor .note-handle .note-control-selection .note-control-selection-bg{width:100%;height:100%;background-color:black;-webkit-opacity:.3;-khtml-opacity:.3;-moz-opacity:.3;opacity:.3;-ms-filter:alpha(opacity=30);filter:alpha(opacity=30)}.note-editor .note-handle .note-control-selection .note-control-handle{width:7px;height:7px;border:1px solid black}.note-editor .note-handle .note-control-selection .note-control-holder{width:7px;height:7px;border:1px solid black}.note-editor .note-handle .note-control-selection .note-control-sizing{width:7px;height:7px;background-color:white;border:1px solid black}.note-editor .note-handle .note-control-selection .note-control-nw{top:-5px;left:-5px;border-right:0;border-bottom:0}.note-editor .note-handle .note-control-selection .note-control-ne{top:-5px;right:-5px;border-bottom:0;border-left:none}.note-editor .note-handle .note-control-selection .note-control-sw{bottom:-5px;left:-5px;border-top:0;border-right:0}.note-editor .note-handle .note-control-selection .note-control-se{right:-5px;bottom:-5px;cursor:se-resize}.note-editor .note-handle .note-control-selection .note-control-selection-info{right:0;bottom:0;padding:5px;margin:5px;font-size:12px;color:white;background-color:black;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-opacity:.7;-khtml-opacity:.7;-moz-opacity:.7;opacity:.7;-ms-filter:alpha(opacity=70);filter:alpha(opacity=70)}.note-editor .note-dialog>div{display:none}.note-editor .note-dialog .note-image-dialog .note-dropzone{min-height:100px;margin-bottom:10px;font-size:30px;line-height:4;color:lightgray;text-align:center;border:4px dashed lightgray}.note-editor .note-dialog .note-help-dialog{font-size:12px;color:#ccc;background:transparent;background-color:#222!important;border:0;-webkit-opacity:.9;-khtml-opacity:.9;-moz-opacity:.9;opacity:.9;-ms-filter:alpha(opacity=90);filter:alpha(opacity=90)}.note-editor .note-dialog .note-help-dialog .modal-content{background:transparent;border:1px solid white;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.note-editor .note-dialog .note-help-dialog a{font-size:12px;color:white}.note-editor .note-dialog .note-help-dialog .title{padding-bottom:5px;font-size:14px;font-weight:bold;color:white;border-bottom:white 1px solid}.note-editor .note-dialog .note-help-dialog .modal-close{font-size:14px;color:#dd0;cursor:pointer}.note-editor .note-dialog .note-help-dialog .note-shortcut-layout{width:100%}.note-editor .note-dialog .note-help-dialog .note-shortcut-layout td{vertical-align:top}.note-editor .note-dialog .note-help-dialog .note-shortcut{margin-top:8px}.note-editor .note-dialog .note-help-dialog .note-shortcut th{font-size:13px;color:#dd0;text-align:left}.note-editor .note-dialog .note-help-dialog .note-shortcut td:first-child{min-width:110px;padding-right:10px;font-family:"Courier New";color:#dd0;text-align:right}.note-editor .note-editable{padding:10px;overflow:auto;outline:0}.note-editor .note-editable[contenteditable="false"]{background-color:#e5e5e5}.note-editor .note-codable{display:none;width:100%;padding:10px;margin-bottom:0;font-family:Menlo,Monaco,monospace,sans-serif;font-size:14px;color:#ccc;background-color:#222;border:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;box-shadow:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;resize:none}.note-editor .dropdown-menu{min-width:90px}.note-editor .dropdown-menu.right{right:0;left:auto}.note-editor .dropdown-menu.right::before{right:9px;left:auto!important}.note-editor .dropdown-menu.right::after{right:10px;left:auto!important}.note-editor .dropdown-menu li a i{color:deepskyblue;visibility:hidden}.note-editor .dropdown-menu li a.checked i{visibility:visible}.note-editor .note-fontsize-10{font-size:10px}.note-editor .note-color-palette{line-height:1}.note-editor .note-color-palette div .note-color-btn{width:17px;height:17px;padding:0;margin:0;border:1px solid #fff}.note-editor .note-color-palette div .note-color-btn:hover{border:1px solid #000} \ No newline at end of file diff --git a/ajax/libs/summernote/0.5.1/summernote.js b/ajax/libs/summernote/0.5.1/summernote.js new file mode 100644 index 000000000..23c539b16 --- /dev/null +++ b/ajax/libs/summernote/0.5.1/summernote.js @@ -0,0 +1,3349 @@ +/** + * Super simple wysiwyg editor on Bootstrap v0.5.1 + * http://hackerwins.github.io/summernote/ + * + * summernote.js + * Copyright 2013 Alan Hong. and outher contributors + * summernote may be freely distributed under the MIT license./ + * + * Date: 2014-03-16T06:23Z + */ +(function (factory) { + /* global define */ + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module. + define(['jquery', 'codemirror'], factory); + } else { + // Browser globals: jQuery, CodeMirror + factory(window.jQuery, window.CodeMirror); + } +}(function ($, CodeMirror) { + + + + if ('function' !== typeof Array.prototype.reduce) { + /** + * Array.prototype.reduce fallback + * + * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce + */ + Array.prototype.reduce = function (callback, optInitialValue) { + var idx, value, length = this.length >>> 0, isValueSet = false; + if (1 < arguments.length) { + value = optInitialValue; + isValueSet = true; + } + for (idx = 0; length > idx; ++idx) { + if (this.hasOwnProperty(idx)) { + if (isValueSet) { + value = callback(value, this[idx], idx, this); + } else { + value = this[idx]; + isValueSet = true; + } + } + } + if (!isValueSet) { + throw new TypeError('Reduce of empty array with no initial value'); + } + return value; + }; + } + + /** + * Object which check platform and agent + */ + var agent = { + bMac: navigator.appVersion.indexOf('Mac') > -1, + bMSIE: navigator.userAgent.indexOf('MSIE') > -1, + bFF: navigator.userAgent.indexOf('Firefox') > -1, + jqueryVersion: parseFloat($.fn.jquery), + bCodeMirror: !!CodeMirror + }; + + /** + * func utils (for high-order func's arg) + */ + var func = (function () { + var eq = function (elA) { + return function (elB) { + return elA === elB; + }; + }; + + var eq2 = function (elA, elB) { + return elA === elB; + }; + + var ok = function () { + return true; + }; + + var fail = function () { + return false; + }; + + var not = function (f) { + return function () { + return !f.apply(f, arguments); + }; + }; + + var self = function (a) { + return a; + }; + + return { + eq: eq, + eq2: eq2, + ok: ok, + fail: fail, + not: not, + self: self + }; + })(); + + /** + * list utils + */ + var list = (function () { + /** + * returns the first element of an array. + * @param {Array} array + */ + var head = function (array) { + return array[0]; + }; + + /** + * returns the last element of an array. + * @param {Array} array + */ + var last = function (array) { + return array[array.length - 1]; + }; + + /** + * returns everything but the last entry of the array. + * @param {Array} array + */ + var initial = function (array) { + return array.slice(0, array.length - 1); + }; + + /** + * returns the rest of the elements in an array. + * @param {Array} array + */ + var tail = function (array) { + return array.slice(1); + }; + + /** + * returns next item. + * @param {Array} array + */ + var next = function (array, item) { + var idx = array.indexOf(item); + if (idx === -1) { return null; } + + return array[idx + 1]; + }; + + /** + * returns prev item. + * @param {Array} array + */ + var prev = function (array, item) { + var idx = array.indexOf(item); + if (idx === -1) { return null; } + + return array[idx - 1]; + }; + + /** + * get sum from a list + * @param {Array} array - array + * @param {Function} fn - iterator + */ + var sum = function (array, fn) { + fn = fn || func.self; + return array.reduce(function (memo, v) { + return memo + fn(v); + }, 0); + }; + + /** + * returns a copy of the collection with array type. + * @param {Collection} collection - collection eg) node.childNodes, ... + */ + var from = function (collection) { + var result = [], idx = -1, length = collection.length; + while (++idx < length) { + result[idx] = collection[idx]; + } + return result; + }; + + /** + * cluster elements by predicate function. + * @param {Array} array - array + * @param {Function} fn - predicate function for cluster rule + * @param {Array[]} + */ + var clusterBy = function (array, fn) { + if (array.length === 0) { return []; } + var aTail = tail(array); + return aTail.reduce(function (memo, v) { + var aLast = last(memo); + if (fn(last(aLast), v)) { + aLast[aLast.length] = v; + } else { + memo[memo.length] = [v]; + } + return memo; + }, [[head(array)]]); + }; + + /** + * returns a copy of the array with all falsy values removed + * @param {Array} array - array + * @param {Function} fn - predicate function for cluster rule + */ + var compact = function (array) { + var aResult = []; + for (var idx = 0, sz = array.length; idx < sz; idx ++) { + if (array[idx]) { aResult.push(array[idx]); } + } + return aResult; + }; + + return { head: head, last: last, initial: initial, tail: tail, + prev: prev, next: next, sum: sum, from: from, + compact: compact, clusterBy: clusterBy }; + })(); + + /** + * Dom functions + */ + var dom = (function () { + /** + * returns whether node is `note-editable` or not. + * + * @param {Element} node + * @return {Boolean} + */ + var isEditable = function (node) { + return node && $(node).hasClass('note-editable'); + }; + + var isControlSizing = function (node) { + return node && $(node).hasClass('note-control-sizing'); + }; + + /** + * build layoutInfo from $editor(.note-editor) + * + * @param {jQuery} $editor + * @return {Object} + */ + var buildLayoutInfo = function ($editor) { + var makeFinder = function (sClassName) { + return function () { return $editor.find(sClassName); }; + }; + return { + editor: function () { return $editor; }, + dropzone: makeFinder('.note-dropzone'), + toolbar: makeFinder('.note-toolbar'), + editable: makeFinder('.note-editable'), + codable: makeFinder('.note-codable'), + statusbar: makeFinder('.note-statusbar'), + popover: makeFinder('.note-popover'), + handle: makeFinder('.note-handle'), + dialog: makeFinder('.note-dialog') + }; + }; + + /** + * returns predicate which judge whether nodeName is same + * @param {String} sNodeName + */ + var makePredByNodeName = function (sNodeName) { + // nodeName is always uppercase. + return function (node) { + return node && node.nodeName === sNodeName; + }; + }; + + var isPara = function (node) { + // Chrome(v31.0), FF(v25.0.1) use DIV for paragraph + return node && /^DIV|^P|^LI|^H[1-7]/.test(node.nodeName); + }; + + var isList = function (node) { + return node && /^UL|^OL/.test(node.nodeName); + }; + + var isCell = function (node) { + return node && /^TD|^TH/.test(node.nodeName); + }; + + /** + * find nearest ancestor predicate hit + * + * @param {Element} node + * @param {Function} pred - predicate function + */ + var ancestor = function (node, pred) { + while (node) { + if (pred(node)) { return node; } + if (isEditable(node)) { break; } + + node = node.parentNode; + } + return null; + }; + + /** + * returns new array of ancestor nodes (until predicate hit). + * + * @param {Element} node + * @param {Function} [optional] pred - predicate function + */ + var listAncestor = function (node, pred) { + pred = pred || func.fail; + + var aAncestor = []; + ancestor(node, function (el) { + aAncestor.push(el); + return pred(el); + }); + return aAncestor; + }; + + /** + * returns common ancestor node between two nodes. + * + * @param {Element} nodeA + * @param {Element} nodeB + */ + var commonAncestor = function (nodeA, nodeB) { + var aAncestor = listAncestor(nodeA); + for (var n = nodeB; n; n = n.parentNode) { + if ($.inArray(n, aAncestor) > -1) { return n; } + } + return null; // difference document area + }; + + /** + * listing all Nodes between two nodes. + * FIXME: nodeA and nodeB must be sorted, use comparePoints later. + * + * @param {Element} nodeA + * @param {Element} nodeB + */ + var listBetween = function (nodeA, nodeB) { + var aNode = []; + + var bStart = false, bEnd = false; + + // DFS(depth first search) with commonAcestor. + (function fnWalk(node) { + if (!node) { return; } // traverse fisnish + if (node === nodeA) { bStart = true; } // start point + if (bStart && !bEnd) { aNode.push(node); } // between + if (node === nodeB) { bEnd = true; return; } // end point + + for (var idx = 0, sz = node.childNodes.length; idx < sz; idx++) { + fnWalk(node.childNodes[idx]); + } + })(commonAncestor(nodeA, nodeB)); + + return aNode; + }; + + /** + * listing all previous siblings (until predicate hit). + * @param {Element} node + * @param {Function} [optional] pred - predicate function + */ + var listPrev = function (node, pred) { + pred = pred || func.fail; + + var aNext = []; + while (node) { + aNext.push(node); + if (pred(node)) { break; } + node = node.previousSibling; + } + return aNext; + }; + + /** + * listing next siblings (until predicate hit). + * + * @param {Element} node + * @param {Function} [pred] - predicate function + */ + var listNext = function (node, pred) { + pred = pred || func.fail; + + var aNext = []; + while (node) { + aNext.push(node); + if (pred(node)) { break; } + node = node.nextSibling; + } + return aNext; + }; + + /** + * listing descendant nodes + * + * @param {Element} node + * @param {Function} [pred] - predicate function + */ + var listDescendant = function (node, pred) { + var aDescendant = []; + pred = pred || func.ok; + + // start DFS(depth first search) with node + (function fnWalk(current) { + if (node !== current && pred(current)) { + aDescendant.push(current); + } + for (var idx = 0, sz = current.childNodes.length; idx < sz; idx++) { + fnWalk(current.childNodes[idx]); + } + })(node); + + return aDescendant; + }; + + /** + * insert node after preceding + * + * @param {Element} node + * @param {Element} preceding - predicate function + */ + var insertAfter = function (node, preceding) { + var next = preceding.nextSibling, parent = preceding.parentNode; + if (next) { + parent.insertBefore(node, next); + } else { + parent.appendChild(node); + } + return node; + }; + + /** + * append elements. + * + * @param {Element} node + * @param {Collection} aChild + */ + var appends = function (node, aChild) { + $.each(aChild, function (idx, child) { + node.appendChild(child); + }); + return node; + }; + + var isText = makePredByNodeName('#text'); + + /** + * returns #text's text size or element's childNodes size + * + * @param {Element} node + */ + var length = function (node) { + if (isText(node)) { return node.nodeValue.length; } + return node.childNodes.length; + }; + + /** + * returns offset from parent. + * + * @param {Element} node + */ + var position = function (node) { + var offset = 0; + while ((node = node.previousSibling)) { offset += 1; } + return offset; + }; + + /** + * return offsetPath(array of offset) from ancestor + * + * @param {Element} ancestor - ancestor node + * @param {Element} node + */ + var makeOffsetPath = function (ancestor, node) { + var aAncestor = list.initial(listAncestor(node, func.eq(ancestor))); + return $.map(aAncestor, position).reverse(); + }; + + /** + * return element from offsetPath(array of offset) + * + * @param {Element} ancestor - ancestor node + * @param {array} aOffset - offsetPath + */ + var fromOffsetPath = function (ancestor, aOffset) { + var current = ancestor; + for (var i = 0, sz = aOffset.length; i < sz; i++) { + current = current.childNodes[aOffset[i]]; + } + return current; + }; + + /** + * split element or #text + * + * @param {Element} node + * @param {Number} offset + */ + var splitData = function (node, offset) { + if (offset === 0) { return node; } + if (offset >= length(node)) { return node.nextSibling; } + + // splitText + if (isText(node)) { return node.splitText(offset); } + + // splitElement + var child = node.childNodes[offset]; + node = insertAfter(node.cloneNode(false), node); + return appends(node, listNext(child)); + }; + + /** + * split dom tree by boundaryPoint(pivot and offset) + * + * @param {Element} root + * @param {Element} pivot - this will be boundaryPoint's node + * @param {Number} offset - this will be boundaryPoint's offset + */ + var split = function (root, pivot, offset) { + var aAncestor = listAncestor(pivot, func.eq(root)); + if (aAncestor.length === 1) { return splitData(pivot, offset); } + return aAncestor.reduce(function (node, parent) { + var clone = parent.cloneNode(false); + insertAfter(clone, parent); + if (node === pivot) { + node = splitData(node, offset); + } + appends(clone, listNext(node)); + return clone; + }); + }; + + /** + * remove node, (bRemoveChild: remove child or not) + * @param {Element} node + * @param {Boolean} bRemoveChild + */ + var remove = function (node, bRemoveChild) { + if (!node || !node.parentNode) { return; } + if (node.removeNode) { return node.removeNode(bRemoveChild); } + + var elParent = node.parentNode; + if (!bRemoveChild) { + var aNode = []; + var i, sz; + for (i = 0, sz = node.childNodes.length; i < sz; i++) { + aNode.push(node.childNodes[i]); + } + + for (i = 0, sz = aNode.length; i < sz; i++) { + elParent.insertBefore(aNode[i], node); + } + } + + elParent.removeChild(node); + }; + + var html = function ($node) { + return dom.isTextarea($node[0]) ? $node.val() : $node.html(); + }; + + return { + blank: agent.bMSIE ? ' ' : '
', + emptyPara: '


', + isEditable: isEditable, + isControlSizing: isControlSizing, + buildLayoutInfo: buildLayoutInfo, + isText: isText, + isPara: isPara, + isList: isList, + isTable: makePredByNodeName('TABLE'), + isCell: isCell, + isAnchor: makePredByNodeName('A'), + isDiv: makePredByNodeName('DIV'), + isLi: makePredByNodeName('LI'), + isSpan: makePredByNodeName('SPAN'), + isB: makePredByNodeName('B'), + isU: makePredByNodeName('U'), + isS: makePredByNodeName('S'), + isI: makePredByNodeName('I'), + isImg: makePredByNodeName('IMG'), + isTextarea: makePredByNodeName('TEXTAREA'), + ancestor: ancestor, + listAncestor: listAncestor, + listNext: listNext, + listPrev: listPrev, + listDescendant: listDescendant, + commonAncestor: commonAncestor, + listBetween: listBetween, + insertAfter: insertAfter, + position: position, + makeOffsetPath: makeOffsetPath, + fromOffsetPath: fromOffsetPath, + split: split, + remove: remove, + html: html + }; + })(); + + var settings = { + // version + version: '0.5.1', + + /** + * options for init + */ + options: { + width: null, // set editor width + height: null, // set editable height, ex) 300 + + focus: false, // set focus after initilize summernote + + tabsize: null, // size of tab ex) 2 or 4 + styleWithSpan: true, // style with span (Chrome and FF) + + disableLinkTarget: false, // hide link Target Checkbox + disableDragAndDrop: false, // disable drag and drop event + + codemirror: null, // codemirror options + + // language + lang: 'en-US', // language 'en-US', 'ko-KR', ... + direction: null, // text direction, ex) 'rtl' + + // default toolbar + toolbar: [ + ['style', ['style']], + ['font', ['bold', 'italic', 'underline', 'clear']], + ['fontname', ['fontname']], + // ['fontsize', ['fontsize']], Still buggy + ['color', ['color']], + ['para', ['ul', 'ol', 'paragraph']], + ['height', ['height']], + ['table', ['table']], + ['insert', ['link', 'picture', 'video']], + ['view', ['fullscreen', 'codeview']], + ['help', ['help']] + ], + + // callbacks + oninit: null, // initialize + onfocus: null, // editable has focus + onblur: null, // editable out of focus + onenter: null, // enter key pressed + onkeyup: null, // keyup + onkeydown: null, // keydown + onImageUpload: null, // imageUploadHandler + onImageUploadError: null, // imageUploadErrorHandler + onToolbarClick: null, + + keyMap: { + pc: { + 'CTRL+Z': 'undo', + 'CTRL+Y': 'redo', + 'TAB': 'tab', + 'SHIFT+TAB': 'untab', + 'CTRL+B': 'bold', + 'CTRL+I': 'italic', + 'CTRL+U': 'underline', + 'CTRL+SHIFT+S': 'strikethrough', + 'CTRL+BACKSLASH': 'removeFormat', + 'CTRL+SHIFT+L': 'justifyLeft', + 'CTRL+SHIFT+E': 'justifyCenter', + 'CTRL+SHIFT+R': 'justifyRight', + 'CTRL+SHIFT+J': 'justifyFull', + 'CTRL+SHIFT+NUM7': 'insertUnorderedList', + 'CTRL+SHIFT+NUM8': 'insertOrderedList', + 'CTRL+LEFTBRACKET': 'outdent', + 'CTRL+RIGHTBRACKET': 'indent', + 'CTRL+NUM0': 'formatPara', + 'CTRL+NUM1': 'formatH1', + 'CTRL+NUM2': 'formatH2', + 'CTRL+NUM3': 'formatH3', + 'CTRL+NUM4': 'formatH4', + 'CTRL+NUM5': 'formatH5', + 'CTRL+NUM6': 'formatH6', + 'CTRL+ENTER': 'insertHorizontalRule' + }, + + mac: { + 'CMD+Z': 'undo', + 'CMD+SHIFT+Z': 'redo', + 'TAB': 'tab', + 'SHIFT+TAB': 'untab', + 'CMD+B': 'bold', + 'CMD+I': 'italic', + 'CMD+U': 'underline', + 'CMD+SHIFT+S': 'strikethrough', + 'CMD+BACKSLASH': 'removeFormat', + 'CMD+SHIFT+L': 'justifyLeft', + 'CMD+SHIFT+E': 'justifyCenter', + 'CMD+SHIFT+R': 'justifyRight', + 'CMD+SHIFT+J': 'justifyFull', + 'CMD+SHIFT+NUM7': 'insertUnorderedList', + 'CMD+SHIFT+NUM8': 'insertOrderedList', + 'CMD+LEFTBRACKET': 'outdent', + 'CMD+RIGHTBRACKET': 'indent', + 'CMD+NUM0': 'formatPara', + 'CMD+NUM1': 'formatH1', + 'CMD+NUM2': 'formatH2', + 'CMD+NUM3': 'formatH3', + 'CMD+NUM4': 'formatH4', + 'CMD+NUM5': 'formatH5', + 'CMD+NUM6': 'formatH6', + 'CMD+ENTER': 'insertHorizontalRule' + } + } + }, + + // default language: en-US + lang: { + 'en-US': { + font: { + bold: 'Bold', + italic: 'Italic', + underline: 'Underline', + strike: 'Strike', + clear: 'Remove Font Style', + height: 'Line Height', + name: 'Font Family', + size: 'Font Size' + }, + image: { + image: 'Picture', + insert: 'Insert Image', + resizeFull: 'Resize Full', + resizeHalf: 'Resize Half', + resizeQuarter: 'Resize Quarter', + floatLeft: 'Float Left', + floatRight: 'Float Right', + floatNone: 'Float None', + dragImageHere: 'Drag an image here', + selectFromFiles: 'Select from files', + url: 'Image URL', + remove: 'Remove Image' + }, + link: { + link: 'Link', + insert: 'Insert Link', + unlink: 'Unlink', + edit: 'Edit', + textToDisplay: 'Text to display', + url: 'To what URL should this link go?', + openInNewWindow: 'Open in new window' + }, + video: { + video: 'Video', + videoLink: 'Video Link', + insert: 'Insert Video', + url: 'Video URL?', + providers: '(YouTube, Vimeo, Vine, Instagram, or DailyMotion)' + }, + table: { + table: 'Table' + }, + hr: { + insert: 'Insert Horizontal Rule' + }, + style: { + style: 'Style', + normal: 'Normal', + blockquote: 'Quote', + pre: 'Code', + h1: 'Header 1', + h2: 'Header 2', + h3: 'Header 3', + h4: 'Header 4', + h5: 'Header 5', + h6: 'Header 6' + }, + lists: { + unordered: 'Unordered list', + ordered: 'Ordered list' + }, + options: { + help: 'Help', + fullscreen: 'Full Screen', + codeview: 'Code View' + }, + paragraph: { + paragraph: 'Paragraph', + outdent: 'Outdent', + indent: 'Indent', + left: 'Align left', + center: 'Align center', + right: 'Align right', + justify: 'Justify full' + }, + color: { + recent: 'Recent Color', + more: 'More Color', + background: 'BackColor', + foreground: 'FontColor', + transparent: 'Transparent', + setTransparent: 'Set transparent', + reset: 'Reset', + resetToDefault: 'Reset to default' + }, + shortcut: { + shortcuts: 'Keyboard shortcuts', + close: 'Close', + textFormatting: 'Text formatting', + action: 'Action', + paragraphFormatting: 'Paragraph formatting', + documentStyle: 'Document Style' + }, + history: { + undo: 'Undo', + redo: 'Redo' + } + } + } + }; + + /** + * Async functions which returns `Promise` + */ + var async = (function () { + /** + * read contents of file as representing URL + * + * @param {File} file + * @return {Promise} - then: sDataUrl + */ + var readFileAsDataURL = function (file) { + return $.Deferred(function (deferred) { + $.extend(new FileReader(), { + onload: function (e) { + var sDataURL = e.target.result; + deferred.resolve(sDataURL); + }, + onerror: function () { + deferred.reject(this); + } + }).readAsDataURL(file); + }).promise(); + }; + + /** + * create `` from url string + * + * @param {String} sUrl + * @return {Promise} - then: $image + */ + var createImage = function (sUrl) { + return $.Deferred(function (deferred) { + $('').one('load', function () { + deferred.resolve($(this)); + }).one('error abort', function () { + deferred.reject($(this)); + }).css({ + display: 'none' + }).appendTo(document.body).attr('src', sUrl); + }).promise(); + }; + + return { + readFileAsDataURL: readFileAsDataURL, + createImage: createImage + }; + })(); + + /** + * Object for keycodes. + */ + var key = { + isEdit: function (keyCode) { + return [8, 9, 13, 32].indexOf(keyCode) !== -1; + }, + nameFromCode: { + '8': 'BACKSPACE', + '9': 'TAB', + '13': 'ENTER', + '32': 'SPACE', + + // Number: 0-9 + '48': 'NUM0', + '49': 'NUM1', + '50': 'NUM2', + '51': 'NUM3', + '52': 'NUM4', + '53': 'NUM5', + '54': 'NUM6', + '55': 'NUM7', + '56': 'NUM8', + + // Alphabet: a-z + '66': 'B', + '69': 'E', + '73': 'I', + '74': 'J', + '75': 'K', + '76': 'L', + '82': 'R', + '83': 'S', + '85': 'U', + '89': 'Y', + '90': 'Z', + + '191': 'SLASH', + '219': 'LEFTBRACKET', + '220': 'BACKSLASH', + '221': 'RIGHTBRACKET' + } + }; + + /** + * Style + * @class + */ + var Style = function () { + /** + * passing an array of style properties to .css() + * will result in an object of property-value pairs. + * (compability with version < 1.9) + * + * @param {jQuery} $obj + * @param {Array} propertyNames - An array of one or more CSS properties. + * @returns {Object} + */ + var jQueryCSS = function ($obj, propertyNames) { + if (agent.jqueryVersion < 1.9) { + var result = {}; + $.each(propertyNames, function (idx, propertyName) { + result[propertyName] = $obj.css(propertyName); + }); + return result; + } + return $obj.css.call($obj, propertyNames); + }; + + /** + * paragraph level style + * + * @param {WrappedRange} rng + * @param {Object} oStyle + */ + this.stylePara = function (rng, oStyle) { + $.each(rng.nodes(dom.isPara), function (idx, elPara) { + $(elPara).css(oStyle); + }); + }; + + /** + * get current style on cursor + * + * @param {WrappedRange} rng + * @param {Element} elTarget - target element on event + * @return {Object} - object contains style properties. + */ + this.current = function (rng, elTarget) { + var $cont = $(dom.isText(rng.sc) ? rng.sc.parentNode : rng.sc); + var properties = ['font-family', 'font-size', 'text-align', 'list-style-type', 'line-height']; + var oStyle = jQueryCSS($cont, properties) || {}; + + oStyle['font-size'] = parseInt(oStyle['font-size']); + + // document.queryCommandState for toggle state + oStyle['font-bold'] = document.queryCommandState('bold') ? 'bold' : 'normal'; + oStyle['font-italic'] = document.queryCommandState('italic') ? 'italic' : 'normal'; + oStyle['font-underline'] = document.queryCommandState('underline') ? 'underline' : 'normal'; + + // list-style-type to list-style(unordered, ordered) + if (!rng.isOnList()) { + oStyle['list-style'] = 'none'; + } else { + var aOrderedType = ['circle', 'disc', 'disc-leading-zero', 'square']; + var bUnordered = $.inArray(oStyle['list-style-type'], aOrderedType) > -1; + oStyle['list-style'] = bUnordered ? 'unordered' : 'ordered'; + } + + var elPara = dom.ancestor(rng.sc, dom.isPara); + if (elPara && elPara.style['line-height']) { + oStyle['line-height'] = elPara.style.lineHeight; + } else { + var lineHeight = parseInt(oStyle['line-height']) / parseInt(oStyle['font-size']); + oStyle['line-height'] = lineHeight.toFixed(1); + } + + oStyle.image = dom.isImg(elTarget) && elTarget; + oStyle.anchor = rng.isOnAnchor() && dom.ancestor(rng.sc, dom.isAnchor); + oStyle.aAncestor = dom.listAncestor(rng.sc, dom.isEditable); + + return oStyle; + }; + }; + + /** + * range module + */ + var range = (function () { + var bW3CRangeSupport = !!document.createRange; + + /** + * return boundaryPoint from TextRange, inspired by Andy Na's HuskyRange.js + * @param {TextRange} textRange + * @param {Boolean} bStart + * @return {BoundaryPoint} + */ + var textRange2bp = function (textRange, bStart) { + var elCont = textRange.parentElement(), nOffset; + + var tester = document.body.createTextRange(), elPrevCont; + var aChild = list.from(elCont.childNodes); + for (nOffset = 0; nOffset < aChild.length; nOffset++) { + if (dom.isText(aChild[nOffset])) { continue; } + tester.moveToElementText(aChild[nOffset]); + if (tester.compareEndPoints('StartToStart', textRange) >= 0) { break; } + elPrevCont = aChild[nOffset]; + } + + if (nOffset !== 0 && dom.isText(aChild[nOffset - 1])) { + var textRangeStart = document.body.createTextRange(), elCurText = null; + textRangeStart.moveToElementText(elPrevCont || elCont); + textRangeStart.collapse(!elPrevCont); + elCurText = elPrevCont ? elPrevCont.nextSibling : elCont.firstChild; + + var pointTester = textRange.duplicate(); + pointTester.setEndPoint('StartToStart', textRangeStart); + var nTextCount = pointTester.text.replace(/[\r\n]/g, '').length; + + while (nTextCount > elCurText.nodeValue.length && elCurText.nextSibling) { + nTextCount -= elCurText.nodeValue.length; + elCurText = elCurText.nextSibling; + } + + /* jshint ignore:start */ + var sDummy = elCurText.nodeValue; //enforce IE to re-reference elCurText, hack + /* jshint ignore:end */ + + if (bStart && elCurText.nextSibling && dom.isText(elCurText.nextSibling) && + nTextCount === elCurText.nodeValue.length) { + nTextCount -= elCurText.nodeValue.length; + elCurText = elCurText.nextSibling; + } + + elCont = elCurText; + nOffset = nTextCount; + } + + return {cont: elCont, offset: nOffset}; + }; + + /** + * return TextRange from boundary point (inspired by google closure-library) + * @param {BoundaryPoint} bp + * @return {TextRange} + */ + var bp2textRange = function (bp) { + var textRangeInfo = function (elCont, nOffset) { + var elNode, bCollapseToStart; + + if (dom.isText(elCont)) { + var aPrevText = dom.listPrev(elCont, func.not(dom.isText)); + var elPrevCont = list.last(aPrevText).previousSibling; + elNode = elPrevCont || elCont.parentNode; + nOffset += list.sum(list.tail(aPrevText), dom.length); + bCollapseToStart = !elPrevCont; + } else { + elNode = elCont.childNodes[nOffset] || elCont; + if (dom.isText(elNode)) { + return textRangeInfo(elNode, nOffset); + } + + nOffset = 0; + bCollapseToStart = false; + } + + return {cont: elNode, collapseToStart: bCollapseToStart, offset: nOffset}; + }; + + var textRange = document.body.createTextRange(); + var info = textRangeInfo(bp.cont, bp.offset); + + textRange.moveToElementText(info.cont); + textRange.collapse(info.collapseToStart); + textRange.moveStart('character', info.offset); + return textRange; + }; + + /** + * Wrapped Range + * + * @param {Element} sc - start container + * @param {Number} so - start offset + * @param {Element} ec - end container + * @param {Number} eo - end offset + */ + var WrappedRange = function (sc, so, ec, eo) { + this.sc = sc; + this.so = so; + this.ec = ec; + this.eo = eo; + + // nativeRange: get nativeRange from sc, so, ec, eo + var nativeRange = function () { + if (bW3CRangeSupport) { + var w3cRange = document.createRange(); + w3cRange.setStart(sc, so); + w3cRange.setEnd(ec, eo); + return w3cRange; + } else { + var textRange = bp2textRange({cont: sc, offset: so}); + textRange.setEndPoint('EndToEnd', bp2textRange({cont: ec, offset: eo})); + return textRange; + } + }; + + /** + * select update visible range + */ + this.select = function () { + var nativeRng = nativeRange(); + if (bW3CRangeSupport) { + var selection = document.getSelection(); + if (selection.rangeCount > 0) { selection.removeAllRanges(); } + selection.addRange(nativeRng); + } else { + nativeRng.select(); + } + }; + + /** + * returns matched nodes on range + * + * @param {Function} pred - predicate function + * @return {Element[]} + */ + this.nodes = function (pred) { + var aNode = dom.listBetween(sc, ec); + var aMatched = list.compact($.map(aNode, function (node) { + return dom.ancestor(node, pred); + })); + return $.map(list.clusterBy(aMatched, func.eq2), list.head); + }; + + /** + * returns commonAncestor of range + * @return {Element} - commonAncestor + */ + this.commonAncestor = function () { + return dom.commonAncestor(sc, ec); + }; + + /** + * makeIsOn: return isOn(pred) function + */ + var makeIsOn = function (pred) { + return function () { + var elAncestor = dom.ancestor(sc, pred); + return !!elAncestor && (elAncestor === dom.ancestor(ec, pred)); + }; + }; + + // isOnEditable: judge whether range is on editable or not + this.isOnEditable = makeIsOn(dom.isEditable); + // isOnList: judge whether range is on list node or not + this.isOnList = makeIsOn(dom.isList); + // isOnAnchor: judge whether range is on anchor node or not + this.isOnAnchor = makeIsOn(dom.isAnchor); + // isOnAnchor: judge whether range is on cell node or not + this.isOnCell = makeIsOn(dom.isCell); + // isCollapsed: judge whether range was collapsed + this.isCollapsed = function () { return sc === ec && so === eo; }; + + /** + * insert node at current cursor + * @param {Element} node + */ + this.insertNode = function (node) { + var nativeRng = nativeRange(); + if (bW3CRangeSupport) { + nativeRng.insertNode(node); + } else { + nativeRng.pasteHTML(node.outerHTML); // NOTE: missing node reference. + } + }; + + this.toString = function () { + var nativeRng = nativeRange(); + return bW3CRangeSupport ? nativeRng.toString() : nativeRng.text; + }; + + // bookmark: offsetPath bookmark + this.bookmark = function (elEditable) { + return { + s: { path: dom.makeOffsetPath(elEditable, sc), offset: so }, + e: { path: dom.makeOffsetPath(elEditable, ec), offset: eo } + }; + }; + }; + + return { + /** + * create Range Object From arguments or Browser Selection + * + * @param {Element} sc - start container + * @param {Number} so - start offset + * @param {Element} ec - end container + * @param {Number} eo - end offset + */ + create : function (sc, so, ec, eo) { + if (arguments.length === 0) { // from Browser Selection + if (bW3CRangeSupport) { // webkit, firefox + var selection = document.getSelection(); + if (selection.rangeCount === 0) { return null; } + + var nativeRng = selection.getRangeAt(0); + sc = nativeRng.startContainer; + so = nativeRng.startOffset; + ec = nativeRng.endContainer; + eo = nativeRng.endOffset; + } else { // IE8: TextRange + var textRange = document.selection.createRange(); + var textRangeEnd = textRange.duplicate(); + textRangeEnd.collapse(false); + var textRangeStart = textRange; + textRangeStart.collapse(true); + + var bpStart = textRange2bp(textRangeStart, true), + bpEnd = textRange2bp(textRangeEnd, false); + + sc = bpStart.cont; + so = bpStart.offset; + ec = bpEnd.cont; + eo = bpEnd.offset; + } + } else if (arguments.length === 2) { //collapsed + ec = sc; + eo = so; + } + return new WrappedRange(sc, so, ec, eo); + }, + + /** + * create WrappedRange from node + * + * @param {Element} node + * @return {WrappedRange} + */ + createFromNode: function (node) { + return this.create(node, 0, node, 1); + }, + + /** + * create WrappedRange from Bookmark + * + * @param {Element} elEditable + * @param {Obkect} bookmark + * @return {WrappedRange} + */ + createFromBookmark : function (elEditable, bookmark) { + var sc = dom.fromOffsetPath(elEditable, bookmark.s.path); + var so = bookmark.s.offset; + var ec = dom.fromOffsetPath(elEditable, bookmark.e.path); + var eo = bookmark.e.offset; + return new WrappedRange(sc, so, ec, eo); + } + }; + })(); + + /** + * Table + * @class + */ + var Table = function () { + /** + * handle tab key + * + * @param {WrappedRange} rng + * @param {Boolean} bShift + */ + this.tab = function (rng, bShift) { + var elCell = dom.ancestor(rng.commonAncestor(), dom.isCell); + var elTable = dom.ancestor(elCell, dom.isTable); + var aCell = dom.listDescendant(elTable, dom.isCell); + + var elNext = list[bShift ? 'prev' : 'next'](aCell, elCell); + if (elNext) { + range.create(elNext, 0).select(); + } + }; + + /** + * create empty table element + * + * @param {Number} nRow + * @param {Number} nCol + */ + this.createTable = function (nCol, nRow) { + var aTD = [], sTD; + for (var idxCol = 0; idxCol < nCol; idxCol++) { + aTD.push('' + dom.blank + ''); + } + sTD = aTD.join(''); + + var aTR = [], sTR; + for (var idxRow = 0; idxRow < nRow; idxRow++) { + aTR.push('' + sTD + ''); + } + sTR = aTR.join(''); + var sTable = '' + sTR + '
'; + + return $(sTable)[0]; + }; + }; + + /** + * Editor + * @class + */ + var Editor = function () { + + var style = new Style(); + var table = new Table(); + + /** + * save current range + * + * @param {jQuery} $editable + */ + this.saveRange = function ($editable) { + $editable.data('range', range.create()); + }; + + /** + * restore lately range + * + * @param {jQuery} $editable + */ + this.restoreRange = function ($editable) { + var rng = $editable.data('range'); + if (rng) { rng.select(); } + }; + + /** + * current style + * @param {Element} elTarget + */ + this.currentStyle = function (elTarget) { + var rng = range.create(); + return rng.isOnEditable() && style.current(rng, elTarget); + }; + + /** + * undo + * @param {jQuery} $editable + */ + this.undo = function ($editable) { + $editable.data('NoteHistory').undo($editable); + }; + + /** + * redo + * @param {jQuery} $editable + */ + this.redo = function ($editable) { + $editable.data('NoteHistory').redo($editable); + }; + + /** + * record Undo + * @param {jQuery} $editable + */ + var recordUndo = this.recordUndo = function ($editable) { + $editable.data('NoteHistory').recordUndo($editable); + }; + + /* jshint ignore:start */ + // native commands(with execCommand), generate function for execCommand + var aCmd = ['bold', 'italic', 'underline', 'strikethrough', + 'justifyLeft', 'justifyCenter', 'justifyRight', 'justifyFull', + 'insertOrderedList', 'insertUnorderedList', + 'indent', 'outdent', 'formatBlock', 'removeFormat', + 'backColor', 'foreColor', 'insertHorizontalRule', 'fontName']; + + for (var idx = 0, len = aCmd.length; idx < len; idx ++) { + this[aCmd[idx]] = (function (sCmd) { + return function ($editable, sValue) { + recordUndo($editable); + document.execCommand(sCmd, false, sValue); + }; + })(aCmd[idx]); + } + /* jshint ignore:end */ + + /** + * @param {jQuery} $editable + * @param {WrappedRange} rng + * @param {Number} nTabsize + */ + var insertTab = function ($editable, rng, nTabsize) { + recordUndo($editable); + var sNbsp = new Array(nTabsize + 1).join(' '); + rng.insertNode($('' + sNbsp + '')[0]); + var $tab = $('#noteTab').removeAttr('id'); + rng = range.create($tab[0], 1); + rng.select(); + dom.remove($tab[0]); + }; + + /** + * handle tab key + * @param {jQuery} $editable + * @param {Number} nTabsize + * @param {Boolean} bShift + */ + this.tab = function ($editable, options) { + var rng = range.create(); + if (rng.isCollapsed() && rng.isOnCell()) { + table.tab(rng); + } else { + insertTab($editable, rng, options.tabsize); + } + }; + + /** + * handle shift+tab key + */ + this.untab = function () { + var rng = range.create(); + if (rng.isCollapsed() && rng.isOnCell()) { + table.tab(rng, true); + } + }; + + /** + * insert image + * + * @param {jQuery} $editable + * @param {String} sUrl + */ + this.insertImage = function ($editable, sUrl) { + async.createImage(sUrl).then(function ($image) { + recordUndo($editable); + $image.css({ + display: '', + width: Math.min($editable.width(), $image.width()) + }); + range.create().insertNode($image[0]); + }).fail(function () { + var callbacks = $editable.data('callbacks'); + if (callbacks.onImageUploadError) { + callbacks.onImageUploadError(); + } + }); + }; + + /** + * insert video + * @param {jQuery} $editable + * @param {String} sUrl + */ + this.insertVideo = function ($editable, sUrl) { + recordUndo($editable); + + // video url patterns(youtube, instagram, vimeo, dailymotion) + var ytRegExp = /^.*(youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=|\&v=)([^#\&\?]*).*/; + var ytMatch = sUrl.match(ytRegExp); + + var igRegExp = /\/\/instagram.com\/p\/(.[a-zA-Z0-9]*)/; + var igMatch = sUrl.match(igRegExp); + + var vRegExp = /\/\/vine.co\/v\/(.[a-zA-Z0-9]*)/; + var vMatch = sUrl.match(vRegExp); + + var vimRegExp = /\/\/(player.)?vimeo.com\/([a-z]*\/)*([0-9]{6,11})[?]?.*/; + var vimMatch = sUrl.match(vimRegExp); + + var dmRegExp = /.+dailymotion.com\/(video|hub)\/([^_]+)[^#]*(#video=([^_&]+))?/; + var dmMatch = sUrl.match(dmRegExp); + + var $video; + if (ytMatch && ytMatch[2].length === 11) { + var youtubeId = ytMatch[2]; + $video = $('