diff --git a/app.manifest b/app.manifest index c143dd81..d9d68def 100644 --- a/app.manifest +++ b/app.manifest @@ -1,5 +1,5 @@ CACHE MANIFEST -# Time: Sun Nov 30 2014 14:59:35 GMT-0800 (PST) +# Time: Mon Dec 01 2014 08:16:37 GMT-0800 (PST) CACHE: diff --git a/css/app.css b/css/app.css index 40254145..ee22d7ca 100644 --- a/css/app.css +++ b/css/app.css @@ -7,4 +7,4 @@ * Generated using the Bootstrap Customizer (http://getbootstrap.com/customize/?id=ef8b2e1e74a6ba7423f1) * Config saved to config.json and https://gist.github.com/ef8b2e1e74a6ba7423f1 *//*! normalize.css v3.0.1 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:0 0}a:active,a:hover{outline:0}b,strong{font-weight:700}dfn{font-style:italic}h1{margin:.67em 0}mark{background:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}@media print{*{text-shadow:none!important;color:#000!important;background:0 0!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}select{background:#fff!important}.navbar{display:none}.table td,.table th{background-color:#fff!important}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}}*,:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:transparent}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#000;background-color:#fff}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#3a6d99;text-decoration:none}a:focus,a:hover{color:#3a6d99;text-decoration:underline}a:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.carousel-inner>.item>a>img,.carousel-inner>.item>img,.img-responsive,.thumbnail a>img,.thumbnail>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#999}.h1,.h2,.h3,h1,h2,h3{margin-top:20px;margin-bottom:10px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small{font-size:65%}.h4,.h5,.h6,h4,h5,h6{margin-top:10px;margin-bottom:10px}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-size:75%}.h1,h1{font-size:36px}.h2,h2{font-size:30px}.h3,h3{font-size:24px}.h4,h4{font-size:18px}.h5,h5{font-size:14px}.h6,h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.small,small{font-size:85%}cite{font-style:normal}.mark,mark{background-color:#fcf8e3;padding:.2em}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#999}.text-primary{color:#5d8db3}a.text-primary:hover{color:#477396}.text-success{color:#3c763d}a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#5d8db3}a.bg-primary:hover{background-color:#477396}.bg-success{background-color:#dff0d8}a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ol,ul{margin-top:0;margin-bottom:10px}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:20px}dd,dt{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:480px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[title]{cursor:help;border-bottom:1px dotted #999}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child{margin-bottom:0}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;line-height:1.42857143;color:#999}blockquote .small:before,blockquote footer:before,blockquote small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:''}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after{content:'\00A0 \2014'}blockquote:after,blockquote:before{content:""}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container,.container-fluid{margin-right:auto;margin-left:auto;padding-left:0;padding-right:0}@media (min-width:768px){.container{width:720px}}@media (min-width:992px){.container{width:940px}}@media (min-width:1200px){.container{width:1140px}}.row{margin-left:0;margin-right:0}.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.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-md-1,.col-md-10,.col-md-11,.col-md-12,.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-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.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-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{position:relative;min-height:1px;padding-left:0;padding-right:0}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered,.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #ddd}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th{background-color:#f5f5f5}table col[class*=col-]{position:static;float:none;display:table-column}table td[class*=col-],table th[class*=col-]{position:static;float:none;display:table-cell}.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#dff0d8}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#d9edf7}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#fcf8e3}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#f2dede}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;overflow-x:auto;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd;-webkit-overflow-scrolling:touch}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset{padding:0;margin:0;border:0;min-width:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=radio]{margin:4px 0 0;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=checkbox]:focus,input[type=file]:focus,input[type=radio]:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#000}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#000;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#9aa2ab;opacity:1}.form-control:-ms-input-placeholder{color:#9aa2ab}.form-control::-webkit-input-placeholder{color:#9aa2ab}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee;opacity:1}textarea.form-control{height:auto}input[type=search]{-webkit-appearance:none}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{line-height:34px;line-height:1.42857143 \0}input[type=date].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm,input[type=time].input-sm{line-height:30px}input[type=date].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg,input[type=time].input-lg{line-height:46px}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;min-height:20px;margin-top:10px;margin-bottom:10px}.checkbox label,.radio label{padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox],.radio input[type=radio],.radio-inline input[type=radio]{position:absolute;margin-left:-20px}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:400;cursor:pointer}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}.checkbox-inline.disabled,.checkbox.disabled label,.radio-inline.disabled,.radio.disabled label,fieldset[disabled] .checkbox label,fieldset[disabled] .checkbox-inline,fieldset[disabled] .radio label,fieldset[disabled] .radio-inline,fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}.form-control-static{padding-top:7px;padding-bottom:7px;margin-bottom:0}.form-control-static.input-lg,.form-control-static.input-sm{padding-left:0;padding-right:0}.form-horizontal .form-group-sm .form-control,.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}select[multiple].input-sm,textarea.input-sm{height:auto}.form-horizontal .form-group-lg .form-control,.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg{height:46px;line-height:46px}select[multiple].input-lg,textarea.input-lg{height:auto}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:25px;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center}.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .checkbox,.has-success .checkbox-inline,.has-success .control-label,.has-success .help-block,.has-success .radio,.has-success .radio-inline{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.has-success .form-control-feedback{color:#3c763d}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning .control-label,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .checkbox,.has-error .checkbox-inline,.has-error .control-label,.has-error .help-block,.has-error .radio,.has-error .radio-inline{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.has-error .form-control-feedback{color:#a94442}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#404040}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .checkbox,.form-horizontal .radio{min-height:27px}.form-horizontal .form-group{margin-left:0;margin-right:0}@media (min-width:768px){.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:7px}}.form-horizontal .has-feedback .form-control-feedback{top:0;right:0}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:14.3px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px}}.btn{display:inline-block;margin-bottom:0;font-weight:400;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.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn.active:focus,.btn:active:focus,.btn:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default.active,.btn-default:active,.btn-default:focus,.btn-default:hover,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default.disabled.active,.btn-default.disabled:active,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled],.btn-default[disabled].active,.btn-default[disabled]:active,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default.active,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#5d8db3;border-color:#5d8db3}.btn-primary.active,.btn-primary:active,.btn-primary:focus,.btn-primary:hover,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#477396;border-color:#436e8f}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#5d8db3;border-color:#5d8db3}.btn-primary .badge{color:#5d8db3;background-color:#fff}.btn-success{color:#fff;background-color:#6ac065;border-color:#6ac065}.btn-success.active,.btn-success:active,.btn-success:focus,.btn-success:hover,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#4cac46;border-color:#49a543}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success.disabled.active,.btn-success.disabled:active,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled],.btn-success[disabled].active,.btn-success[disabled]:active,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success.active,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#6ac065;border-color:#6ac065}.btn-success .badge{color:#6ac065;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.btn-info.active,.btn-info:active,.btn-info:focus,.btn-info:hover,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#31b0d5;border-color:#2aabd2}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info.disabled.active,.btn-info.disabled:active,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled],.btn-info[disabled].active,.btn-info[disabled]:active,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info.active,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#5bc0de}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.btn-warning.active,.btn-warning:active,.btn-warning:focus,.btn-warning:hover,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#ec971f;border-color:#eb9316}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning.disabled.active,.btn-warning.disabled:active,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled],.btn-warning[disabled].active,.btn-warning[disabled]:active,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning.active,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#f0ad4e}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#c05f5a;border-color:#c05f5a}.btn-danger.active,.btn-danger:active,.btn-danger:focus,.btn-danger:hover,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#a74540;border-color:#a0423d}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#c05f5a;border-color:#c05f5a}.btn-danger .badge{color:#c05f5a;background-color:#fff}.btn-link{color:#3a6d99;font-weight:400;cursor:pointer;border-radius:0}.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#3a6d99;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#999;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-group-sm>.btn,.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-xs>.btn,.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:14px;text-align:left;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{text-decoration:none;color:#262626;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0;background-color:#5d8db3}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{color:#999}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);cursor:not-allowed}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{left:auto;right:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#999;white-space:nowrap}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media (min-width:480px){.navbar-right .dropdown-menu{left:auto;right:0}.navbar-right .dropdown-menu-left{left:0;right:auto}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:2}.btn-group-vertical>.btn:focus,.btn-group>.btn:focus{outline:0}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-top-right-radius:0;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn>input[type=checkbox],[data-toggle=buttons]>.btn>input[type=radio]{position:absolute;z-index:-1;opacity:0;filter:alpha(opacity=0)}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-left:0;padding-right:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn,textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn,textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group .form-control,.input-group-addon,.input-group-btn{display:table-cell}.input-group .form-control:not(:first-child):not(:last-child),.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#000;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=checkbox],.input-group-addon input[type=radio]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{margin-left:-1px}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#999}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#999;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{background-color:#eee;border-color:#3a6d99}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:focus,.nav-pills>li.active>a:hover{color:#fff;background-color:#5d8db3}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:44px;margin-bottom:20px;border:1px solid transparent}@media (min-width:480px){.navbar{border-radius:4px}}@media (min-width:480px){.navbar-header{float:left}}.navbar-collapse{overflow-x:visible;padding-right:0;padding-left:0;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.1);-webkit-overflow-scrolling:touch}.navbar-collapse.in{overflow-y:auto}@media (min-width:480px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-left:0;padding-right:0}}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}@media (min-width:480px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:480px){.navbar-static-top{border-radius:0}}.navbar-fixed-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}@media (min-width:480px){.navbar-fixed-bottom,.navbar-fixed-top{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:12px 0;font-size:18px;line-height:20px;height:44px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}@media (min-width:480px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:0}}.navbar-toggle{position:relative;float:right;margin-right:0;padding:9px 10px;margin-top:5px;margin-bottom:5px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:480px){.navbar-toggle{display:none}}.navbar-nav{margin:6px 0}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:479px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:480px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:12px;padding-bottom:12px}.navbar-nav.navbar-right:last-child{margin-right:0}}@media (min-width:480px){.navbar-left{float:left!important}.navbar-right{float:right!important}}.navbar-form{margin:5px 0;padding:10px 0;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1)}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:479px){.navbar-form .form-group{margin-bottom:5px}}@media (min-width:480px){.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}.navbar-form.navbar-right:last-child{margin-right:0}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:5px;margin-bottom:5px}.navbar-btn.btn-sm{margin-top:7px;margin-bottom:7px}.navbar-btn.btn-xs{margin-top:11px;margin-bottom:11px}.navbar-text{margin-top:12px;margin-bottom:12px}@media (min-width:480px){.navbar-text{float:left;margin-left:0;margin-right:0}.navbar-text.navbar-right:last-child{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-nav>li>a,.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{background-color:#e7e7e7;color:#555}@media (max-width:479px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.navbar-inverse{background-color:#497495;border-color:#385973}.navbar-inverse .navbar-brand{color:#999}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>li>a,.navbar-inverse .navbar-text{color:#999}.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#385973}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#3d617d}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{background-color:#385973;color:#fff}@media (max-width:479px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#385973}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#385973}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#385973}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#999}.navbar-inverse .btn-link:focus,.navbar-inverse .btn-link:hover{color:#fff}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/\00a0";padding:0 5px;color:#ccc}.breadcrumb>.active{color:#999}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.42857143;text-decoration:none;color:#3a6d99;background-color:#fff;border:1px solid #ddd;margin-left:-1px}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:4px;border-top-right-radius:4px}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{color:#3a6d99;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:2;color:#fff;background-color:#5d8db3;border-color:#5d8db3;cursor:default}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#999;background-color:#fff;border-color:#ddd;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:6px;border-top-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.pager{padding-left:0;margin:20px 0;list-style:none;text-align:center}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:focus,.pager li>a:hover{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#999;background-color:#fff;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:focus,a.label:hover{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#999}.label-default[href]:focus,.label-default[href]:hover{background-color:gray}.label-primary{background-color:#5d8db3}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#477396}.label-success{background-color:#6ac065}.label-success[href]:focus,.label-success[href]:hover{background-color:#4cac46}.label-info{background-color:#5bc0de}.label-info[href]:focus,.label-info[href]:hover{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#ec971f}.label-danger{background-color:#c05f5a}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#a74540}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;color:#fff;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#999;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-xs .badge{top:0;padding:1px 5px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.nav-pills>.active>a>.badge,a.list-group-item.active>.badge{color:#3a6d99;background-color:#fff}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron .h1,.jumbotron h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#d5d5d5}.container .jumbotron{border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-left:60px;padding-right:60px}.jumbotron .h1,.jumbotron h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.thumbnail a>img,.thumbnail>img{margin-left:auto;margin-right:auto}a.thumbnail.active,a.thumbnail:focus,a.thumbnail:hover{border-color:#3a6d99}.thumbnail .caption{padding:9px;color:#000}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.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,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#5d8db3;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress-bar-striped,.progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar[aria-valuenow="1"],.progress-bar[aria-valuenow="2"]{min-width:30px}.progress-bar[aria-valuenow="0"]{color:#999;min-width:30px;background-color:transparent;background-image:none;box-shadow:none}.progress-bar-success{background-color:#6ac065}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#c05f5a}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.media,.media-body{overflow:hidden;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:focus,a.list-group-item:hover{text-decoration:none;color:#555;background-color:#f5f5f5}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{background-color:#eee;color:#999}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#999}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:2;color:#fff;background-color:#5d8db3;border-color:#5d8db3}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .list-group-item-text{color:#e8eff4}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:focus,a.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:focus,a.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:focus,a.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:focus,a.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group{margin-bottom:0}.panel>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:3px;border-top-left-radius:3px}.panel>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.list-group+.panel-footer,.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.table-responsive:first-child>.table:first-child,.panel>.table:first-child{border-top-right-radius:3px;border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table-responsive:last-child>.table:last-child,.panel>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#5d8db3}.panel-primary>.panel-heading{color:#fff;background-color:#5d8db3;border-color:#5d8db3}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#5d8db3}.panel-primary>.panel-heading .badge{color:#5d8db3;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#5d8db3}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object{position:absolute;top:0;left:0;bottom:0;height:100%;width:100%;border:0}.embed-responsive.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{display:none;overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate3d(0,-25%,0);transform:translate3d(0,-25%,0);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5;min-height:16.43px}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:20px}.modal-footer{padding:20px;text-align:right;border-top:1px solid #e5e5e5}.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}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;visibility:visible;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.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:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;right:5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;text-align:left;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);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:400;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:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.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,.25)}.popover.right>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-11px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.carousel{position:relative}.carousel-inner{position:relative;overflow:hidden;width:100%}.carousel-inner>.item{display:none;position:relative;-webkit-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>a>img,.carousel-inner>.item>img{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:.5;filter:alpha(opacity=50);font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(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-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)}.carousel-control:focus,.carousel-control:hover{outline:0;color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{left:50%;margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{right:50%;margin-right:-10px}.carousel-control .icon-next,.carousel-control .icon-prev{width:20px;height:20px;margin-top:-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 #fff;border-radius:10px;cursor:pointer;background-color:transparent}.carousel-indicators .active{margin:0;width:12px;height:12px;background-color:#fff}.carousel-caption{position:absolute;left:15%;right:15%;bottom:20px;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{width:30px;height:30px;margin-top:-15px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-15px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-15px}.carousel-caption{left:20%;right:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before,.btn-toolbar:after,.btn-toolbar:before,.clearfix:after,.clearfix:before,.container-fluid:after,.container-fluid:before,.container:after,.container:before,.dl-horizontal dd:after,.dl-horizontal dd:before,.form-horizontal .form-group:after,.form-horizontal .form-group:before,.modal-footer:after,.modal-footer:before,.nav:after,.nav:before,.navbar-collapse:after,.navbar-collapse:before,.navbar-header:after,.navbar-header:before,.navbar:after,.navbar:before,.pager:after,.pager:before,.panel-body:after,.panel-body:before,.row:after,.row:before{content:" ";display:table}.btn-group-vertical>.btn-group:after,.btn-toolbar:after,.clearfix:after,.container-fluid:after,.container:after,.dl-horizontal dd:after,.form-horizontal .form-group:after,.modal-footer:after,.nav:after,.navbar-collapse:after,.navbar-header:after,.navbar:after,.pager:after,.panel-body:after,.row: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;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}@-ms-viewport{width:device-width}.visible-lg,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-print,.visible-print-block,.visible-print-inline,.visible-print-inline-block,.visible-sm,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}}@media (max-width:767px){.visible-xs-block{display:block!important}}@media (max-width:767px){.visible-xs-inline{display:inline!important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}}@media (min-width:1200px){.visible-lg-block{display:block!important}}@media (min-width:1200px){.visible-lg-inline{display:inline!important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}@media print{.visible-print{display:block!important}table.visible-print{display:table}tr.visible-print{display:table-row!important}td.visible-print,th.visible-print{display:table-cell!important}}@media print{.visible-print-block{display:block!important}}@media print{.visible-print-inline{display:inline!important}}@media print{.visible-print-inline-block{display:inline-block!important}}@media print{.hidden-print{display:none!important}} -html{display:none;background:url(../img/bg_tile.png) #dee4e9;overflow:visible}body{color:#000;background:0 0;font:12px/18px "Lucida Grande","Lucida Sans Unicode",Arial,Helvetica,Verdana,sans-serif;overflow:visible}.font-light{font-family:HelveticaNeue-Light,"Helvetica Neue Light","Helvetica Light",Helvetica,Arial,Verdana,sans-serif;font-weight:300}.non_osx .font-light,body.non_osx{font:13px/18px Tahoma,sans-serif,Arial,Helvetica;font-weight:400}h1,h2,h3,h4,h5{color:#222}.non_osx h4{font-size:17px}a{cursor:pointer}a.disabled{cursor:default;pointer-events:none}.form-control{border:1px solid #d9dbde;border-radius:2px;-webkit-box-shadow:none;box-shadow:none;-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}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control.no_outline:focus{border:1px solid #d9dbde;box-shadow:none;outline:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.btn{border:0;padding:7px 13px}.btn.active,.btn.active:focus,.btn:active,.btn:active:focus,.btn:focus,.btn:hover,.open .dropdown-toggle.btn{box-shadow:none;outline:0}.btn-success{color:#fff;background-color:#6ec26d}.btn-success.active,.btn-success:active,.btn-success:focus,.btn-success:hover,.open .dropdown-toggle.btn-success{color:#fff;background-color:#61b75b}.btn-success.active,.btn-success:active,.open .dropdown-toggle.btn-success{background:#66b864}.btn-danger{color:#fff;background-color:#c05f5a}.btn-danger.active,.btn-danger:active,.btn-danger:focus,.btn-danger:hover,.open .dropdown-toggle.btn-danger{color:#fff;background-color:#ab5450}.btn-danger.active,.btn-danger:active,.open .dropdown-toggle.btn-danger{background:#a24f4b}.btn-primary{color:#fff;background-color:#6490b1;border-radius:3px}.btn-primary.active,.btn-primary:active,.btn-primary:focus,.btn-primary:hover,.open .dropdown-toggle.btn-primary{color:#fff;background-color:#4a80a9}.btn-primary.active,.btn-primary:active,.open .dropdown-toggle.btn-primary{background:#41769e}.btn-primary.disabled,.btn-primary[disabled]{background:#7999b3}.btn-link{color:#3a6d99;text-decoration:none!important;border-radius:3px;overflow:hidden}.btn-link:hover{background:#f2f6fa}.btn-link.btn-link-noarea:hover,.btn-link.dropdown-toggle:hover{background:0 0}.btn-link.dropdown-toggle:active{outline:0}.tg_page_head .navbar-quick-nav,.tg_page_head .navbar-toggle{display:none}.tg_page_head .container{display:block;width:auto;padding-left:0;padding-right:0}.tg_page_head .container .navbar-header{margin:0}.tg_page_head .navbar-inverse{border:0;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.11);-moz-box-shadow:0 1px 1px rgba(0,0,0,.11);box-shadow:0 1px 1px rgba(0,0,0,.11);margin:0}.ios_standalone .tg_page_head .navbar>.container{margin-top:20px}.ios_standalone .modal.mobile_modal{border-top:20px solid #497495}.tg_page_head .navbar>.container .navbar-brand{padding:8px 15px;opacity:.9;margin-left:0;margin-right:20px;-webkit-transition:opacity swing .9s;display:block;line-height:0;height:auto}.tg_page_head .navbar>.container .navbar-brand:hover{opacity:1}.tg_head_logo{background:url(../img/T_LogoM.png) 0 0/143px 30px no-repeat;display:inline-block;width:143px;height:30px;vertical-align:text-top}.is_1x .tg_head_logo{background-image:url(../img/T_LogoM_1x.png)}.navbar_offline .navbar-header,.navbar_offline .navbar-offline>li{float:left}.navbar-offline{max-width:400px;margin:0 auto;float:none}.navbar-offline-text{color:#b9cfe3;padding:13px 15px;font-size:13px;display:block;line-height:20px}.tg_page_head .navbar-menu .navbar-nav.navbar-right{margin-right:0}.tg_page_head .navbar-inverse .navbar-nav>li>a{padding-top:13px;padding-bottom:13px;color:#b9cfe3;font-size:13px}.tg_page_head .navbar-inverse .navbar-nav>li>a:hover{color:#FFF}.tg_page_head .navbar-inverse .navbar-toggle{outline:0;border:0}.tg_page_head .navbar-inverse .navbar-collapse,.tg_page_head .navbar-inverse .navbar-form{border-color:#497495}.tg_page_head .navbar-inverse .navbar-toggle:active,.tg_page_head .navbar-inverse .navbar-toggle:focus,.tg_page_head .navbar-inverse .navbar-toggle:hover{background-color:rgba(255,255,255,.1)}.tg_progress{height:12px;margin:0;padding:0;background:rgba(255,255,255,.4);border:5px solid rgba(0,0,0,.5);border-radius:3px}.tg_progress .progress-bar{height:5px;line-height:2px;background:rgba(255,255,255,.9);border-radius:0;overflow:hidden}.dropdown-menu{border-radius:2px;padding:0;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.175);box-shadow:0 1px 3px rgba(0,0,0,.175)}.dropdown-menu>li>a{padding:5px 14px;font-size:13px}.modal-backdrop{background:rgba(26,26,26,.7);opacity:1!important}.modal-backdrop.fade,.modal.fade,.modal.fade .modal-dialog{-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.modal{overflow-y:auto;padding:10px}.modal-dialog{margin:0 auto}.modal-content{border:0;border-radius:0;-webkit-box-shadow:0 1px 10px rgba(0,0,0,.15);box-shadow:0 1px 10px rgba(0,0,0,.15)}.text-invisible{visibility:hidden}.modal-header{padding:12px 0 4px 3px;border-bottom:2px solid #E1E1E1;margin:0 18px}.modal-title{color:#222;font-weight:700;font-size:17px;line-height:1.4}.modal-close-link,.modal-head-link{font-size:12px;line-height:1.4;float:right;padding:0 2px;margin:6px 2px 0 0}.modal-close-link:hover,.modal-head-link:hover{text-decoration:none}.modal-head-link{margin-right:15px}.modal-close-button{position:absolute;z-index:1051;top:0;right:0;width:54px;height:54px}.modal-close-button i{display:inline-block;background:url(../img/icons/IconsetW.png) -15px -320px/42px 1171px no-repeat;width:12px;height:12px;margin:21px;opacity:.8}.is_1x .modal-close-button i{background-image:url(../img/icons/IconsetW_1x.png)}.modal-close-button:hover i{opacity:1}.modal-body{padding:14px}.modal_simple_header{font-size:14px;margin:0 0 10px;text-align:center;font-weight:700}.modal_simple_form{max-width:230px;margin:0 auto;padding:70px 0 50px}.modal_simple_form h4{font-size:16px;margin-bottom:20px;text-align:center}.modal_simple_form .form-group{margin-bottom:13px}.modal_simple_form_description{color:#777;line-height:160%;margin:10px 0 0;text-align:justify}.modal_section_header{font-size:12px;line-height:14px;color:#999;background:#f5f5f5;padding:7px 14px;margin:0}.modal_section_body{padding:14px}.modal_section_body dl,.modal_section_body p{margin:5px 0}.modal_section:last-child .modal_section_body{padding-bottom:8px}.modal-footer{padding:0 14px 13px;margin:0;border-top:0}a.tg_checkbox{color:#000;display:block;line-height:18px;margin:8px 0}a.tg_checkbox:hover{text-decoration:none}.tg_checkbox span.icon-checkbox-outer{display:inline-block;background:#c7c7c7;width:33px;height:18px;line-height:18px;vertical-align:middle;padding:4px;border-radius:10px;overflow:hidden;margin:0 9px 0 0;-webkit-transition:background ease-in-out .1s;transition:background ease-in-out .1s}.tg_checkbox.tg_checkbox_on span.icon-checkbox-outer{background-color:#5c8db3}.tg_checkbox i.icon-checkbox-inner{display:inline-block;background:#fff;width:10px;height:10px;border-radius:5px;overflow:hidden;float:left;margin-left:0;-webkit-transition:margin-left ease .1s;transition:margin-left ease .1s}.tg_checkbox.tg_checkbox_on i.icon-checkbox-inner{margin-left:15px}.tg_checkbox_label{display:inline-block;line-height:18px;vertical-align:middle}a.tg_checkbox:hover span.icon-checkbox-outer{background:#bdbdbd}a.tg_checkbox_on:hover span.icon-checkbox-outer{background:#5785aa}a.tg_checkbox:hover i.icon-checkbox-inner{background:#f2f2f2}a.tg_radio{color:#000;display:block;line-height:18px;margin:5px 0}a.tg_radio:hover{text-decoration:none}.tg_radio i.icon-radio{display:inline-block;background:#FFF;width:20px;height:20px;line-height:20px;vertical-align:middle;border-radius:10px;border:1px solid #ccc;overflow:hidden;margin:0 9px 0 14px;-webkit-transition:border-color ease-in-out .1s;transition:border-color ease-in-out .1s}.tg_radio.tg_radio_on i.icon-radio{border:6px solid #5c8db3}.tg_radio_label{display:inline-block;line-height:20px;vertical-align:middle}a.tg_radio:hover i.icon-radio{background:#f2f2f2;border-color:#ccc}a.tg_radio_on:hover i.icon-radio{border-color:#5785aa}.tg_range_wrap{line-height:18px}.tg_slider_wrap{position:relative;cursor:pointer;line-height:18px;height:18px}.tg_slider_track{position:absolute;background:#c7c7c7;height:3px;margin:8px 0;border-radius:2px;width:100%;z-index:2}.tg_slider_thumb{position:absolute;border:0;background:#568cb5;width:12px;height:12px;border-radius:6px;margin-top:4px;z-index:3}.tg_form_group{padding:6px 0}.tg_form_group:first-child{padding-top:0}.tg_form_group:last-child{padding-bottom:0}.img_fullsize_with_progress_wrap{position:relative;margin:0 auto}.img_fullsize_progress_overlay{position:absolute;width:100%;height:100%}.img_fullsize_progress_wrap{position:relative}.img_fullsize_progress{position:absolute;bottom:0;left:0;width:100%;height:25px;margin:0;background:rgba(0,0,0,.5);border:0;border-radius:0;padding:10px}.welcome_form{background:#FFF;padding:45px 0 63px;border-bottom:1px solid #e9e9e9}.welcome_logo{background:url(../img/decentralization.png) 0 0/160px 160px no-repeat;display:block;width:160px;height:160px;margin:0 auto}img.welcome_logo{background:0 0}.welcome_header{text-align:center;font-size:24px;font-weight:400;margin:15px 0 20px}.welcome_text{text-align:center;margin-bottom:26px;font-size:14px;line-height:14px;padding:0 15px}.welcome_btn_wrap{max-width:219px;margin:0 auto}.welcome_footer{background:#f8f8f8;padding:20px 0 65px}.welcome_cards_wrap{max-width:870px;margin:0 auto}.welcome_footer_card_wrap{width:260px;margin:41px auto 0;text-align:center}.welcome_footer_card{background:url(../img/WebIntro2_1x.png) 0 0/217px 178px no-repeat;width:219px;height:180px;border:1px solid #e0e4e9;margin:0 auto 24px}.welcome_footer_card_messaging{background-image:url(../img/WebIntro1.png)}.is_1x .welcome_footer_card_messaging{background-image:url(../img/WebIntro1_1x.png)}.welcome_footer_card_filesharing{background-image:url(../img/WebIntro2.png)}.is_1x .welcome_footer_card_filesharing{background-image:url(../img/WebIntro2_1x.png)}.welcome_footer_card_powerful{background-image:url(../img/WebIntro3.png)}.is_1x .welcome_footer_card_powerful{background-image:url(../img/WebIntro3_1x.png)}.welcome_footer_card_wrap h4{font-size:18px}.login_form_wrap{max-width:310px;padding:25px;background:#FFF;margin:200px auto 0;border-radius:1px;overflow:hidden;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.1);-moz-box-shadow:0 1px 2px rgba(0,0,0,.1);box-shadow:0 1px 2px rgba(0,0,0,.1)}.login_form_head{color:#222;margin-top:0;margin-bottom:7px;text-align:center}.login_edit_phone{text-align:center;margin-bottom:3px}.login_form_lead{color:#959595;text-align:center;margin:15px 0 30px;font-size:13px}.login_form_messaging{text-align:center;color:#959595;font-size:13px;margin-top:20px}.login_country_selector{cursor:pointer;background:#f7f7f7;height:34px;padding:10px 12px 10px 13px;line-height:14px;margin-bottom:12px}.login_country_selector:hover{background:#ededed}.login_country_selector .icon-caret{margin-top:4px;height:5px;width:10px;background-position:-16px -653px}.login_phone_country,.login_phone_number{float:left;display:inline-block;font-size:12px}.login_phone_country{width:53px;margin-right:9px;padding:6px 3px;text-align:center}.login_phone_number{width:198px}.login_phone_code{text-align:center}.login_first_name_wrap{margin-bottom:11px}.im_dialogs_empty_wrap{margin:60px 50px;text-align:center}.im_dialogs_import_phonebook{margin-top:10px}.im_dialogs_panel{padding:12px 12px 6px;position:relative}.im_dialogs_search{position:relative}.im_page_split .im_dialogs_search{margin-right:48px}.im_dialogs_search_field{font-size:12px;line-height:normal;background:url(../img/icons/IconsetW.png) -6px -205px/42px 1171px no-repeat #F2F2F2;border:1px solid #F2F2F2;border-radius:3px;padding:6px 20px 6px 30px;margin:0 0 6px}.im_dialogs_modal_col_wrap .im_dialogs_search_field{background-color:#FFF;border-color:#d9dbde}.is_1x .im_dialogs_search_field{background-image:url(../img/icons/IconsetW_1x.png)}.im_dialogs_search_field:active,.im_dialogs_search_field:focus{background-color:#FFF}.im_dialogs_search_clear{position:absolute;right:9px;margin-top:-30px;color:#999;width:13px;height:13px;vertical-align:text-top;background:url(../img/icons/IconsetW.png) -15px -192px/42px 1171px no-repeat;opacity:.6}.is_1x .im_dialogs_search_clear{background-image:url(../img/icons/IconsetW_1x.png)}.im_dialogs_search_clear:hover{opacity:1}.im_dialogs_tabs_wrap{display:none}.im_dialogs_tabs{padding:4px 0;position:relative}.im_dialogs_tab{color:#8c8c8c;background:#f2f2f2;height:30px;text-align:center;overflow:hidden;width:50%;float:left;padding:7px 0}.im_dialogs_tab:active,.im_dialogs_tab:hover{color:#8c8c8c;text-decoration:none}.im_dialogs_tab.active{color:#FFF;background:#6490b1}.im_dialogs_tab:first-child{border-radius:2px 0 0 2px}.im_dialogs_tab:last-child{border-radius:0 2px 2px 0}.im_dialogs_panel_dropdown{position:absolute;right:12px}.im_dialogs_panel_dropdown .dropdown-menu{right:auto;left:0;margin-top:8px}.im_dialogs_scrollable_wrap{outline:0!important}.im_dialogs_scrollable_wrap .im_dialog_wrap{margin-top:0}.im_dialogs_scrollable_wrap a.im_dialog{clear:both;overflow:hidden;color:#000;padding:8px 9px;border-radius:0}.im_dialogs_scrollable_wrap a.im_dialog:hover,.im_dialogs_scrollable_wrap a.im_dialog_selected{border-radius:2px;background:#f2f6fa}.im_dialogs_scrollable_wrap .active a.im_dialog{border-radius:2px;background-color:#6490b1}.im_dialogs_scrollable_wrap .active a.im_dialog:hover,.im_dialogs_scrollable_wrap .active a.im_dialog_selected{background-color:#6490b1}.im_dialogs_scrollable_wrap a.im_dialog .glyphicon,.im_dialogs_scrollable_wrap a.im_dialog .icon{display:none}.im_dialog_message_wrap{overflow:hidden;word-wrap:break-word}.im_dialog_chat_from_wrap,.im_dialog_message_media,.im_dialog_message_service{color:#3a6d99}.im_dialog_message_text{color:gray}a.im_dialog:hover .im_dialog_message_text,a.im_dialog_selected .im_dialog_message_text{color:#698192}.active a.im_dialog .im_dialog_chat_from_wrap,.active a.im_dialog .im_dialog_message,.active a.im_dialog .im_dialog_message_media,.active a.im_dialog .im_dialog_message_service,.active a.im_dialog .im_dialog_message_text{color:#FFF}.im_dialog_photo{width:40px;height:40px;border-radius:2px;overflow:hidden;margin:0 10px 0 0}.im_dialog_peer{color:#222;font-weight:700;margin-top:2px;margin-bottom:2px}.active .im_dialog_peer{color:#FFF}.im_dialog_badge{background:#6ec26d;border-radius:2px;font-size:10px;padding:3px 4px;margin-top:4px}.active .im_dialog_badge{color:#428bca;background-color:#fff}.im_dialogs_modal_col .im_dialog_badge{display:none}.im_dialog_unread{background:#c1d6e5;display:inline-block;float:right;width:8px;height:8px;border-radius:5px;overflow:hidden;margin:10px 0 0}a.im_dialog:hover .im_dialog_unread,a.im_dialog_selected .im_dialog_unread{background:#a3c0d4}.active .im_dialog_unread{background-color:#a4c4dd}.im_dialog_date{color:#b3b3b3;font-size:.85em}a.im_dialog:hover .im_dialog_date,a.im_dialog_selected .im_dialog_date{color:#91a6ba}.active .im_dialog_date,.active a.im_dialog:hover .im_dialog_date,.active a.im_dialog_selected .im_dialog_date{color:#b8d1e4}.im_dialog_service{font-style:italic;color:#999}.im_dialog_message,.im_dialog_peer{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.im_dialog_message{color:gray}.icon-caret{width:8px;height:4px;display:inline-block;vertical-align:text-top;margin-top:7px;margin-left:6px;background:url(../img/icons/IconsetW.png) -17px -444px/42px 1171px no-repeat}.is_1x .icon-caret{background-image:url(../img/icons/IconsetW_1x.png)}.im_dialogs_empty_header{font-size:15px;color:gray;margin:0 0 15px}.im_dialogs_empty_lead{color:gray;margin-bottom:18px}.im_history_scrollable_wrap{outline:0!important;-webkit-user-select:text;position:relative}.im_history_to_bottom{overflow:hidden}.im_history_to_bottom .im_history_scrollable{position:absolute;bottom:0;width:100%}.im_history{padding:20px 0 0;position:relative}.im_history_typing_wrap{line-height:18px;width:100%;height:49px;padding:13px 0 18px;overflow:hidden;-webkit-user-select:none}.im_history_typing{font-size:11px;color:#999;max-width:526px;margin:0 auto;padding:0 77px}.im_history_typing a.im_history_typing_author{color:#999;font-weight:700}.im_message_unread_split{background:#f4f4f4;color:#777;text-align:center;padding:4px 10px;margin:10px 0}.im_message_author,.im_message_fwd_author{color:#3a6d99;font-weight:700}.non_osx .im_message_author,.non_osx .im_message_fwd_author{font-size:12px}.im_message_contact_photo,.im_message_from_photo,.im_message_fwd_photo{width:34px;height:34px;border-radius:2px;overflow:hidden}a.im_message_contact_photo,a.im_message_from_photo{margin:1px 12px 0 0}.non_osx .im_message_contact_name{font-size:12px}.im_message_contact_name{font-weight:700}a.im_message_photo_thumb,a.im_message_video_thumb{display:block;overflow:hidden;border-radius:2px}img.im_message_photo_thumb,img.im_message_video_thumb{overflow:hidden;border-radius:2px}.im_message_video,a.im_message_photo_thumb{margin-top:5px}a.im_message_video_thumb{float:left;margin-right:15px;position:relative}img.im_message_video_thumb{-webkit-filter:blur(2px);-moz-filter:blur(2px);-o-filter:blur(2px);-ms-filter:blur(2px);filter:blur(2px);filter:progid:DXImageTransform.Microsoft.Blur(PixelRadius='2')}div.im_message_video_thumb{position:relative}.im_message_video_duration{background:rgba(0,0,0,.4);color:#FFF;position:absolute;bottom:4px;right:4px;padding:2px 6px;font-size:11px;line-height:15px;border-radius:2px;overflow:hidden;z-index:1}.icon-videoplay{position:absolute;display:inline-block;top:50%;left:50%;margin-left:-21px;margin-top:-21px;width:42px;height:42px;background:url(../img/icons/IconsetW.png) 0 -590px/42px 1171px no-repeat;z-index:1}.is_1x .icon-videoplay{background-image:url(../img/icons/IconsetW_1x.png)}.im_message_geopoint{border-radius:2px;margin-top:5px;overflow:hidden;display:block;position:relative;width:200px;height:100px}.icon-geo-point{position:absolute;display:inline-block;top:50%;left:50%;margin-left:-8px;margin-top:-10px;width:15px;height:19px;background:url(../img/icons/IconsetW.png) -14px -389px/42px 1171px no-repeat}.is_1x .icon-geo-point{background-image:url(../img/icons/IconsetW_1x.png)}.im_message_media_embed{position:relative;height:0;overflow:hidden;margin-top:5px}.im_message_video_embed{padding-bottom:56.25%}.im_message_insta_embed{padding-bottom:122%}.im_message_vine_embed{padding-bottom:100%}.im_message_soundcloud_embed{padding-bottom:56.25%}.im_message_media_embed iframe,.im_message_media_embed webview{position:absolute;top:0;left:0;width:100%;height:100%}.im_message_twitter_embed>blockquote{visibility:hidden}.im_message_gif_wrap{position:relative}.im_message_gif_btn{color:#FFF;font-style:normal;font-weight:700;position:absolute;display:inline-block;top:50%;left:50%;margin-left:-22px;margin-top:-21px;border:2px solid #FFF;border-radius:20px;padding:10px;z-index:1}.im_message_audio,.im_message_document,.im_message_upload_file,.im_message_video{margin-top:3px;width:317px}.im_message_audio{margin-top:3px}.im_message_file_button{display:block;background:rgba(218,228,234,.5);float:left;width:42px;height:42px;border-radius:0;margin-right:10px}.im_message_file_button_icon{display:inline-block;line-height:0;background:url(../img/icons/IconsetW.png) -15px -953px/42px 1171px no-repeat;width:12px;height:20px;margin:11px 15px}.is_1x .im_message_file_button_icon{background-image:url(../img/icons/IconsetW_1x.png)}.im_message_file_button_dl_doc .im_message_file_button_icon{background-position:-13px -983px;width:16px;height:18px;margin:12px 13px}.im_message_file_button_dl_audio{background:#6490b1;border-radius:2px}.im_message_file_button_dl_audio .im_message_file_button_icon{display:block;width:15px;height:18px;background:url(../img/icons/IconsetW.png) -15px -897px/42px 1171px no-repeat;margin:12px 13.5px}.is_1x .im_message_file_button_dl_audio .im_message_file_button_icon{background-image:url(../img/icons/IconsetW_1x.png);background-position:-15px -899px}.im_message_file_button_dl_audio .audio_player_btn_icon_pause,.is_1x .im_message_file_button_dl_audio .audio_player_btn_icon_pause{width:12px;height:16px;background-position:-15px -927px;margin:13px 15px}.im_history_selectable .im_message_outer_wrap:hover .icon-document,.im_message_selected .icon-document{background-color:#dae6f0;background-position:-2px -542px}.im_message_document_link_disabled{cursor:default;pointer-events:none}.im_message_document_info{float:left}.im_message_document_thumb_wrap{border-radius:2px;overflow:hidden;background:#f2f2f2;width:100px;min-height:38px;max-height:100px;margin-right:10px;text-align:center;float:left;line-height:0}img.im_message_document_thumb{max-width:100px;max-height:100px;vertical-align:middle}.im_message_document_name_wrap{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;width:265px;padding:0 0 1px}.im_message_document_actions{width:265px}.im_message_document_name{color:#3a6d99;display:inline-block;font-weight:700;max-width:170px;overflow:hidden;vertical-align:text-top;white-space:nowrap;text-overflow:ellipsis}.im_message_document_size{color:#999;padding-left:2px;vertical-align:text-top}.audio_player_actions a,.im_message_document_actions a{margin-right:10px}.audio_player_title_wrap{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:1px 0;line-height:16px;height:19px;width:200px}.audio_player_title{display:inline-block;font-weight:700;max-width:85px;overflow:hidden;vertical-align:text-top;white-space:nowrap;text-overflow:ellipsis}.audio_player_meta{overflow:hidden;vertical-align:text-top;display:inline-block}.audio_player_duration,.audio_player_size{color:#999;padding-left:2px}.audio_player_actions{margin-top:3px}.audio_player_seek_slider{float:left;margin-right:15px;width:200px}.audio_player_seek_slider .tg_slider_wrap{height:16px;line-height:16px}.audio_player_seek_slider .tg_slider_thumb{background:#6490b1;width:4px;height:16px;line-height:16px;margin-top:0;border-radius:0}.audio_player_seek_slider .tg_slider_track{margin:6px 0;background:rgba(218,228,234,.5);height:4px;border-radius:0}.audio_player_seek_slider .tg_slider_track_fill{background:#6490b1;height:4px;width:0}.audio_player_volume_slider{width:50px;float:left}.audio_player_volume_slider .tg_slider_wrap{height:16px;line-height:16px}.audio_player_volume_slider .tg_slider_thumb{display:none;background:#6490b1;width:4px;height:8px;line-height:16px;margin-top:4px;border-radius:0}.audio_player_volume_slider:hover .tg_slider_thumb{display:block}.audio_player_volume_slider .tg_slider_track{margin:6px 0;background:rgba(218,228,234,.5);height:4px}.audio_player_volume_slider .tg_slider_track_fill{background:#6490b1;height:4px;width:0}.audio_player_progress_wrap{overflow:hidden}.audio_player_progress_wrap .tg_down_progress{margin-top:5px}.im_message_download_progress_wrap,.im_message_upload_progress_wrap{margin-top:5px;width:200px}.im_message_document_thumbed .im_message_document_actions,.im_message_document_thumbed .im_message_document_name_wrap,.im_message_document_thumbed .im_message_download_progress_wrap,.im_message_document_thumbed .im_message_upload_progress_wrap{width:207px}.im_message_document_thumbed .im_message_document_name{max-width:110px}.im_message_video .im_message_document_actions,.im_message_video .im_message_document_name_wrap,.im_message_video .im_message_download_progress_wrap{width:152px}.im_message_video .im_message_document_name_wrap{margin-top:5px}.im_message_cancelable_progress_wrap,.im_message_playback_progress_wrap{margin-top:4px}.im_message_media_progress_cancel{margin-left:15px;line-height:100%;width:50px;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tg_down_progress,.tg_up_progress{height:4px;margin:0;padding:0;background:rgba(218,228,234,.5);border:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.tg_down_progress .progress-bar,.tg_up_progress .progress-bar{height:4px;line-height:4px;background:#6B9ABD;border-radius:0;overflow:hidden;-webkit-box-shadow:none;box-shadow:none}.im_service_message_wrap{text-align:center}.im_service_message{display:inline-block;min-width:10px;padding:4px 7px;line-height:1.4;color:#999;text-align:center;border-radius:10px;margin:5px 0}.im_service_message_photo_thumb{display:block;margin:0 auto}.im_content_message_wrap{margin:8px 0 8px 16px}.im_message_date,.im_message_fwd_date{color:#adadad;font-size:.85em;padding:0 0 20px 10px}div.im_message_author,div.im_message_body{display:block;overflow:hidden}a.im_message_fwd_photo{position:absolute;margin-top:1px}.im_message_fwd_date{padding:0}.im_message_text{word-wrap:break-word}span.emoji{-moz-box-orient:vertical;display:inline-block;vertical-align:baseline;height:18px;width:18px;background-repeat:no-repeat;text-indent:-9999px}.emoji-spritesheet-0{background-size:486px 126px;background-image:url(../img/emojisprite_0.png)}.emoji-spritesheet-1{background-size:522px 72px;background-image:url(../img/emojisprite_1.png)}.emoji-spritesheet-2{background-size:594px 126px;background-image:url(../img/emojisprite_2.png)}.emoji-spritesheet-3{background-size:612px 54px;background-image:url(../img/emojisprite_3.png)}.emoji-spritesheet-4{background-size:612px 126px;background-image:url(../img/emojisprite_4.png)}.im_history_empty,.im_history_not_selected{visibility:hidden;text-align:center;color:#999;font-size:16px;line-height:18px;padding:1px 50px;margin:0}.im_history_empty.vertical-aligned,.im_history_not_selected.vertical-aligned{visibility:visible}.im_history_to_bottom .im_history_empty,.im_history_to_bottom .im_history_not_selected{display:none}.im_send_panel_wrap{margin:0 auto;padding:10px 15px 22px}.im_send_form_wrap{position:relative}.im_send_form{margin:0 auto;position:absolute;bottom:0}.im_send_dropbox_wrap{background:#FFF;display:none;padding:15px 10px;margin:1px;border-radius:4px;overflow:hidden;text-align:center;color:#999;position:absolute}textarea.im_message_field{font-size:12px;margin-bottom:10px;padding:6px;min-height:50px;height:50px;resize:none}.im_attach{cursor:pointer;display:block;overflow:hidden;position:relative;padding:0 2px;width:23px;height:24px;margin-top:4px;margin-left:20px}.icon-paperclip{display:inline-block;width:19px;height:23px;vertical-align:text-top;background:url(../img/icons/IconsetW.png) -12px -68px/42px 1171px no-repeat;opacity:.8}.is_1x .icon-paperclip{background-image:url(../img/icons/IconsetW_1x.png)}.im_attach:hover .icon-paperclip{opacity:1}.im_attach:active .icon-paperclip{background-position:-12px -100px;opacity:1}.im_emoji_btn{cursor:pointer;padding:0;width:23px;height:23px;margin-top:4px}.icon-emoji{display:inline-block;width:23px;height:23px;vertical-align:text-top;background:url(../img/icons/IconsetW.png) -10px -4px/42px 1171px no-repeat;opacity:.8}.is_1x .icon-emoji{background-image:url(../img/icons/IconsetW_1x.png)}.im_emoji_btn:hover .icon-emoji{opacity:1}.im_emoji_btn.on .icon-emoji,.im_emoji_btn:active .icon-emoji{background-position:-10px -36px;opacity:1}.im_attach_input,.im_media_attach_input{cursor:pointer;font-size:72px!important;opacity:.01;position:absolute;z-index:100;margin:0;padding:0;top:0;right:0}.im_media_attach{cursor:pointer;display:block;overflow:hidden;position:relative;padding:0;width:24px;height:22px;margin-top:5px;margin-left:20px}.icon-camera{display:inline-block;width:25px;height:21px;vertical-align:text-top;background:url(../img/icons/IconsetW.png) -9px -132px/42px 1171px no-repeat;opacity:.8}.is_1x .icon-camera{background-image:url(../img/icons/IconsetW_1x.png)}.im_media_attach:hover .icon-camera{opacity:1}.im_media_attach:active .icon-camera{background-position:-9px -162px;opacity:1}.icon-online{background:#6ec26d;border:1px solid #FFF;display:block;width:11px;height:11px;border-radius:6px;overflow:hidden;position:absolute;margin-top:-7px;margin-left:33px}.img_fullsize_wrap,a.img_fullsize{display:block;text-align:center}img.img_fullsize{margin:0 auto}.document_modal_image_wrap{overflow:auto}.document_fullsize_wrap{display:none;cursor:zoom-in;text-align:center}.document_fullsize_zoomed{cursor:zoom-out}.document_fullsize_img{-webkit-user-select:none}.document_fullsize_zoomed .document_fullsize_img{-webkit-user-select:none;image-rendering:optimizeSpeed;image-rendering:-moz-crisp-edges;image-rendering:-o-crisp-edges;image-rendering:-webkit-optimize-contrast;image-rendering:optimize-contrast;-ms-interpolation-mode:nearest-neighbor}.video_full_player video{background:#000}.media_modal_info{color:#999;margin:20px 0 0}.media_modal_actions{margin-top:20px}.media_modal_action_link{margin-left:15px}.media_modal_author{color:inherit;font-weight:700}.media_modal_author:hover{color:inherit}.non_osx .media_modal_author{font-size:12px}.emoji-wysiwyg-editor:empty:before{content:attr(placeholder);color:#9aa2ab}.emoji-wysiwyg-editor:active:before,.emoji-wysiwyg-editor:focus:before{content:none}.emoji-wysiwyg-editor{box-sizing:content-box;-moz-box-sizing:content-box;font-size:12px;margin-bottom:10px;padding:6px;min-height:36px;height:auto;width:auto;max-height:284px;overflow:auto;line-height:17px;border:1px solid #d2dbe3;border-radius:2px;-webkit-box-shadow:none;box-shadow:none;-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;-webkit-user-select:text;word-wrap:break-word}.emoji-wysiwyg-editor img{width:20px;height:20px;vertical-align:middle;margin:-3px 0 0}.emoji-menu{position:absolute;z-index:999;width:220px;margin-left:-107px;margin-top:-252px;border:1px solid #dfdfdf;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;overflow:hidden;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);-moz-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1)}.emoji-items-wrap1{background:#FFF;padding:5px 2px 5px 5px}.emoji-items-wrap1 .emoji-menu-tabs{width:100%;margin-bottom:8px;margin-top:3px}.emoji-items-wrap1 .emoji-menu-tabs td{text-align:center;color:#fff;line-height:0}.emoji-menu-tabs .emoji-menu-tab{display:inline-block;width:24px;height:29px;background:url(../img/icons/IconsetSmiles.png) 0 0/42px 350px no-repeat}.is_1x .emoji-menu-tabs .emoji-menu-tab{background-image:url(../img/icons/IconsetSmiles_1x.png)}.emoji-menu-tabs .icon-recent{background-position:-9px -306px}.emoji-menu-tabs .icon-recent-selected{background-position:-9px -277px}.emoji-menu-tabs .icon-smile{background-position:-9px -34px}.emoji-menu-tabs .icon-smile-selected{background-position:-9px -5px}.emoji-menu-tabs .icon-flower{background-position:-9px -145px}.emoji-menu-tabs .icon-flower-selected{background-position:-9px -118px}.emoji-menu-tabs .icon-bell{background-position:-9px -89px}.emoji-menu-tabs .icon-bell-selected{background-position:-9px -61px}.emoji-menu-tabs .icon-car{background-position:-9px -196px}.emoji-menu-tabs .icon-car-selected{background-position:-9px -170px}.emoji-menu-tabs .icon-grid{background-position:-9px -248px}.emoji-menu-tabs .icon-grid-selected{background-position:-9px -222px}.emoji-menu-tabs .icon-bell,.emoji-menu-tabs .icon-car,.emoji-menu-tabs .icon-flower,.emoji-menu-tabs .icon-grid,.emoji-menu-tabs .icon-smile{opacity:.7}.emoji-menu-tabs .icon-bell:hover,.emoji-menu-tabs .icon-car:hover,.emoji-menu-tabs .icon-flower:hover,.emoji-menu-tabs .icon-grid:hover,.emoji-menu-tabs .icon-smile:hover{opacity:1}.emoji-menu .emoji-items-wrap{position:relative;height:174px}.emoji-menu .emoji-items{padding-right:8px;outline:0!important}.emoji-menu img{width:20px;height:20px;vertical-align:middle;border:0}.emoji-menu .emoji-items a{margin:-1px 0 0 -1px;padding:5px;display:block;float:left;border-radius:2px}.emoji-menu .emoji-items a:hover{background-color:#edf2f5}.emoji-menu:after{content:' ';display:block;clear:left}.emoji-menu a .label{display:none}.error_modal_window .modal-dialog{max-width:350px}.error_modal_description{text-align:center;padding:20px;font-size:14px;line-height:160%}.error_modal_details textarea{display:block;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;font-size:10px;line-height:100%;white-space:pre-wrap;padding:4px;margin:10px 0;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px;width:100%;text-align:left}.error_modal_details div{padding:0 20px;font-size:13px;text-align:center}.error_modal_details div a{color:#999}.confirm_modal_window .modal-dialog{max-width:400px}.confirm_modal_description{text-align:center;padding:20px;font-size:14px;line-height:160%;margin-top:40px}.confirm_phone_number{font-weight:700;padding:15px 10px 0;text-align:center}.document_modal_window,.photo_modal_window,.video_modal_window{display:block}.photo_modal_error{color:#999;position:absolute;width:100%;top:50%;margin-top:-20px;padding:0 20px;text-align:center;font-size:1.4em;line-height:160%}.video_full_error{border-radius:10px;overflow:hidden;background:rgba(0,0,0,.6);color:#FFF;position:absolute;top:50%;margin:-40px 10px 0;padding:10px;text-align:center;font-size:1.4em;line-height:160%}.settings_modal_wrap .im_attach_input{z-index:999}.settings_modal_username_link,.settings_modal_username_link:hover{color:inherit}.settings_external_service{line-height:0;display:inline-block;padding:7px 9px}.settings_about_section_body{padding-right:0}.settings_about_section_body p{margin-top:7px;margin-bottom:3px}.icon-github{display:inline-block;width:59px;height:18px;background:url(../img/icons/AboutLogos_2x.png) 0 -5px/60px 136px no-repeat}a:hover .icon-github{background-position:0 -43px}.icon-twitter{display:inline-block;width:20px;height:15px;margin-top:1px;background:url(../img/icons/AboutLogos_2x.png) 0 -81px/60px 136px no-repeat}a:hover .icon-twitter{background-position:0 -116px}.is_1x .icon-github,.is_1x .icon-twitter{background-image:url(../img/icons/AboutLogos_1x.png)}.contacts_modal_search{padding:0 0 14px;position:relative}.contacts_modal_search_field{font-size:12px;line-height:normal;background:url(../img/icons/IconsetW.png) -6px -205px/42px 1171px no-repeat;border:1px solid #d9dbde;border-radius:3px;padding:6px 15px 6px 30px;margin:0}.is_1x .contacts_modal_search_field{background-image:url(../img/icons/IconsetW_1x.png)}.contacts_modal_search_clear{position:absolute;right:9px;margin-top:-24px;color:#999;width:13px;height:13px;vertical-align:text-top;background:url(../img/icons/IconsetW.png) -15px -192px/42px 1171px no-repeat;opacity:.6}.is_1x .contacts_modal_search_clear{background-image:url(../img/icons/IconsetW_1x.png)}.contacts_modal_search_clear:hover{opacity:1}.contacts_scrollable_wrap{outline:0!important}.contacts_modal_contacts_empty{visibility:hidden;text-align:center;color:#999;font-size:16px;line-height:18px;padding:1px 50px;margin:0}.contacts_modal_contacts_empty.vertical-aligned{visibility:visible}.contacts_modal_members_list .contacts_modal_contact_wrap{margin-top:0}.contacts_modal_members_list a.contacts_modal_contact{clear:both;overflow:hidden;color:#000;padding:8px 9px;border-radius:0}.contacts_modal_members_list .active a.contacts_modal_contact,.contacts_modal_members_list .active a.contacts_modal_contact:hover,.contacts_modal_members_list a.contacts_modal_contact:hover{border-radius:2px;background:#f2f6fa}.contacts_modal_contact_name{display:block;color:#3C6E97;font-weight:700;margin:1px 0 2px}.non_osx .contacts_modal_contact_name{font-size:12px}.contacts_modal_contact_photo{width:40px;height:40px;margin-right:10px;overflow:hidden;border-radius:2px}.contacts_modal_contact_status{color:#999}.contacts_modal_members_list .active a.contacts_modal_contact .contacts_modal_contact_status,a.contacts_modal_contact:hover .contacts_modal_contact_status{color:#91a6ba}.chat_modal_participant_wrap{padding:8px 0;border-top:1px solid #F0F0F0}.chat_modal_participant_wrap:first-child{border-top:0}.chat_modal_participant_kick{padding:11px 0;display:block}.chat_modal_participant_name{display:block;color:#3C6E97;font-weight:700;margin:1px 0 2px}.non_osx .chat_modal_participant_name{font-size:12px}.chat_modal_participant_status{color:#999}a.chat_modal_participant_photo{width:40px;height:40px;margin-right:10px;border-radius:2px;overflow:hidden}img.chat_modal_participant_photo{width:40px;height:40px}.chat_modal_members_forbidden{color:#999}.icon-contact-tick{position:absolute;right:10px;top:17px;display:inline-block;width:25px;height:25px;background:url(../img/icons/IconsetW.png) -9px -516px/42px 1171px no-repeat;opacity:.5}.is_1x .icon-contact-tick{background-image:url(../img/icons/IconsetW_1x.png)}.contacts_modal_members_list .contacts_modal_contact_wrap:hover .icon-contact-tick{background-position:-9px -481px;opacity:.5}.contacts_modal_members_list .contacts_modal_contact_wrap.active .icon-contact-tick{background-position:-9px -481px;opacity:1}.contacts_modal_members_list .disabled{pointer-events:none}.contacts_modal_members_list .disabled .icon-contact-tick{display:none}.contacts_modal_panel{text-align:center}.group_edit_modal_window .modal-dialog{max-width:506px}.im_edit_panel_wrap{padding:10px 0 34px;margin:0 24px 0 12px}.im_edit_panel_border{display:block;margin:0 0 34px 3px;border-bottom:1px solid #EEE}.im_panel_to_top .im_edit_panel_wrap{background:#FFF;position:absolute;width:100%}.im_edit_selected_actions{text-align:center}.im_edit_delete_btn,.im_edit_forward_btn{border-radius:2px;padding:5px 17px;font-weight:400;font-size:12px;line-height:18px;margin:6px}.im_edit_panel_title{text-align:center;margin:0;font-size:14px;line-height:34px}.im_message_focus .audio_player_duration,.im_message_focus .audio_player_size,.im_message_focus .im_message_date,.im_message_focus .im_message_document_size,.im_message_focus .im_message_fwd_date{color:#899daf}.icon-select-tick{display:none;width:26px;height:26px;margin:13px 0 0 40px;background:url(../img/icons/IconsetW.png) -9px -516px/42px 1171px no-repeat}.is_1x .icon-select-tick{background-image:url(../img/icons/IconsetW_1x.png)}.user_color_1,.user_color_1:hover{color:#b3577a}.user_color_2,.user_color_2:hover{color:#539e4f}.user_color_3,.user_color_3:hover{color:#ae9661}.user_color_4,.user_color_4:hover{color:#4979a3}.user_color_5,.user_color_5:hover{color:#8365ab}.user_color_6,.user_color_6:hover{color:#b7635d}.user_color_7,.user_color_7:hover{color:#5397b4}.user_color_8,.user_color_8:hover{color:#c07844}.im_dialogs_contacts_wrap h5{color:#999;font-size:13px;margin-left:8px}.img_gif_with_progress_wrap{position:relative;overflow:hidden;float:left;margin-top:3px;max-width:100%}.img_gif_thumb{-webkit-filter:blur(2px);-moz-filter:blur(2px);-o-filter:blur(2px);-ms-filter:blur(2px);filter:blur(2px);filter:progid:DXImageTransform.Microsoft.Blur(PixelRadius='2');margin:-1px;padding:1px;max-width:100%}.img_gif_image{max-width:100%}.img_gif_info_wrap{color:#FFF;font-size:10px;position:absolute;bottom:0;left:0;right:0;padding:4px}.img_gif_label,.img_gif_size{padding:1px 8px;background:rgba(0,0,0,.5);border-radius:3px;overflow:hidden}.img_gif_progress_wrap{position:absolute;bottom:0;left:0;right:0}.img_gif_progress_wrap .tg_progress{background:rgba(0,0,0,.6);border-color:rgba(0,0,0,.6);border-width:8px;height:18px;border-radius:0}.img_gif_progress_wrap .progress-bar{background:#FFF;height:2px}.countries_modal_window .modal-dialog{max-width:392px}.countries_modal_window .modal_simple_header{margin-bottom:12px;font-weight:400}.countries_modal_search{padding:0 0 12px;margin:0 20px;position:relative}.countries_modal_search_field{font-size:12px;line-height:normal;background:url(../img/icons/IconsetW.png) -6px -205px/42px 1171px no-repeat #F2F2F2;border:1px solid #F2F2F2;border-radius:3px;padding:6px 20px 6px 30px;margin:0}.is_1x .countries_modal_search_field{background-image:url(../img/icons/IconsetW_1x.png)}.countries_modal_search_field:active,.countries_modal_search_field:focus{background-color:#FFF}.countries_modal_search_clear{position:absolute;right:9px;margin-top:-23px;color:#999;width:13px;height:13px;vertical-align:text-top;background:url(../img/icons/IconsetW.png) -15px -192px/42px 1171px no-repeat;opacity:.6}.is_1x .countries_modal_search_clear{background-image:url(../img/icons/IconsetW_1x.png)}.countries_modal_search_clear:hover{opacity:1}.countries_modal_wrap .modal-body{padding:14px 0}.countries_scrollable_wrap a.countries_modal_country{clear:both;overflow:hidden;color:#000;padding:8px 26px;font-size:12px;border-radius:0}.countries_scrollable_wrap a.countries_modal_country:hover{border-radius:2px;background:#f2f6fa}.countries_modal_country_code{color:#999}.countries_scrollable_wrap a.countries_modal_country:hover .countries_modal_country_code{color:#698192}.loading_dots{display:inline-block;font-size:1em;line-height:1;padding:.125em 0 .175em .15em}.loading_dots span{border:.125rem solid;border-radius:50%;display:inline-block;height:.2rem;width:.2rem;margin-left:.2rem;-webkit-animation:loading_dots .8s linear infinite;-moz-animation:loading_dots .8s linear infinite;-ms-animation:loading_dots .8s linear infinite;animation:loading_dots .8s linear infinite}.loading_dots span:nth-child(2){-webkit-animation-delay:.2s;-moz-animation-delay:.2s;-ms-animation-delay:.2s;animation-delay:.2s}.loading_dots span:nth-child(3){-webkit-animation-delay:.4s;-moz-animation-delay:.4s;-ms-animation-delay:.4s;animation-delay:.4s}@-webkit-keyframes loading_dots{0%{opacity:0}50%{opacity:1}100%{opacity:0}}@-moz-keyframes loading_dots{0%{opacity:0}50%{opacity:1}100%{opacity:0}}@-ms-keyframes loading_dots{0%{opacity:0}50%{opacity:1}100%{opacity:0}}@keyframes loading_dots{0%{opacity:0}50%{opacity:1}100%{opacity:0}}.changelog_card_wrap{text-align:center;padding:12px 0 18px}.changelog_header{margin-top:15px;font-size:16px}.changelog_card{width:160px;height:160px;display:block;background:url(../img/changelog/card_wecandoit.png) 0 0/160px 160px no-repeat;margin:0 auto}.changelog_card_search{width:133px;height:133px;display:block;background:url(../img/changelog/search.png) 0 0/133px 133px no-repeat;margin:0 auto}.changelog_version_title{color:#9d9479;background:#efede3}.changelog_version_changes_list li{line-height:20px}.bad_browser_wrap{border-radius:4px;border:1px solid #ccc;background:#FFF;max-width:600px;margin:50px auto 0;padding:40px}.bad_browser_wrap h2{margin-top:0}.bad_browser_text{font-size:14px;line-height:160%;margin:25px 0 30px}#nacl_listener{position:absolute;left:-10000px} \ No newline at end of file +html{display:none;background:url(../img/bg_tile.png) #dee4e9;overflow:visible}body{color:#000;background:0 0;font:12px/18px "Lucida Grande","Lucida Sans Unicode",Arial,Helvetica,Verdana,sans-serif;overflow:visible}.font-light{font-family:HelveticaNeue-Light,"Helvetica Neue Light","Helvetica Light",Helvetica,Arial,Verdana,sans-serif;font-weight:300}.non_osx .font-light,body.non_osx{font:13px/18px Tahoma,sans-serif,Arial,Helvetica;font-weight:400}h1,h2,h3,h4,h5{color:#222}.non_osx h4{font-size:17px}a{cursor:pointer}a.disabled{cursor:default;pointer-events:none}.form-control{border:1px solid #d9dbde;border-radius:2px;-webkit-box-shadow:none;box-shadow:none;-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}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control.no_outline:focus{border:1px solid #d9dbde;box-shadow:none;outline:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.btn{border:0;padding:7px 13px}.btn.active,.btn.active:focus,.btn:active,.btn:active:focus,.btn:focus,.btn:hover,.open .dropdown-toggle.btn{box-shadow:none;outline:0}.btn-success{color:#fff;background-color:#6ec26d}.btn-success.active,.btn-success:active,.btn-success:focus,.btn-success:hover,.open .dropdown-toggle.btn-success{color:#fff;background-color:#61b75b}.btn-success.active,.btn-success:active,.open .dropdown-toggle.btn-success{background:#66b864}.btn-danger{color:#fff;background-color:#c05f5a}.btn-danger.active,.btn-danger:active,.btn-danger:focus,.btn-danger:hover,.open .dropdown-toggle.btn-danger{color:#fff;background-color:#ab5450}.btn-danger.active,.btn-danger:active,.open .dropdown-toggle.btn-danger{background:#a24f4b}.btn-primary{color:#fff;background-color:#6490b1;border-radius:3px}.btn-primary.active,.btn-primary:active,.btn-primary:focus,.btn-primary:hover,.open .dropdown-toggle.btn-primary{color:#fff;background-color:#4a80a9}.btn-primary.active,.btn-primary:active,.open .dropdown-toggle.btn-primary{background:#41769e}.btn-primary.disabled,.btn-primary[disabled]{background:#7999b3}.btn-link{color:#3a6d99;text-decoration:none!important;border-radius:3px;overflow:hidden}.btn-link:hover{background:#f2f6fa}.btn-link.btn-link-noarea:hover,.btn-link.dropdown-toggle:hover{background:0 0}.btn-link.dropdown-toggle:active{outline:0}.tg_page_head .navbar-quick-nav,.tg_page_head .navbar-toggle{display:none}.tg_page_head .container{display:block;width:auto;padding-left:0;padding-right:0}.tg_page_head .container .navbar-header{margin:0}.tg_page_head .navbar-inverse{border:0;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.11);-moz-box-shadow:0 1px 1px rgba(0,0,0,.11);box-shadow:0 1px 1px rgba(0,0,0,.11);margin:0}.ios_standalone .tg_page_head .navbar>.container{margin-top:20px}.ios_standalone .modal.mobile_modal{border-top:20px solid #497495}.tg_page_head .navbar>.container .navbar-brand{padding:8px 15px;opacity:.9;margin-left:0;margin-right:20px;-webkit-transition:opacity swing .9s;display:block;line-height:0;height:auto}.tg_page_head .navbar>.container .navbar-brand:hover{opacity:1}.tg_head_logo{background:url(../img/T_LogoM.png) 0 0/143px 30px no-repeat;display:inline-block;width:143px;height:30px;vertical-align:text-top}.is_1x .tg_head_logo{background-image:url(../img/T_LogoM_1x.png)}.navbar_offline .navbar-header,.navbar_offline .navbar-offline>li{float:left}.navbar-offline{max-width:400px;margin:0 auto;float:none}.navbar-offline-text{color:#b9cfe3;padding:13px 15px;font-size:13px;display:block;line-height:20px}.tg_page_head .navbar-menu .navbar-nav.navbar-right{margin-right:0}.tg_page_head .navbar-inverse .navbar-nav>li>a{padding-top:13px;padding-bottom:13px;color:#b9cfe3;font-size:13px}.tg_page_head .navbar-inverse .navbar-nav>li>a:hover{color:#FFF}.tg_page_head .navbar-inverse .navbar-toggle{outline:0;border:0}.tg_page_head .navbar-inverse .navbar-collapse,.tg_page_head .navbar-inverse .navbar-form{border-color:#497495}.tg_page_head .navbar-inverse .navbar-toggle:active,.tg_page_head .navbar-inverse .navbar-toggle:focus,.tg_page_head .navbar-inverse .navbar-toggle:hover{background-color:rgba(255,255,255,.1)}.tg_progress{height:12px;margin:0;padding:0;background:rgba(255,255,255,.4);border:5px solid rgba(0,0,0,.5);border-radius:3px}.tg_progress .progress-bar{height:5px;line-height:2px;background:rgba(255,255,255,.9);border-radius:0;overflow:hidden}.dropdown-menu{border-radius:2px;padding:0;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.175);box-shadow:0 1px 3px rgba(0,0,0,.175)}.dropdown-menu>li>a{padding:5px 14px;font-size:13px}.modal-backdrop{background:rgba(26,26,26,.7);opacity:1!important}.modal-backdrop.fade,.modal.fade,.modal.fade .modal-dialog{-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.modal{overflow-y:auto;padding:10px}.modal-dialog{margin:0 auto}.modal-content{border:0;border-radius:0;-webkit-box-shadow:0 1px 10px rgba(0,0,0,.15);box-shadow:0 1px 10px rgba(0,0,0,.15)}.text-invisible{visibility:hidden}.modal-header{padding:12px 0 4px 3px;border-bottom:2px solid #E1E1E1;margin:0 18px}.modal-title{color:#222;font-weight:700;font-size:17px;line-height:1.4}.modal-close-link,.modal-head-link{font-size:12px;line-height:1.4;float:right;padding:0 2px;margin:6px 2px 0 0}.modal-close-link:hover,.modal-head-link:hover{text-decoration:none}.modal-head-link{margin-right:15px}.modal-close-button{position:absolute;z-index:1051;top:0;right:0;width:54px;height:54px}.modal-close-button i{display:inline-block;background:url(../img/icons/IconsetW.png) -15px -320px/42px 1171px no-repeat;width:12px;height:12px;margin:21px;opacity:.8}.is_1x .modal-close-button i{background-image:url(../img/icons/IconsetW_1x.png)}.modal-close-button:hover i{opacity:1}.modal-body{padding:14px}.modal_simple_header{font-size:14px;margin:0 0 10px;text-align:center;font-weight:700}.modal_simple_form{max-width:230px;margin:0 auto;padding:70px 0 50px}.modal_simple_form h4{font-size:16px;margin-bottom:20px;text-align:center}.modal_simple_form .form-group{margin-bottom:13px}.modal_simple_form_description{color:#777;line-height:160%;margin:10px 0 0;text-align:justify}.modal_section_header{font-size:12px;line-height:14px;color:#999;background:#f5f5f5;padding:7px 14px;margin:0}.modal_section_body{padding:14px}.modal_section_body dl,.modal_section_body p{margin:5px 0}.modal_section:last-child .modal_section_body{padding-bottom:8px}.modal-footer{padding:0 14px 13px;margin:0;border-top:0}a.tg_checkbox{color:#000;display:block;line-height:18px;margin:8px 0}a.tg_checkbox:hover{text-decoration:none}.tg_checkbox span.icon-checkbox-outer{display:inline-block;background:#c7c7c7;width:33px;height:18px;line-height:18px;vertical-align:middle;padding:4px;border-radius:10px;overflow:hidden;margin:0 9px 0 0;-webkit-transition:background ease-in-out .1s;transition:background ease-in-out .1s}.tg_checkbox.tg_checkbox_on span.icon-checkbox-outer{background-color:#5c8db3}.tg_checkbox i.icon-checkbox-inner{display:inline-block;background:#fff;width:10px;height:10px;border-radius:5px;overflow:hidden;float:left;margin-left:0;-webkit-transition:margin-left ease .1s;transition:margin-left ease .1s}.tg_checkbox.tg_checkbox_on i.icon-checkbox-inner{margin-left:15px}.tg_checkbox_label{display:inline-block;line-height:18px;vertical-align:middle}a.tg_checkbox:hover span.icon-checkbox-outer{background:#bdbdbd}a.tg_checkbox_on:hover span.icon-checkbox-outer{background:#5785aa}a.tg_checkbox:hover i.icon-checkbox-inner{background:#f2f2f2}a.tg_radio{color:#000;display:block;line-height:18px;margin:5px 0}a.tg_radio:hover{text-decoration:none}.tg_radio i.icon-radio{display:inline-block;background:#FFF;width:20px;height:20px;line-height:20px;vertical-align:middle;border-radius:10px;border:1px solid #ccc;overflow:hidden;margin:0 9px 0 14px;-webkit-transition:border-color ease-in-out .1s;transition:border-color ease-in-out .1s}.tg_radio.tg_radio_on i.icon-radio{border:6px solid #5c8db3}.tg_radio_label{display:inline-block;line-height:20px;vertical-align:middle}a.tg_radio:hover i.icon-radio{background:#f2f2f2;border-color:#ccc}a.tg_radio_on:hover i.icon-radio{border-color:#5785aa}.tg_range_wrap{line-height:18px}.tg_slider_wrap{position:relative;cursor:pointer;line-height:18px;height:18px}.tg_slider_track{position:absolute;background:#c7c7c7;height:3px;margin:8px 0;border-radius:2px;width:100%;z-index:2}.tg_slider_thumb{position:absolute;border:0;background:#568cb5;width:12px;height:12px;border-radius:6px;margin-top:4px;z-index:3}.tg_form_group{padding:6px 0}.tg_form_group:first-child{padding-top:0}.tg_form_group:last-child{padding-bottom:0}.img_fullsize_with_progress_wrap{position:relative;margin:0 auto}.img_fullsize_progress_overlay{position:absolute;width:100%;height:100%}.img_fullsize_progress_wrap{position:relative}.img_fullsize_progress{position:absolute;bottom:0;left:0;width:100%;height:25px;margin:0;background:rgba(0,0,0,.5);border:0;border-radius:0;padding:10px}.welcome_form{background:#FFF;padding:45px 0 63px;border-bottom:1px solid #e9e9e9}.welcome_logo{background:url(../img/decentralization.png) 0 0/160px 160px no-repeat;display:block;width:160px;height:160px;margin:0 auto}img.welcome_logo{background:0 0}.welcome_header{text-align:center;font-size:24px;font-weight:400;margin:15px 0 20px}.welcome_text{text-align:center;margin-bottom:26px;font-size:14px;line-height:14px;padding:0 15px}.welcome_btn_wrap{max-width:219px;margin:0 auto}.welcome_footer{background:#f8f8f8;padding:20px 0 65px}.welcome_cards_wrap{max-width:870px;margin:0 auto}.welcome_footer_card_wrap{width:260px;margin:41px auto 0;text-align:center}.welcome_footer_card{background:url(../img/WebIntro2_1x.png) 0 0/217px 178px no-repeat;width:219px;height:180px;border:1px solid #e0e4e9;margin:0 auto 24px}.welcome_footer_card_messaging{background-image:url(../img/WebIntro1.png)}.is_1x .welcome_footer_card_messaging{background-image:url(../img/WebIntro1_1x.png)}.welcome_footer_card_filesharing{background-image:url(../img/WebIntro2.png)}.is_1x .welcome_footer_card_filesharing{background-image:url(../img/WebIntro2_1x.png)}.welcome_footer_card_powerful{background-image:url(../img/WebIntro3.png)}.is_1x .welcome_footer_card_powerful{background-image:url(../img/WebIntro3_1x.png)}.welcome_footer_card_wrap h4{font-size:18px}.login_form_wrap{max-width:310px;padding:25px;background:#FFF;margin:200px auto 0;border-radius:1px;overflow:hidden;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.1);-moz-box-shadow:0 1px 2px rgba(0,0,0,.1);box-shadow:0 1px 2px rgba(0,0,0,.1)}.login_form_head{color:#222;margin-top:0;margin-bottom:7px;text-align:center}.login_edit_phone{text-align:center;margin-bottom:3px}.login_form_lead{color:#959595;text-align:center;margin:15px 0 30px;font-size:13px}.login_form_messaging{text-align:center;color:#959595;font-size:13px;margin-top:20px}.login_country_selector{cursor:pointer;background:#f7f7f7;height:34px;padding:10px 12px 10px 13px;line-height:14px;margin-bottom:12px}.login_country_selector:hover{background:#ededed}.login_country_selector .icon-caret{margin-top:4px;height:5px;width:10px;background-position:-16px -653px}.login_phone_country,.login_phone_number{float:left;display:inline-block;font-size:12px}.login_phone_country{width:53px;margin-right:9px;padding:6px 3px;text-align:center}.login_phone_number{width:198px}.login_phone_code{text-align:center}.login_first_name_wrap{margin-bottom:11px}.im_dialogs_empty_wrap{margin:60px 50px;text-align:center}.im_dialogs_import_phonebook{margin-top:10px}.im_dialogs_panel{padding:12px 12px 6px;position:relative}.im_dialogs_search{position:relative}.im_page_split .im_dialogs_search{margin-right:48px}.im_dialogs_search_field{font-size:12px;line-height:normal;background:url(../img/icons/IconsetW.png) -6px -205px/42px 1171px no-repeat #F2F2F2;border:1px solid #F2F2F2;border-radius:3px;padding:6px 20px 6px 30px;margin:0 0 6px}.im_dialogs_modal_col_wrap .im_dialogs_search_field{background-color:#FFF;border-color:#d9dbde}.is_1x .im_dialogs_search_field{background-image:url(../img/icons/IconsetW_1x.png)}.im_dialogs_search_field:active,.im_dialogs_search_field:focus{background-color:#FFF}.im_dialogs_search_clear{position:absolute;right:9px;margin-top:-30px;color:#999;width:13px;height:13px;vertical-align:text-top;background:url(../img/icons/IconsetW.png) -15px -192px/42px 1171px no-repeat;opacity:.6}.is_1x .im_dialogs_search_clear{background-image:url(../img/icons/IconsetW_1x.png)}.im_dialogs_search_clear:hover{opacity:1}.im_dialogs_tabs_wrap{display:none}.im_dialogs_tabs{padding:4px 0;position:relative}.im_dialogs_tab{color:#8c8c8c;background:#f2f2f2;height:30px;text-align:center;overflow:hidden;width:50%;float:left;padding:7px 0}.im_dialogs_tab:active,.im_dialogs_tab:hover{color:#8c8c8c;text-decoration:none}.im_dialogs_tab.active{color:#FFF;background:#6490b1}.im_dialogs_tab:first-child{border-radius:2px 0 0 2px}.im_dialogs_tab:last-child{border-radius:0 2px 2px 0}.im_dialogs_panel_dropdown{position:absolute;right:12px}.im_dialogs_panel_dropdown .dropdown-menu{right:auto;left:0;margin-top:8px}.im_dialogs_scrollable_wrap{outline:0!important}.im_dialogs_scrollable_wrap .im_dialog_wrap{margin-top:0}.im_dialogs_scrollable_wrap a.im_dialog{clear:both;overflow:hidden;color:#000;padding:8px 9px;border-radius:0}.im_dialogs_scrollable_wrap a.im_dialog:hover,.im_dialogs_scrollable_wrap a.im_dialog_selected{border-radius:2px;background:#f2f6fa}.im_dialogs_scrollable_wrap .active a.im_dialog{border-radius:2px;background-color:#6490b1}.im_dialogs_scrollable_wrap .active a.im_dialog:hover,.im_dialogs_scrollable_wrap .active a.im_dialog_selected{background-color:#6490b1}.im_dialogs_scrollable_wrap a.im_dialog .glyphicon,.im_dialogs_scrollable_wrap a.im_dialog .icon{display:none}.im_dialog_message_wrap{overflow:hidden;word-wrap:break-word}.im_dialog_chat_from_wrap,.im_dialog_message_media,.im_dialog_message_service{color:#3a6d99}.im_dialog_message_text{color:gray}a.im_dialog:hover .im_dialog_message_text,a.im_dialog_selected .im_dialog_message_text{color:#698192}.active a.im_dialog .im_dialog_chat_from_wrap,.active a.im_dialog .im_dialog_message,.active a.im_dialog .im_dialog_message_media,.active a.im_dialog .im_dialog_message_service,.active a.im_dialog .im_dialog_message_text{color:#FFF}.im_dialog_photo{width:40px;height:40px;border-radius:2px;overflow:hidden;margin:0 10px 0 0}.im_dialog_peer{color:#222;font-weight:700;margin-top:2px;margin-bottom:2px}.active .im_dialog_peer{color:#FFF}.im_dialog_badge{background:#6ec26d;border-radius:2px;font-size:10px;padding:3px 4px;margin-top:4px}.active .im_dialog_badge{color:#428bca;background-color:#fff}.im_dialogs_modal_col .im_dialog_badge{display:none}.im_dialog_unread{background:#c1d6e5;display:inline-block;float:right;width:8px;height:8px;border-radius:5px;overflow:hidden;margin:10px 0 0}a.im_dialog:hover .im_dialog_unread,a.im_dialog_selected .im_dialog_unread{background:#a3c0d4}.active .im_dialog_unread{background-color:#a4c4dd}.im_dialog_date{color:#b3b3b3;font-size:.85em}a.im_dialog:hover .im_dialog_date,a.im_dialog_selected .im_dialog_date{color:#91a6ba}.active .im_dialog_date,.active a.im_dialog:hover .im_dialog_date,.active a.im_dialog_selected .im_dialog_date{color:#b8d1e4}.im_dialog_service{font-style:italic;color:#999}.im_dialog_message,.im_dialog_peer{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.im_dialog_message{color:gray}.icon-caret{width:8px;height:4px;display:inline-block;vertical-align:text-top;margin-top:7px;margin-left:6px;background:url(../img/icons/IconsetW.png) -17px -444px/42px 1171px no-repeat}.is_1x .icon-caret{background-image:url(../img/icons/IconsetW_1x.png)}.im_dialogs_empty_header{font-size:15px;color:gray;margin:0 0 15px}.im_dialogs_empty_lead{color:gray;margin-bottom:18px}.im_history_scrollable_wrap{outline:0!important;-webkit-user-select:text;position:relative}.im_history_to_bottom{overflow:hidden}.im_history_to_bottom .im_history_scrollable{position:absolute;bottom:0;width:100%}.im_history{padding:20px 0 0;position:relative}.im_history_typing_wrap{line-height:18px;width:100%;height:49px;padding:13px 0 18px;overflow:hidden;-webkit-user-select:none}.im_history_typing{font-size:11px;color:#999;max-width:526px;margin:0 auto;padding:0 77px}.im_history_typing a.im_history_typing_author{color:#999;font-weight:700}.im_message_unread_split{background:#f4f4f4;color:#777;text-align:center;padding:4px 10px;margin:10px 0}.im_message_author,.im_message_fwd_author{color:#3a6d99;font-weight:700}.non_osx .im_message_author,.non_osx .im_message_fwd_author{font-size:12px}.im_message_contact_photo,.im_message_from_photo,.im_message_fwd_photo{width:34px;height:34px;border-radius:2px;overflow:hidden}a.im_message_contact_photo,a.im_message_from_photo{margin:1px 12px 0 0}.non_osx .im_message_contact_name{font-size:12px}.im_message_contact_name{font-weight:700}.im_message_contact_name,.im_message_contact_phone{white-space:nowrap}a.im_message_photo_thumb,a.im_message_video_thumb{display:block;overflow:hidden;border-radius:2px}img.im_message_photo_thumb,img.im_message_video_thumb{overflow:hidden;border-radius:2px}.im_message_video,a.im_message_photo_thumb{margin-top:5px}a.im_message_video_thumb{float:left;margin-right:15px;position:relative}img.im_message_video_thumb{-webkit-filter:blur(2px);-moz-filter:blur(2px);-o-filter:blur(2px);-ms-filter:blur(2px);filter:blur(2px);filter:progid:DXImageTransform.Microsoft.Blur(PixelRadius='2')}div.im_message_video_thumb{position:relative}.im_message_video_duration{background:rgba(0,0,0,.4);color:#FFF;position:absolute;bottom:4px;right:4px;padding:2px 6px;font-size:11px;line-height:15px;border-radius:2px;overflow:hidden;z-index:1}.icon-videoplay{position:absolute;display:inline-block;top:50%;left:50%;margin-left:-21px;margin-top:-21px;width:42px;height:42px;background:url(../img/icons/IconsetW.png) 0 -590px/42px 1171px no-repeat;z-index:1}.is_1x .icon-videoplay{background-image:url(../img/icons/IconsetW_1x.png)}.im_message_geopoint{border-radius:2px;margin-top:5px;overflow:hidden;display:block;position:relative;width:200px;height:100px}.icon-geo-point{position:absolute;display:inline-block;top:50%;left:50%;margin-left:-8px;margin-top:-10px;width:15px;height:19px;background:url(../img/icons/IconsetW.png) -14px -389px/42px 1171px no-repeat}.is_1x .icon-geo-point{background-image:url(../img/icons/IconsetW_1x.png)}.im_message_media_embed{position:relative;height:0;overflow:hidden;margin-top:5px}.im_message_video_embed{padding-bottom:56.25%}.im_message_insta_embed{padding-bottom:122%}.im_message_vine_embed{padding-bottom:100%}.im_message_soundcloud_embed{padding-bottom:56.25%}.im_message_media_embed iframe,.im_message_media_embed webview{position:absolute;top:0;left:0;width:100%;height:100%}.im_message_twitter_embed>blockquote{visibility:hidden}.im_message_gif_wrap{position:relative}.im_message_gif_btn{color:#FFF;font-style:normal;font-weight:700;position:absolute;display:inline-block;top:50%;left:50%;margin-left:-22px;margin-top:-21px;border:2px solid #FFF;border-radius:20px;padding:10px;z-index:1}.im_message_audio,.im_message_document,.im_message_upload_file,.im_message_video{margin-top:3px;width:317px}.im_message_audio{margin-top:3px}.im_message_file_button{display:block;background:rgba(218,228,234,.5);float:left;width:42px;height:42px;border-radius:0;margin-right:10px}.im_message_file_button_icon{display:inline-block;line-height:0;background:url(../img/icons/IconsetW.png) -15px -953px/42px 1171px no-repeat;width:12px;height:20px;margin:11px 15px}.is_1x .im_message_file_button_icon{background-image:url(../img/icons/IconsetW_1x.png)}.im_message_file_button_dl_doc .im_message_file_button_icon{background-position:-13px -983px;width:16px;height:18px;margin:12px 13px}.im_message_file_button_dl_audio{background:#6490b1;border-radius:2px}.im_message_file_button_dl_audio .im_message_file_button_icon{display:block;width:15px;height:18px;background:url(../img/icons/IconsetW.png) -15px -897px/42px 1171px no-repeat;margin:12px 13.5px}.is_1x .im_message_file_button_dl_audio .im_message_file_button_icon{background-image:url(../img/icons/IconsetW_1x.png);background-position:-15px -899px}.im_message_file_button_dl_audio .audio_player_btn_icon_pause,.is_1x .im_message_file_button_dl_audio .audio_player_btn_icon_pause{width:12px;height:16px;background-position:-15px -927px;margin:13px 15px}.im_history_selectable .im_message_outer_wrap:hover .icon-document,.im_message_selected .icon-document{background-color:#dae6f0;background-position:-2px -542px}.im_message_document_link_disabled{cursor:default;pointer-events:none}.im_message_document_info{float:left}.im_message_document_thumb_wrap{border-radius:2px;overflow:hidden;background:#f2f2f2;width:100px;min-height:38px;max-height:100px;margin-right:10px;text-align:center;float:left;line-height:0}img.im_message_document_thumb{max-width:100px;max-height:100px;vertical-align:middle}.im_message_document_name_wrap{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;width:265px;padding:0 0 1px}.im_message_document_actions{width:265px}.im_message_document_name{color:#3a6d99;display:inline-block;font-weight:700;max-width:170px;overflow:hidden;vertical-align:text-top;white-space:nowrap;text-overflow:ellipsis}.im_message_document_size{color:#999;padding-left:2px;vertical-align:text-top}.audio_player_actions a,.im_message_document_actions a{margin-right:10px}.audio_player_title_wrap{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:1px 0;line-height:16px;height:19px;width:200px}.audio_player_title{display:inline-block;font-weight:700;max-width:85px;overflow:hidden;vertical-align:text-top;white-space:nowrap;text-overflow:ellipsis}.audio_player_meta{overflow:hidden;vertical-align:text-top;display:inline-block}.audio_player_duration,.audio_player_size{color:#999;padding-left:2px}.audio_player_actions{margin-top:3px}.audio_player_seek_slider{float:left;margin-right:15px;width:200px}.audio_player_seek_slider .tg_slider_wrap{height:16px;line-height:16px}.audio_player_seek_slider .tg_slider_thumb{background:#6490b1;width:4px;height:16px;line-height:16px;margin-top:0;border-radius:0}.audio_player_seek_slider .tg_slider_track{margin:6px 0;background:rgba(218,228,234,.5);height:4px;border-radius:0}.audio_player_seek_slider .tg_slider_track_fill{background:#6490b1;height:4px;width:0}.audio_player_volume_slider{width:50px;float:left}.audio_player_volume_slider .tg_slider_wrap{height:16px;line-height:16px}.audio_player_volume_slider .tg_slider_thumb{display:none;background:#6490b1;width:4px;height:8px;line-height:16px;margin-top:4px;border-radius:0}.audio_player_volume_slider:hover .tg_slider_thumb{display:block}.audio_player_volume_slider .tg_slider_track{margin:6px 0;background:rgba(218,228,234,.5);height:4px}.audio_player_volume_slider .tg_slider_track_fill{background:#6490b1;height:4px;width:0}.audio_player_progress_wrap{overflow:hidden}.audio_player_progress_wrap .tg_down_progress{margin-top:5px}.im_message_download_progress_wrap,.im_message_upload_progress_wrap{margin-top:5px;width:200px}.im_message_document_thumbed .im_message_document_actions,.im_message_document_thumbed .im_message_document_name_wrap,.im_message_document_thumbed .im_message_download_progress_wrap,.im_message_document_thumbed .im_message_upload_progress_wrap{width:207px}.im_message_document_thumbed .im_message_document_name{max-width:110px}.im_message_video .im_message_document_actions,.im_message_video .im_message_document_name_wrap,.im_message_video .im_message_download_progress_wrap{width:152px}.im_message_video .im_message_document_name_wrap{margin-top:5px}.im_message_cancelable_progress_wrap,.im_message_playback_progress_wrap{margin-top:4px}.im_message_media_progress_cancel{margin-left:15px;line-height:100%;width:50px;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tg_down_progress,.tg_up_progress{height:4px;margin:0;padding:0;background:rgba(218,228,234,.5);border:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.tg_down_progress .progress-bar,.tg_up_progress .progress-bar{height:4px;line-height:4px;background:#6B9ABD;border-radius:0;overflow:hidden;-webkit-box-shadow:none;box-shadow:none}.im_service_message_wrap{text-align:center}.im_service_message{display:inline-block;min-width:10px;padding:4px 7px;line-height:1.4;color:#999;text-align:center;border-radius:10px;margin:5px 0}.im_service_message_photo_thumb{display:block;margin:0 auto}.im_content_message_wrap{margin:8px 0 8px 16px}.im_message_date,.im_message_fwd_date{color:#adadad;font-size:.85em;padding:0 0 20px 10px}div.im_message_author,div.im_message_body{display:block;overflow:hidden}a.im_message_fwd_photo{position:absolute;margin-top:1px}.im_message_fwd_date{padding:0}.im_message_text{word-wrap:break-word}span.emoji{-moz-box-orient:vertical;display:inline-block;vertical-align:baseline;height:18px;width:18px;background-repeat:no-repeat;text-indent:-9999px}.emoji-spritesheet-0{background-size:486px 126px;background-image:url(../img/emojisprite_0.png)}.emoji-spritesheet-1{background-size:522px 72px;background-image:url(../img/emojisprite_1.png)}.emoji-spritesheet-2{background-size:594px 126px;background-image:url(../img/emojisprite_2.png)}.emoji-spritesheet-3{background-size:612px 54px;background-image:url(../img/emojisprite_3.png)}.emoji-spritesheet-4{background-size:612px 126px;background-image:url(../img/emojisprite_4.png)}.im_history_empty,.im_history_not_selected{visibility:hidden;text-align:center;color:#999;font-size:16px;line-height:18px;padding:1px 50px;margin:0}.im_history_empty.vertical-aligned,.im_history_not_selected.vertical-aligned{visibility:visible}.im_history_to_bottom .im_history_empty,.im_history_to_bottom .im_history_not_selected{display:none}.im_send_panel_wrap{margin:0 auto;padding:10px 15px 22px}.im_send_form_wrap{position:relative}.im_send_form{margin:0 auto;position:absolute;bottom:0}.im_send_dropbox_wrap{background:#FFF;display:none;padding:15px 10px;margin:1px;border-radius:4px;overflow:hidden;text-align:center;color:#999;position:absolute}textarea.im_message_field{font-size:12px;margin-bottom:10px;padding:6px;min-height:50px;height:50px;resize:none}.im_attach{cursor:pointer;display:block;overflow:hidden;position:relative;padding:0 2px;width:23px;height:24px;margin-top:4px;margin-left:20px}.icon-paperclip{display:inline-block;width:19px;height:23px;vertical-align:text-top;background:url(../img/icons/IconsetW.png) -12px -68px/42px 1171px no-repeat;opacity:.8}.is_1x .icon-paperclip{background-image:url(../img/icons/IconsetW_1x.png)}.im_attach:hover .icon-paperclip{opacity:1}.im_attach:active .icon-paperclip{background-position:-12px -100px;opacity:1}.im_emoji_btn{cursor:pointer;padding:0;width:23px;height:23px;margin-top:4px}.icon-emoji{display:inline-block;width:23px;height:23px;vertical-align:text-top;background:url(../img/icons/IconsetW.png) -10px -4px/42px 1171px no-repeat;opacity:.8}.is_1x .icon-emoji{background-image:url(../img/icons/IconsetW_1x.png)}.im_emoji_btn:hover .icon-emoji{opacity:1}.im_emoji_btn.on .icon-emoji,.im_emoji_btn:active .icon-emoji{background-position:-10px -36px;opacity:1}.im_attach_input,.im_media_attach_input{cursor:pointer;font-size:72px!important;opacity:.01;position:absolute;z-index:100;margin:0;padding:0;top:0;right:0}.im_media_attach{cursor:pointer;display:block;overflow:hidden;position:relative;padding:0;width:24px;height:22px;margin-top:5px;margin-left:20px}.icon-camera{display:inline-block;width:25px;height:21px;vertical-align:text-top;background:url(../img/icons/IconsetW.png) -9px -132px/42px 1171px no-repeat;opacity:.8}.is_1x .icon-camera{background-image:url(../img/icons/IconsetW_1x.png)}.im_media_attach:hover .icon-camera{opacity:1}.im_media_attach:active .icon-camera{background-position:-9px -162px;opacity:1}.icon-online{background:#6ec26d;border:1px solid #FFF;display:block;width:11px;height:11px;border-radius:6px;overflow:hidden;position:absolute;margin-top:-7px;margin-left:33px}.img_fullsize_wrap,a.img_fullsize{display:block;text-align:center}img.img_fullsize{margin:0 auto}.document_modal_image_wrap{overflow:auto}.document_fullsize_wrap{display:none;cursor:zoom-in;text-align:center}.document_fullsize_zoomed{cursor:zoom-out}.document_fullsize_img{-webkit-user-select:none}.document_fullsize_zoomed .document_fullsize_img{-webkit-user-select:none;image-rendering:optimizeSpeed;image-rendering:-moz-crisp-edges;image-rendering:-o-crisp-edges;image-rendering:-webkit-optimize-contrast;image-rendering:optimize-contrast;-ms-interpolation-mode:nearest-neighbor}.video_full_player video{background:#000}.media_modal_info{color:#999;margin:20px 0 0}.media_modal_actions{margin-top:20px}.media_modal_action_link{margin-left:15px}.media_modal_author{color:inherit;font-weight:700}.media_modal_author:hover{color:inherit}.non_osx .media_modal_author{font-size:12px}.emoji-wysiwyg-editor:empty:before{content:attr(placeholder);color:#9aa2ab}.emoji-wysiwyg-editor:active:before,.emoji-wysiwyg-editor:focus:before{content:none}.emoji-wysiwyg-editor{box-sizing:content-box;-moz-box-sizing:content-box;font-size:12px;margin-bottom:10px;padding:6px;min-height:36px;height:auto;width:auto;max-height:284px;overflow:auto;line-height:17px;border:1px solid #d2dbe3;border-radius:2px;-webkit-box-shadow:none;box-shadow:none;-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;-webkit-user-select:text;word-wrap:break-word}.emoji-wysiwyg-editor img{width:20px;height:20px;vertical-align:middle;margin:-3px 0 0}.emoji-menu{position:absolute;z-index:999;width:220px;margin-left:-107px;margin-top:-252px;border:1px solid #dfdfdf;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;overflow:hidden;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.1);-moz-box-shadow:0 1px 1px rgba(0,0,0,.1);box-shadow:0 1px 1px rgba(0,0,0,.1)}.emoji-items-wrap1{background:#FFF;padding:5px 2px 5px 5px}.emoji-items-wrap1 .emoji-menu-tabs{width:100%;margin-bottom:8px;margin-top:3px}.emoji-items-wrap1 .emoji-menu-tabs td{text-align:center;color:#fff;line-height:0}.emoji-menu-tabs .emoji-menu-tab{display:inline-block;width:24px;height:29px;background:url(../img/icons/IconsetSmiles.png) 0 0/42px 350px no-repeat}.is_1x .emoji-menu-tabs .emoji-menu-tab{background-image:url(../img/icons/IconsetSmiles_1x.png)}.emoji-menu-tabs .icon-recent{background-position:-9px -306px}.emoji-menu-tabs .icon-recent-selected{background-position:-9px -277px}.emoji-menu-tabs .icon-smile{background-position:-9px -34px}.emoji-menu-tabs .icon-smile-selected{background-position:-9px -5px}.emoji-menu-tabs .icon-flower{background-position:-9px -145px}.emoji-menu-tabs .icon-flower-selected{background-position:-9px -118px}.emoji-menu-tabs .icon-bell{background-position:-9px -89px}.emoji-menu-tabs .icon-bell-selected{background-position:-9px -61px}.emoji-menu-tabs .icon-car{background-position:-9px -196px}.emoji-menu-tabs .icon-car-selected{background-position:-9px -170px}.emoji-menu-tabs .icon-grid{background-position:-9px -248px}.emoji-menu-tabs .icon-grid-selected{background-position:-9px -222px}.emoji-menu-tabs .icon-bell,.emoji-menu-tabs .icon-car,.emoji-menu-tabs .icon-flower,.emoji-menu-tabs .icon-grid,.emoji-menu-tabs .icon-smile{opacity:.7}.emoji-menu-tabs .icon-bell:hover,.emoji-menu-tabs .icon-car:hover,.emoji-menu-tabs .icon-flower:hover,.emoji-menu-tabs .icon-grid:hover,.emoji-menu-tabs .icon-smile:hover{opacity:1}.emoji-menu .emoji-items-wrap{position:relative;height:174px}.emoji-menu .emoji-items{padding-right:8px;outline:0!important}.emoji-menu img{width:20px;height:20px;vertical-align:middle;border:0}.emoji-menu .emoji-items a{margin:-1px 0 0 -1px;padding:5px;display:block;float:left;border-radius:2px}.emoji-menu .emoji-items a:hover{background-color:#edf2f5}.emoji-menu:after{content:' ';display:block;clear:left}.emoji-menu a .label{display:none}.error_modal_window .modal-dialog{max-width:350px}.error_modal_description{text-align:center;padding:20px;font-size:14px;line-height:160%}.error_modal_details textarea{display:block;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;font-size:10px;line-height:100%;white-space:pre-wrap;padding:4px;margin:10px 0;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px;width:100%;text-align:left}.error_modal_details div{padding:0 20px;font-size:13px;text-align:center}.error_modal_details div a{color:#999}.confirm_modal_window .modal-dialog{max-width:400px}.confirm_modal_description{text-align:center;padding:20px;font-size:14px;line-height:160%;margin-top:40px}.confirm_phone_number{font-weight:700;padding:15px 10px 0;text-align:center}.document_modal_window,.photo_modal_window,.video_modal_window{display:block}.photo_modal_error{color:#999;position:absolute;width:100%;top:50%;margin-top:-20px;padding:0 20px;text-align:center;font-size:1.4em;line-height:160%}.video_full_error{border-radius:10px;overflow:hidden;background:rgba(0,0,0,.6);color:#FFF;position:absolute;top:50%;margin:-40px 10px 0;padding:10px;text-align:center;font-size:1.4em;line-height:160%}.settings_modal_wrap .im_attach_input{z-index:999}.settings_modal_username_link,.settings_modal_username_link:hover{color:inherit}.settings_external_service{line-height:0;display:inline-block;padding:7px 9px}.settings_about_section_body{padding-right:0}.settings_about_section_body p{margin-top:7px;margin-bottom:3px}.icon-github{display:inline-block;width:59px;height:18px;background:url(../img/icons/AboutLogos_2x.png) 0 -5px/60px 136px no-repeat}a:hover .icon-github{background-position:0 -43px}.icon-twitter{display:inline-block;width:20px;height:15px;margin-top:1px;background:url(../img/icons/AboutLogos_2x.png) 0 -81px/60px 136px no-repeat}a:hover .icon-twitter{background-position:0 -116px}.is_1x .icon-github,.is_1x .icon-twitter{background-image:url(../img/icons/AboutLogos_1x.png)}.contacts_modal_search{padding:0 0 14px;position:relative}.contacts_modal_search_field{font-size:12px;line-height:normal;background:url(../img/icons/IconsetW.png) -6px -205px/42px 1171px no-repeat;border:1px solid #d9dbde;border-radius:3px;padding:6px 15px 6px 30px;margin:0}.is_1x .contacts_modal_search_field{background-image:url(../img/icons/IconsetW_1x.png)}.contacts_modal_search_clear{position:absolute;right:9px;margin-top:-24px;color:#999;width:13px;height:13px;vertical-align:text-top;background:url(../img/icons/IconsetW.png) -15px -192px/42px 1171px no-repeat;opacity:.6}.is_1x .contacts_modal_search_clear{background-image:url(../img/icons/IconsetW_1x.png)}.contacts_modal_search_clear:hover{opacity:1}.contacts_scrollable_wrap{outline:0!important}.contacts_modal_contacts_empty{visibility:hidden;text-align:center;color:#999;font-size:16px;line-height:18px;padding:1px 50px;margin:0}.contacts_modal_contacts_empty.vertical-aligned{visibility:visible}.contacts_modal_members_list .contacts_modal_contact_wrap{margin-top:0}.contacts_modal_members_list a.contacts_modal_contact{clear:both;overflow:hidden;color:#000;padding:8px 9px;border-radius:0}.contacts_modal_members_list .active a.contacts_modal_contact,.contacts_modal_members_list .active a.contacts_modal_contact:hover,.contacts_modal_members_list a.contacts_modal_contact:hover{border-radius:2px;background:#f2f6fa}.contacts_modal_contact_name{display:block;color:#3C6E97;font-weight:700;margin:1px 0 2px}.non_osx .contacts_modal_contact_name{font-size:12px}.contacts_modal_contact_photo{width:40px;height:40px;margin-right:10px;overflow:hidden;border-radius:2px}.contacts_modal_contact_status{color:#999}.contacts_modal_members_list .active a.contacts_modal_contact .contacts_modal_contact_status,a.contacts_modal_contact:hover .contacts_modal_contact_status{color:#91a6ba}.chat_modal_participant_wrap{padding:8px 0;border-top:1px solid #F0F0F0}.chat_modal_participant_wrap:first-child{border-top:0}.chat_modal_participant_kick{padding:11px 0;display:block}.chat_modal_participant_name{display:block;color:#3C6E97;font-weight:700;margin:1px 0 2px}.non_osx .chat_modal_participant_name{font-size:12px}.chat_modal_participant_status{color:#999}a.chat_modal_participant_photo{width:40px;height:40px;margin-right:10px;border-radius:2px;overflow:hidden}img.chat_modal_participant_photo{width:40px;height:40px}.chat_modal_members_forbidden{color:#999}.icon-contact-tick{position:absolute;right:10px;top:17px;display:inline-block;width:25px;height:25px;background:url(../img/icons/IconsetW.png) -9px -516px/42px 1171px no-repeat;opacity:.5}.is_1x .icon-contact-tick{background-image:url(../img/icons/IconsetW_1x.png)}.contacts_modal_members_list .contacts_modal_contact_wrap:hover .icon-contact-tick{background-position:-9px -481px;opacity:.5}.contacts_modal_members_list .contacts_modal_contact_wrap.active .icon-contact-tick{background-position:-9px -481px;opacity:1}.contacts_modal_members_list .disabled{pointer-events:none}.contacts_modal_members_list .disabled .icon-contact-tick{display:none}.contacts_modal_panel{text-align:center}.group_edit_modal_window .modal-dialog{max-width:506px}.im_edit_panel_wrap{padding:10px 0 34px;margin:0 24px 0 12px}.im_edit_panel_border{display:block;margin:0 0 34px 3px;border-bottom:1px solid #EEE}.im_panel_to_top .im_edit_panel_wrap{background:#FFF;position:absolute;width:100%}.im_edit_selected_actions{text-align:center}.im_edit_delete_btn,.im_edit_forward_btn{border-radius:2px;padding:5px 17px;font-weight:400;font-size:12px;line-height:18px;margin:6px}.im_edit_panel_title{text-align:center;margin:0;font-size:14px;line-height:34px}.im_message_focus .audio_player_duration,.im_message_focus .audio_player_size,.im_message_focus .im_message_date,.im_message_focus .im_message_document_size,.im_message_focus .im_message_fwd_date{color:#899daf}.icon-select-tick{display:none;width:26px;height:26px;margin:13px 0 0 40px;background:url(../img/icons/IconsetW.png) -9px -516px/42px 1171px no-repeat}.is_1x .icon-select-tick{background-image:url(../img/icons/IconsetW_1x.png)}.user_color_1,.user_color_1:hover{color:#b3577a}.user_color_2,.user_color_2:hover{color:#539e4f}.user_color_3,.user_color_3:hover{color:#ae9661}.user_color_4,.user_color_4:hover{color:#4979a3}.user_color_5,.user_color_5:hover{color:#8365ab}.user_color_6,.user_color_6:hover{color:#b7635d}.user_color_7,.user_color_7:hover{color:#5397b4}.user_color_8,.user_color_8:hover{color:#c07844}.im_dialogs_contacts_wrap h5{color:#999;font-size:13px;margin-left:8px}.img_gif_with_progress_wrap{position:relative;overflow:hidden;float:left;margin-top:3px;max-width:100%}.img_gif_thumb{-webkit-filter:blur(2px);-moz-filter:blur(2px);-o-filter:blur(2px);-ms-filter:blur(2px);filter:blur(2px);filter:progid:DXImageTransform.Microsoft.Blur(PixelRadius='2');margin:-1px;padding:1px;max-width:100%}.img_gif_image{max-width:100%}.img_gif_info_wrap{color:#FFF;font-size:10px;position:absolute;bottom:0;left:0;right:0;padding:4px}.img_gif_label,.img_gif_size{padding:1px 8px;background:rgba(0,0,0,.5);border-radius:3px;overflow:hidden}.img_gif_progress_wrap{position:absolute;bottom:0;left:0;right:0}.img_gif_progress_wrap .tg_progress{background:rgba(0,0,0,.6);border-color:rgba(0,0,0,.6);border-width:8px;height:18px;border-radius:0}.img_gif_progress_wrap .progress-bar{background:#FFF;height:2px}.countries_modal_window .modal-dialog{max-width:392px}.countries_modal_window .modal_simple_header{margin-bottom:12px;font-weight:400}.countries_modal_search{padding:0 0 12px;margin:0 20px;position:relative}.countries_modal_search_field{font-size:12px;line-height:normal;background:url(../img/icons/IconsetW.png) -6px -205px/42px 1171px no-repeat #F2F2F2;border:1px solid #F2F2F2;border-radius:3px;padding:6px 20px 6px 30px;margin:0}.is_1x .countries_modal_search_field{background-image:url(../img/icons/IconsetW_1x.png)}.countries_modal_search_field:active,.countries_modal_search_field:focus{background-color:#FFF}.countries_modal_search_clear{position:absolute;right:9px;margin-top:-23px;color:#999;width:13px;height:13px;vertical-align:text-top;background:url(../img/icons/IconsetW.png) -15px -192px/42px 1171px no-repeat;opacity:.6}.is_1x .countries_modal_search_clear{background-image:url(../img/icons/IconsetW_1x.png)}.countries_modal_search_clear:hover{opacity:1}.countries_modal_wrap .modal-body{padding:14px 0}.countries_scrollable_wrap a.countries_modal_country{clear:both;overflow:hidden;color:#000;padding:8px 26px;font-size:12px;border-radius:0}.countries_scrollable_wrap a.countries_modal_country:hover{border-radius:2px;background:#f2f6fa}.countries_modal_country_code{color:#999}.countries_scrollable_wrap a.countries_modal_country:hover .countries_modal_country_code{color:#698192}.loading_dots{display:inline-block;font-size:1em;line-height:1;padding:.125em 0 .175em .15em}.loading_dots span{border:.125rem solid;border-radius:50%;display:inline-block;height:.2rem;width:.2rem;margin-left:.2rem;-webkit-animation:loading_dots .8s linear infinite;-moz-animation:loading_dots .8s linear infinite;-ms-animation:loading_dots .8s linear infinite;animation:loading_dots .8s linear infinite}.loading_dots span:nth-child(2){-webkit-animation-delay:.2s;-moz-animation-delay:.2s;-ms-animation-delay:.2s;animation-delay:.2s}.loading_dots span:nth-child(3){-webkit-animation-delay:.4s;-moz-animation-delay:.4s;-ms-animation-delay:.4s;animation-delay:.4s}@-webkit-keyframes loading_dots{0%{opacity:0}50%{opacity:1}100%{opacity:0}}@-moz-keyframes loading_dots{0%{opacity:0}50%{opacity:1}100%{opacity:0}}@-ms-keyframes loading_dots{0%{opacity:0}50%{opacity:1}100%{opacity:0}}@keyframes loading_dots{0%{opacity:0}50%{opacity:1}100%{opacity:0}}.changelog_card_wrap{text-align:center;padding:12px 0 18px}.changelog_header{margin-top:15px;font-size:16px}.changelog_card{width:160px;height:160px;display:block;background:url(../img/changelog/card_wecandoit.png) 0 0/160px 160px no-repeat;margin:0 auto}.changelog_card_search{width:133px;height:133px;display:block;background:url(../img/changelog/search.png) 0 0/133px 133px no-repeat;margin:0 auto}.changelog_version_title{color:#9d9479;background:#efede3}.changelog_version_changes_list li{line-height:20px}.bad_browser_wrap{border-radius:4px;border:1px solid #ccc;background:#FFF;max-width:600px;margin:50px auto 0;padding:40px}.bad_browser_wrap h2{margin-top:0}.bad_browser_text{font-size:14px;line-height:160%;margin:25px 0 30px}#nacl_listener{position:absolute;left:-10000px} \ No newline at end of file diff --git a/css/mobile.css b/css/mobile.css index 0d83f0c5..4ed15ea4 100644 --- a/css/mobile.css +++ b/css/mobile.css @@ -387,6 +387,16 @@ html { width: auto; max-width: 250px; } +.im_message_contact { + width: 200px; +} +.im_message_contact_name, +.im_message_contact_phone { + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + max-width: 150px; +} .im_message_document { position: relative; } diff --git a/js/app.js b/js/app.js index 008862f5..ca4ceb0c 100644 --- a/js/app.js +++ b/js/app.js @@ -15,6 +15,6 @@ return(4294967295^i)>>>0}function i(){}function a(e){var t,n,i,a,o,r,s,l,c,d=e.l }this.offset!=n+e.bytes&&(console.warn(dT(),"set offset",this.offset,n,e.bytes),this.offset=n+e.bytes)},mt_rpc_result:function(e,n){e.req_msg_id=this.fetchLong(n+"[req_msg_id]");var i=t.sentMessages[e.req_msg_id],a=i&&i.resultType||"Object";e.result=this.fetchObject(a,n+"[result]")}}},c=new TLDeserialization(n,a),d=c.fetchObject("","INPUT");return{response:d,messageID:r,sessionID:i,seqNo:s}})})},u.prototype.applyServerSalt=function(e){var t=longToBytes(e),n={};return n["dc"+this.dcID+"_server_salt"]=bytesToHex(t),i.set(n),this.serverSalt=t,!0},u.prototype.sheduleRequest=function(e){this.offline&&this.checkConnection("forced shedule");var t=tsNow()+e;return e&&this.nextReq&&this.nextReq<=t?!1:(l.cancel(this.nextReqPromise),e>0?this.nextReqPromise=l(this.performSheduledRequest.bind(this),e||0):setZeroTimeout(this.performSheduledRequest.bind(this)),void(this.nextReq=t))},u.prototype.ackMessage=function(e){this.pendingAcks.push(e),this.sheduleRequest(3e4)},u.prototype.reqResendMessage=function(e){console.log(dT(),"Req resend",e),this.pendingResends.push(e),this.sheduleRequest(100)},u.prototype.cleanupSent=function(){var e=this,t=!1;return angular.forEach(this.sentMessages,function(n,i){if(n.notContentRelated&&void 0===e.pendingMessages[i])delete e.sentMessages[i];else if(n.container){for(var a=0;ar;r++)this.processMessage(e.messages[r],n,a);break;case"bad_server_salt":console.log(dT(),"Bad server salt",e);var s=this.sentMessages[e.bad_msg_id];if(!s||s.seq_no!=e.bad_msg_seqno)throw console.log(e.bad_msg_id,e.bad_msg_seqno),new Error("Bad server salt for invalid message");this.applyServerSalt(e.new_server_salt),this.pushResend(e.bad_msg_id),this.ackMessage(n);break;case"bad_msg_notification":console.log(dT(),"Bad msg notification",e);var s=this.sentMessages[e.bad_msg_id];if(!s||s.seq_no!=e.bad_msg_seqno)throw console.log(e.bad_msg_id,e.bad_msg_seqno),new Error("Bad msg notification for invalid message");if(16==e.error_code||17==e.error_code){t.applyServerTime(bigStringInt(n).shiftRight(32).toString(10))&&(console.log(dT(),"Update session"),this.updateSession());var l=this.updateSentMessage(e.bad_msg_id);this.pushResend(l.msg_id),this.ackMessage(n)}break;case"message":this.serverMessages.push(e.msg_id),this.processMessage(e.body,e.msg_id,a);break;case"new_session_created":this.ackMessage(n),this.processMessageAck(e.first_msg_id),this.applyServerSalt(e.server_salt);var c=this;i.get("dc").then(function(t){t==c.dcID&&!c.upload&&h&&h(e)});break;case"msgs_ack":for(var r=0;r5?"[.."+e.result.length+"..]":e.result),console.log(dT(),"Rpc response",g)}s.deferred.resolve(e.result)}s.isAPI&&(this.connectionInited=!0)}delete this.sentMessages[p]}break;default:this.ackMessage(n),h&&h(e)}},{getNetworker:function(e,t,n,i){return new u(e,t,n,i)},setUpdatesProcessor:function(e){h=e},stopAll:m,startAll:p}}]),angular.module("izhukov.mtproto.wrapper",["izhukov.utils","izhukov.mtproto"]).factory("MtpApiManager",["Storage","MtpAuthorizer","MtpNetworkerFactory","MtpSingleInstanceService","ErrorService","qSync","$q",function(e,t,n,i,a,o,r){function s(t,n){e.set({dc:t,user_auth:angular.extend({dcID:t},n)}),g=t}function l(){for(var t=[],n=1;5>=n;n++)t.push("dc"+n+"_auth_key");return e.get.apply(e,t).then(function(n){for(var i=[],a=0;a=n||!t||!t.length)return!1;var i=t.shift(),a=i.activeDelta||1;b[e]+=a;w++;i.cb().then(function(t){b[e]-=a,s(e),i.deferred.resolve(t)},function(t){b[e]-=a,s(e),i.deferred.reject(t)})}function l(e){switch(e._){case"inputVideoFileLocation":return"video"+e.id+".mp4";case"inputDocumentFileLocation":return"doc"+e.id;case"inputAudioFileLocation":return"audio"+e.id}return e.volume_id||console.trace("Empty location",e),e.volume_id+"_"+e.local_id+"_"+e.secret+".jpg"}function c(e){if(!e)return!1;var t=l(e);return y[t]||!1}function d(){return a.isAvailable()?a:i.isAvailable()?i:o}function u(e,t){var n=l(e);return g[n]||(g[n]=d().saveFile(n,t).then(function(e){return y[n]=e})),g[n]}function p(i){if(!n.isAvailable())return t.reject({type:"BROWSER_BLOB_NOT_SUPPORTED"});var a=l(i),o="image/jpeg",s=g[a]||_[a];if(s)return s;var c=d();return _[a]=c.getFile(a).then(function(e){return y[a]=e},function(){var t=r(i.dc_id,function(){return e.invokeApi("upload.getFile",{location:angular.extend({},i,{_:"inputFileLocation"}),offset:0,limit:0},{dcID:i.dc_id,fileDownload:!0,createNetworker:!0})});return c.getFileWriter(a,o).then(function(e){return t.then(function(t){return n.write(e,t.bytes).then(function(){return y[a]=e.finalize()})})})})}function m(e,t){var n=d(),i=l(e);return n.getFile(i,t)}function h(i,a,o,s){if(!n.isAvailable())return t.reject({type:"BROWSER_BLOB_NOT_SUPPORTED"});s=s||{};var c=l(a),u=s.toFileEntry||null,p=g[c]||_[c],m=d();if(p)return u?p.then(function(e){return n.copy(e,u)}):p;var h,f=t.defer(),v=!1,b=!1,w=s.mime||"image/jpeg",$=function(e){f.reject(e),$=angular.noop,!h||e&&"DOWNLOAD_CANCELED"==e.type||h.truncate(0)};return m.getFile(c,o).then(function(e){u?n.copy(e,u).then(function(){f.resolve()},$):f.resolve(y[c]=e)},function(){var s=u?n.getFileWriter(u):m.getFileWriter(c,w);s.then(function(s){h=s;var l,d,p=524288,m=0,g=t.when();for(s.length&&(m=s.length,s.seek(m),f.notify({done:m,total:o})),l=m;o>l;l+=p)d=t.defer(),function(l,d,m,h){return r(i,function(){return v?t.when():e.invokeApi("upload.getFile",{location:a,offset:d,limit:p},{dcID:i,fileDownload:!0,createNetworker:!0})},2).then(function(e){h.then(function(){return v?t.when():n.write(s,e.bytes).then(function(){m.resolve()},$).then(function(){l?(b=!0,u?f.resolve():f.resolve(y[c]=s.finalize())):f.notify({done:d+p,total:o})})})})}(l+p>=o,l,d,g),g=d.promise})}),f.promise.cancel=function(){v||b||(v=!0,delete _[c],$({type:"DOWNLOAD_CANCELED"}))},u||(_[c]=f.promise),f.promise}function f(n){var i=n.size,a=i>=10485760,o=!1,s=!1,l=0,c=262144,d=2;i>67108864?(c=524288,d=4):102400>i&&(c=32768,d=1);var u=Math.ceil(i/c);if(u>1500)return t.reject({type:"FILE_TOO_BIG"});var p,m=[nextRandomInt(4294967295),nextRandomInt(4294967295)],h=t.defer(),f=function(e){h.reject(e),o=!0,f=angular.noop},g=0,_={_:a?"inputFileBig":"inputFile",id:m,parts:u,name:n.name,md5_checksum:""};for(p=0;i>p;p+=c)!function(p,g){r("upload",function(){var r=t.defer(),d=new FileReader,y=n.slice(p,p+c);return d.onloadend=function(t){return o?void r.reject():void(t.target.readyState==FileReader.DONE&&e.invokeApi(a?"upload.saveBigFilePart":"upload.saveFilePart",{file_id:m,file_part:g,file_total_parts:u,bytes:t.target.result},{startMaxLength:c+256,fileUpload:!0,singleInRequest:!0}).then(function(){l++,r.resolve(),l>=u?(h.resolve(_),s=!0):(console.log(dT(),"Progress",l*c/i),h.notify({done:l*c,total:i}))},f))},d.readAsArrayBuffer(y),r.promise},d)}(p,g++);return h.promise.cancel=function(){console.log("cancel upload",o,s),o||s||(o=!0,f({type:"UPLOAD_CANCELED"}))},h.promise}var g={},_={},y={},v={},b={},w=0;return{getCachedFile:c,getDownloadedFile:m,downloadFile:h,downloadSmallFile:p,saveSmallFile:u,uploadFile:f}}]).service("MtpSingleInstanceService",["_","$rootScope","$interval","Storage","AppRuntimeManager","IdleManager","ErrorService","MtpNetworkerFactory",function(e,t,n,i,a,o,r,s){function l(){if(!p&&!Config.Navigator.mobile&&!Config.Modes.packed){p=!0,o.start(),h=tsNow(),t.$watch("idle.isIDLE",d),n(d,5e3),d();try{$($window).on("beforeunload",c)}catch(e){}}}function c(){i.remove(m?"xt_instance":"xt_idle_instance")}function d(){var n=tsNow(),a=t.idle&&t.idle.isIDLE,o={id:u,idle:a,time:n};i.get("xt_instance","xt_idle_instance").then(function(t){var l=t[0],c=t[1];!l||l.timen-1e4&&n>f&&(r.alert(e("error_modal_warning_title_raw"),e("error_modal_multiple_open_tabs_raw")),f+=tsNow()+6e4)),i.set({xt_instance:o}),m||s.startAll(),m=!0):(i.set({xt_idle_instance:o}),m&&s.stopAll(),m=!1)})}var u=nextRandomInt(4294967295),p=!1,m=!1,h=tsNow(),f=0;return{start:l}}]),angular.module("myApp",["ngRoute","ngSanitize","ngTouch","ui.bootstrap","mediaPlayer","izhukov.utils","izhukov.mtproto","izhukov.mtproto.wrapper","myApp.filters","myApp.services","myApp.templates","myApp.directives","myApp.controllers"]).config(["$locationProvider","$routeProvider","$compileProvider","StorageProvider",function(e,t,n,i){var a,o,r,s,l,c,d,u={},p={};for(o=0;o=1e3?void o.resolve(r):void this["continue"]()},t.onerror=function(e){console.log("phonebook error",e,e.type,e.message),o.reject(e)},o.promise}return{isAvailable:a,openPhonebookImport:o,getPhonebookContacts:r}}]).service("AppChatsManager",["$rootScope","$modal","_","MtpApiFileManager","MtpApiManager","AppUsersManager","RichTextProcessor",function(e,t,n,i,a,o,r){function s(e){angular.forEach(e,l)}function l(e){angular.isObject(e)&&(e.rTitle=r.wrapRichText(e.title,{noLinks:!0,noLinebreaks:!0})||n("chat_title_deleted"),void 0===f[e.id]?f[e.id]=e:safeReplaceObject(f[e.id],e),void 0!==g[e.id]&&safeReplaceObject(g[e.id],e&&e.photo&&e.photo.photo_small||{empty:!0}))}function c(e){return f[e]||{id:e,deleted:!0}}function d(e){return angular.isObject(f[e])}function u(e,t){var n=c(e);return void 0===g[e]&&(g[e]=n&&n.photo&&n.photo.photo_small||{empty:!0}),{placeholder:"img/placeholders/"+t+"Avatar"+(Math.abs(e)%4+1)+"@2x.png",location:g[e]}}function p(e){c(e);return"g"+e}function m(e,t){var n=angular.copy(t),i=c(e);return n.participants&&"chatParticipants"==n.participants._&&a.getUserID().then(function(e){angular.forEach(n.participants.participants,function(t){t.user=o.getUser(t.user_id),t.inviter=o.getUser(t.inviter_id),t.canKick=e!=t.user_id&&(e==n.participants.admin_id||e==t.inviter_id)})}),n.thumb={placeholder:"img/placeholders/GroupAvatar"+(Math.abs(e)%4+1)+"@2x.png",location:i&&i.photo&&i.photo.photo_small,width:120,height:120,size:0},n.peerString=p(e),n.chat=i,n}function h(n){var i=e.$new();i.chatID=n;t.open({templateUrl:templateUrl("chat_modal"),controller:"ChatModalController",scope:i,windowClass:"chat_modal_window mobile_modal"})}var f={},g={};return{saveApiChats:s,saveApiChat:l,getChat:c,getChatPhoto:u,getChatString:p,hasChat:d,wrapForFull:m,openChat:h}}]).service("AppPeersManager",["AppUsersManager","AppChatsManager",function(e,t){return{getInputPeer:function(e){var t="u"==e.charAt(0),n=e.substr(1).split("_");return t?{_:"inputPeerForeign",user_id:n[0],access_hash:n[1]}:{_:"inputPeerChat",chat_id:n[0]}},getInputPeerByID:function(t){return t>0?{_:"inputPeerForeign",user_id:t,access_hash:e.getUser(t).access_hash||0}:0>t?{_:"inputPeerChat",chat_id:-t}:void 0},getPeerSearchText:function(n){var i;if(n>0)i=e.getUserSearchText(n);else if(0>n){var a=t.getChat(-n);i=a.title||""}return i},getPeerString:function(n){return n>0?e.getUserString(n):t.getChatString(-n)},getOutputPeer:function(e){return e>0?{_:"peerUser",user_id:e}:{_:"peerChat",chat_id:-e}},getPeerID:function(e){if(angular.isObject(e))return e.user_id?e.user_id:-e.chat_id;var t="u"==e.charAt(0),n=e.substr(1).split("_");return t?n[0]:-n[0]||0},getPeer:function(n){return n>0?e.getUser(n):t.getChat(-n)},getPeerPhoto:function(n,i,a){return n>0?e.getUserPhoto(n,i):t.getChatPhoto(-n,a)}}}]).service("AppMessagesManager",["$q","$rootScope","$location","$filter","ApiUpdatesManager","AppUsersManager","AppChatsManager","AppPeersManager","AppPhotosManager","AppVideoManager","AppDocsManager","AppAudioManager","MtpApiManager","MtpApiFileManager","RichTextProcessor","NotificationsManager","SearchIndexManager","PeersSelectService","Storage","FileManager","_",function(e,t,n,i,a,o,r,s,l,c,d,u,p,m,h,f,g,_,y,v,b){function w(t,n,i){var a=X;if(angular.isString(t)&&t.length){if(!i||nt.query!==t){nt.query=t;var l=g.search(t,tt);nt.dialogs=[],angular.forEach(X.dialogs,function(e){l[e.peerID]&&nt.dialogs.push(e)}),nt.count=nt.dialogs.length}a=nt}else nt.query=!1;var c=0;if(n>0)for(c=0;ca.dialogs[c].top_message);c++);return null!==a.count&&a.dialogs.length==a.count||a.dialogs.length>=c+(i||1)?e.when({count:a.count,dialogs:a.dialogs.slice(c,c+(i||20))}):(i=i||20,p.invokeApi("messages.getDialogs",{offset:c,limit:i,max_id:n||0}).then(function(e){if(o.saveApiUsers(e.users),r.saveApiChats(e.chats),I(e.messages),n>0)for(c=0;ca.dialogs[c].top_message);c++);return a.count=e.count||e.dialogs.length,a.dialogs.splice(c,a.dialogs.length-c),angular.forEach(e.dialogs,function(e){var t=s.getPeerID(e.peer),n=s.getPeerSearchText(t);g.indexObject(t,n,tt),a.dialogs.push({peerID:t,top_message:e.top_message,unread_count:e.unread_count}),void 0===K[t]&&(K[t]={count:null,history:[e.top_message],pending:[]}),f.savePeerSettings(t,e.notify_settings)}),{count:a.count,dialogs:a.dialogs.slice(c,c+i)}}))}function $(e,t,n,i){return p.invokeApi("messages.getHistory",{peer:e,offset:i||0,limit:n||0,max_id:t||0},{noErrorBox:!0}).then(function(e){return o.saveApiUsers(e.users),r.saveApiChats(e.chats),I(e.messages),e})}function k(e,t,n,i){return $(e,t,n).then(function(a){i.count=a.count||a.messages.length;var o=0;if(t>0)for(o=0;oi.history[o]);o++);return i.history.splice(o,i.history.length-o),angular.forEach(a.messages,function(e){i.history.push(e.id)}),n-=a.messages.length,n>0&&i.history.length0)for(d=!0,c=0;cl.history[c]){d=!1;break}}else{var h=H(r);if(h&&h[0]&&h[0].unread_count>1){var f=h[0].unread_count;(p=f>50)?(i=10,u=6,c=f-u):(i=Math.max(10,o,f+2),u=f)}else Config.Mobile&&(i=20)}return!d&&(null!==l.count&&l.history.length==l.count||l.history.length>=c+(i||1))?(a?(a=Math.min(c,a),c=Math.max(0,c-a),i+=a):i=i||(c?20:o||5),e.when({count:l.count,history:m.concat(l.history.slice(c,c+i)),unreadOffset:u,unreadSkip:p})):(a||i||(i=o||20),d&&(c=0),a||p||n&&-1==l.history.indexOf(n)?(a&&(c=-a,i+=a),$(t,n,i,c).then(function(e){l.count=e.count||e.messages.length;var t=[];return angular.forEach(e.messages,function(e){t.push(e.id)}),{count:l.count,history:m.concat(t),unreadOffset:u,unreadSkip:p}})):k(t,n,i,l).then(function(){if(c=0,n>0)for(c=0;cl.history[c]);c++);return{count:l.count,history:m.concat(l.history.slice(c,c+i)),unreadOffset:u,unreadSkip:p}}))}function S(t,n,i,a,l){var c=[],d=!n,u=s.getPeerID(t),m={peer:u,filter:i},h=d&&angular.equals(it,m);if(d&&!h&&(it=m,at=[]),!a&&!n){var f=K[u];if(void 0!==f&&f.history.length){var g,_,y={},v=l||20;switch(i._){case"inputMessagesFilterPhotos":y.messageMediaPhoto=!0;break;case"inputMessagesFilterVideo":y.messageMediaVideo=!0;break;case"inputMessagesFilterPhotoVideo":y.messageMediaPhoto=!0,y.messageMediaVideo=!0;break;case"inputMessagesFilterDocument":y.messageMediaDocument=!0;break;case"inputMessagesFilterAudio":y.messageMediaAudio=!0}for(g=0;g=v)));g++);}if(c.length=v));g++);}return c.length||1e3==l?(d&&(at=listMergeSorted(at,c)),e.when({count:null,history:c})):p.invokeApi("messages.search",{peer:t,q:n||"",filter:i||{_:"inputMessagesFilterEmpty"},min_date:0,max_date:0,limit:l||20,max_id:a||0}).then(function(e){o.saveApiUsers(e.users),r.saveApiChats(e.chats),I(e.messages);var t=e.count||e.messages.length;return c=[],angular.forEach(e.messages,function(e){c.push(e.id)}),d&&(at=listMergeSorted(at,c)),{count:t,history:c}})}function M(e){return z[e]||{deleted:!0}}function x(e){return p.invokeApi("messages.deleteMessages",{id:e}).then(function(e){return a.processUpdateMessage({_:"updateShort",update:{_:"updateDeleteMessages",messages:e}}),e})}function A(t,n,i){return a.processUpdateMessage({_:"updates",seq:n.seq,updates:[]})?n.offset?p.invokeApi(i,{peer:t,offset:n.offset,max_id:0,read_contents:!0}).then(function(e){return A(t,e,i)}):e.when():!1}function T(e){var n=s.getPeerID(e),i=K[n],a=H(n);if(!a[0]||!a[0].unread_count){if(!i||!i.history.length)return!1;var o,r,l=!1;for(c=i.history.length;c>=0;c--)if(o=i.history[c],r=z[o],r&&!r.out&&r.unread){l=!0;break}if(!l)return!1}if(i.readPromise)return i.readPromise;if(i.readPromise=p.invokeApi("messages.readHistory",{peer:e,offset:0,max_id:0,read_contents:!0}).then(function(t){return A(e,t,"messages.readHistory")}).then(function(){a[0]&&(a[0].unread_count=0,t.$broadcast("dialog_unread",{peerID:n,count:0}),t.$broadcast("messages_read"))})["finally"](function(){delete i.readPromise}),i&&i.history.length){var o,r,c,n,a;for(c=0;c=0?(r="photo",l="photo."+i.type.split("/")[1]):"video/"==i.type.substr(0,6)?(r="video",l="video.mp4"):"audio/"==i.type.substr(0,6)?(r="audio",l="audio."+("ogg"==i.type.split("/")[1]?"ogg":"mp3")):(r="document",l="document."+i.type.split("/")[1]):(r="document",l="document."+i.type.split("/")[1]),void 0===h&&(h=K[n]={count:null,history:[],pending:[]}),p.getUserID().then(function(o){var g={_:"messageMediaPending",type:r,file_name:i.name||l,size:i.size,progress:{percent:1,total:i.size}},_={_:"message",id:c,from_id:o,to_id:s.getOutputPeer(n),flags:3,date:tsNow(!0)+ot,message:"",media:g,random_id:u,pending:!0},y=function(e){var n=W[c];e?(_.error=!0,n&&(n.error=!0)):(delete _.error,n&&delete n.error),t.$broadcast("messages_pending")};_.send=function(){var o=e.defer();Q.then(function(){var e=!1,s=m.uploadFile(i);s.then(function(t){t.name=l,e=!0;var n;switch(r){case"photo":n={_:"inputMediaUploadedPhoto",file:t};break;case"video":n={_:"inputMediaUploadedVideo",file:t,duration:0,w:0,h:0,mime_type:i.type};break;case"audio":n={_:"inputMediaUploadedAudio",file:t,duration:0,mime_type:i.type};break;case"document":default:n={_:"inputMediaUploadedDocument",file:t,file_name:i.name,mime_type:i.type}}p.invokeApi("messages.sendMedia",{peer:f,media:n,random_id:d}).then(function(e){_.date=e.message.date,_.id=e.message.id,_.media=e.message.media,a.processUpdateMessage({_:"updates",users:e.users,chats:e.chats,seq:e.seq,updates:[{_:"updateMessageID",random_id:u,id:e.message.id},{_:"updateNewMessage",message:_,pts:e.pts}]}) },function(){y(!0)})},function(){y(!0)},function(e){g.progress.done=e.done,g.progress.percent=Math.max(1,Math.floor(100*e.done/e.total)),t.$broadcast("history_update",{peerID:n})}),g.progress.cancel=function(){e||(o.resolve(),s.cancel(),O(u))},s["finally"](function(){o.resolve()})}),Q=o.promise},I([_]),h.pending.unshift(c),t.$broadcast("history_append",{peerID:n,messageID:c,my:!0}),_.send()}),Z[u]=[n,c]}function N(e,n){var i=et--,o=[nextRandomInt(4294967295),nextRandomInt(4294967295)],r=bigint(o[0]).shiftLeft(32).add(bigint(o[1])).toString(),c=K[e],d=s.getInputPeerByID(e);void 0===c&&(c=K[e]={count:null,history:[],pending:[]}),p.getUserID().then(function(u){var m;switch(n._){case"inputMediaContact":m=angular.extend({},n,{_:"messageMediaContact"});break;case"inputMediaPhoto":m={photo:l.getPhoto(n.id.id)}}var h={_:"message",id:i,from_id:u,to_id:s.getOutputPeer(e),flags:3,date:tsNow(!0)+ot,message:"",media:m,random_id:r,pending:!0},f=function(e){var n=W[i];e?(h.error=!0,n&&(n.error=!0)):(delete h.error,n&&delete n.error),t.$broadcast("messages_pending")};h.send=function(){p.invokeApi("messages.sendMedia",{peer:d,media:n,random_id:o}).then(function(e){h.date=e.message.date,h.id=e.message.id,h.media=e.message.media,a.processUpdateMessage({_:"updates",users:e.users,chats:e.chats,seq:e.seq,updates:[{_:"updateMessageID",random_id:r,id:e.message.id},{_:"updateNewMessage",message:h,pts:e.pts}]})},function(){f(!0)})},I([h]),c.pending.unshift(i),t.$broadcast("history_append",{peerID:e,messageID:i,my:!0}),h.send()}),Z[r]=[e,i]}function L(e,t){return t=t.sort(),p.invokeApi("messages.forwardMessages",{peer:s.getInputPeerByID(e),id:t}).then(function(e){var t=[];angular.forEach(e.messages,function(n){t.push({_:"updateNewMessage",message:n,pts:e.pts})}),a.processUpdateMessage({_:"updates",users:e.users,chats:e.chats,seq:e.seq,updates:t})})}function O(e){var t=Z[e];if(console.log("pending",e,t),t){var n,i=t[0],o=t[1],r=K[i];for(a.processUpdateMessage({_:"updateShort",update:{_:"updateDeleteMessages",messages:[o]}}),n=0;nt?t:e.out||2&e.flags?t:e.from_id}function R(e,t){var n=-1!=t;if(n&&void 0!==G[e])return G[e];var i=angular.copy(z[e])||{id:e};return i.fromUser=o.getUser(i.from_id),(i.chatID=i.to_id.chat_id)?(i.peerID=-i.chatID,i.peerData=r.getChat(i.chatID)):(i.peerID=i.out?i.to_id.user_id:i.from_id,i.peerData=o.getUser(i.peerID)),i.peerString=s.getPeerString(i.peerID),i.peerPhoto=s.getPeerPhoto(i.peerID,"User","Group"),i.unreadCount=t,"messageService"==i._&&i.action.user_id&&(i.action.user=o.getUser(i.action.user_id)),i.message&&i.message.length&&(i.richMessage=h.wrapRichText(i.message.substr(0,64),{noLinks:!0,noLinebreaks:!0})),i.dateText=ct(i.date),n&&(G[e]=i),i}function F(e){if(void 0!==W[e])return W[e];var t=angular.copy(z[e])||{id:e};if(t.media&&void 0!==t.media.progress&&(t.media.progress=z[e].media.progress),t.media)switch(t.media._){case"messageMediaPhoto":t.media.photo=l.wrapForHistory(t.media.photo.id);break;case"messageMediaVideo":t.media.video=c.wrapForHistory(t.media.video.id);break;case"messageMediaDocument":t.media.document=d.wrapForHistory(t.media.document.id);break;case"messageMediaAudio":t.media.audio=u.wrapForHistory(t.media.audio.id);break;case"messageMediaContact":t.media.rFullName=h.wrapRichText(t.media.first_name+" "+(t.media.last_name||""),{noLinks:!0,noLinebreaks:!0});break;case"messageMediaEmpty":delete t.media}else if(t.action)switch(t.action._){case"messageActionChatEditPhoto":t.action.photo=l.wrapForHistory(t.action.photo.id);break;case"messageActionChatCreate":case"messageActionChatEditTitle":t.action.rTitle=h.wrapRichText(t.action.title,{noLinks:!0,noLinebreaks:!0})||b("chat_title_deleted")}return t.message&&t.message.length&&(t.richMessage=h.wrapRichText(t.message),Config.Navigator.mobile||(t.richUrlEmbed=h.extractExternalEmbed(t.message))),W[e]=t}function q(e,t){if(!e||!e.length)return!1;var n,i,a,o,r,s,l,c=0,d=e.length,u=d,p=!1,m=!Config.Mobile;for(t>0?u=Math.min(t,d):0>t&&(c=Math.max(0,u+t)),n=c;u>n;n++){if(o=e[n],i=Math.floor((o.date+V)/86400),l=r&&r.grouped,s=o.grouped,i===a?o.needDate&&(delete o.needDate,p=!0):(!n||r)&&(o.needDate||(o.needDate=!0,p=!0)),r&&o.from_id==r.from_id&&!r.fwd_from_id==!o.fwd_from_id&&!r.action&&!o.action&&o.date0?(c.title=(s.first_name||"")+(s.first_name&&s.last_name?" ":"")+(s.last_name||""),i=l,n=o.getUserString(a)):(c.title=(s.first_name||s.last_name||b("conversation_unknown_user_raw"))+" @ "+(r.getChat(-a).title||b("conversation_unknown_chat_raw")),i=r.getChatPhoto(-a,"Group"),n=r.getChatString(-a)),c.title=h.wrapPlainText(c.title),c.onclick=function(){t.$broadcast("history_focus",{peerString:n})},c.message=d,c.image=i.placeholder,c.key="msg"+e.id,c.tag=n,i.location&&!i.location.empty?m.downloadSmallFile(i.location,i.size).then(function(t){c.image=v.getUrl(t,"image/jpeg"),e.unread&&f.notify(c)}):f.notify(c)}var V,z={},W={},G={},K={},X={count:null,dialogs:[]},Z={},Y={},J={},Q=e.when(),et=-1,tt=g.createIndex(),nt={query:!1},it={},at=[],ot=0,rt=tsNow(!0),st=rt-rt%86400,lt=new Date;y.get("server_time_offset").then(function(e){e&&(ot=e)});var ct=i("dateOrTime");return lt.setHours(0),lt.setMinutes(0),lt.setSeconds(0),V=st-Math.floor(+lt/1e3),f.start(),window.navigator.mozSetMessageHandler&&window.navigator.mozSetMessageHandler("activity",function(e){var n=e.source;console.log(dT(),"Received activity",n.name,n.data),"share"===n.name&&n.data.blobs.length>0&&_.selectPeer({confirm_type:"EXT_SHARE_PEER"}).then(function(e){var i=s.getPeerID(e);angular.forEach(n.data.blobs,function(e){P(i,e,{isMedia:!0})}),t.$broadcast("history_focus",{peerString:e})})}),t.$on("apiUpdate",function(e,n){switch(n._){case"updateMessageID":Y[n.id]=n.random_id;break;case"updateNewMessage":var i=n.message,a=B(i),r=K[a];if(void 0!==r){{K[a].history[0]}if(-1!=K[a].history.indexOf(i.id))return!1;r.history.unshift(i.id),r.history.sort(function(e,t){return t-e})}else r=K[a]={count:null,history:[i.id],pending:[]};I([i]),i.out||o.forceUserOnline(i.from_id),null!==r.count&&r.count++;var l,c=Y[i.id];c&&((l=U(c,i))&&t.$broadcast("history_update",{peerID:a}),delete Y[i.id]),l||t.$broadcast("history_append",{peerID:a,messageID:i.id});var d,u=H(a);u.length?(d=u[0],X.dialogs.splice(u[1],1)):d={peerID:a,unread_count:0,top_message:!1},!i.out&&i.unread&&d.unread_count++,d.top_message=i.id,g.indexObject(a,s.getPeerSearchText(a),tt),X.dialogs.unshift(d),t.$broadcast("dialogs_update",d),(Config.Mobile&&t.selectedPeerID!=a||t.idle.isIDLE)&&!i.out&&i.unread&&f.getPeerMuted(a).then(function(e){i.unread&&!e&&j(i)});break;case"updateReadMessages":var p,i,m,a,u,d,h={},_=!1;for(m=0;m0&&o.forceUserOnline(a):(u=H(a),u&&(h[a]=--u[0].unread_count),f.cancel("msg"+p)));angular.forEach(h,function(e,n){t.$broadcast("dialog_unread",{peerID:n,count:e})}),_&&t.$broadcast("messages_read");break;case"updateDeleteMessages":var p,i,m,a,u,d,y,h={},v={};for(m=0;mo&&(i=e,a=o)}),i}function d(e,t,n){return a.invokeApi("photos.getUserPhotos",{user_id:e,offset:0,limit:n||20,max_id:t||0}).then(function(e){r.saveApiUsers(e.users);for(var t=[],n=0;n800&&(i-=208);var r=c(n,i,a);r&&!r.preloaded&&(r.preloaded=!0,r.size?o.downloadFile(r.location.dc_id,{_:"inputFileLocation",volume_id:r.location.volume_id,local_id:r.location.local_id,secret:r.location.secret},r.size):o.downloadSmallFile(r.location))}}function p(e){return _[e]||{_:"photoEmpty"}}function m(e){var t=angular.copy(_[e])||{_:"photoEmpty"},n=Math.min(y-80,Config.Mobile?210:260),i=Math.min(v-100,Config.Mobile?210:260),a=c(t,n,i),o={placeholder:"img/placeholders/PhotoThumbConversation.gif",width:n,height:i};return a&&"photoSizeEmpty"!=a._?(a.w/a.h>n/i?o.height=parseInt(a.h*n/a.w):(o.width=parseInt(a.w*i/a.h),o.width>n&&(o.height=parseInt(o.height*n/o.width),o.width=n)),o.location=a.location,o.size=a.size):(o.width=100,o.height=100),t.thumb=o,t}function h(e){var n=m(e),i=$(window).width()-(Config.Mobile?0:32),a=$(t).height()-(Config.Mobile?0:116);!Config.Mobile&&i>800&&(i-=208);var o=c(n,i,a),r={placeholder:"img/placeholders/PhotoThumbModal.gif"};if(r.width=i,r.height=a,o&&"photoSizeEmpty"!=o._){var s=calcImageInBox(o.w,o.h,i,a,!0);r.width=s.w,r.height=s.h,r.modalWidth=Math.max(r.width,Math.min(400,i)),r.location=o.location,r.size=o.size}return n.full=r,n}function f(t,n){if(!t||"0"===t)return!1;var a=i.$new(!0);a.photoID=t,0>n?a.userID=-n:a.messageID=n;e.open({templateUrl:templateUrl("photo_modal"),windowTemplateUrl:templateUrl("media_modal_layout"),controller:a.userID?"UserpicModalController":"PhotoModalController",scope:a,windowClass:"photo_modal_window"})}function g(e){var n=_[e],i="jpg",a="image/jpeg",r="photo"+e+"."+i,l=Math.max(screen.width||0,$(window).width()-36,800),d=Math.max(screen.height||0,$(t).height()-150,800),u=c(n,l,d),p={_:"inputFileLocation",volume_id:u.location.volume_id,local_id:u.location.local_id,secret:u.location.secret};s.chooseSave(r,i,a).then(function(e){e&&o.downloadFile(u.location.dc_id,p,u.size,{mime:a,toFileEntry:e}).then(function(){},function(e){console.log("photo download failed",e)})},function(){o.downloadFile(u.location.dc_id,p,u.size,{mime:a}).then(function(e){s.download(e,a,r)},function(e){console.log("photo download failed",e)})})}var _={},y=$(window).width(),v=$(window).height();return i.preloadPhoto=u,i.openPhoto=f,{savePhoto:l,preloadPhoto:u,getUserPhotos:d,getPhoto:p,wrapForHistory:m,wrapForFull:h,openPhoto:f,downloadPhoto:g}}]).service("AppVideoManager",["$sce","$rootScope","$modal","$window","$timeout","MtpApiFileManager","AppUsersManager","FileManager",function(e,t,n,i,a,o,r,s){function l(e){f[e.id]=e,e.thumb&&"photoCachedSize"==e.thumb._&&(o.saveSmallFile(e.thumb.location,e.thumb.bytes),e.thumb.size=e.thumb.bytes.length,delete e.thumb.bytes,e.thumb._="photoSize")}function c(e){if(void 0!==g[e])return g[e];var t=angular.copy(f[e]),n=Math.min(_-80,Config.Mobile?210:150),i=Math.min(y-100,Config.Mobile?210:150),a=t.thumb,o={placeholder:"img/placeholders/VideoThumbConversation.gif",width:n,height:i};return a&&"photoSizeEmpty"!=a._&&(a.w/a.h>n/i?o.height=parseInt(a.h*n/a.w):(o.width=parseInt(a.w*i/a.h),o.width>n&&(o.height=parseInt(o.height*n/o.width),o.width=n)),o.location=a.location,o.size=a.size),t.thumb=o,g[e]=t}function d(e){var t=c(e),n=Math.min($(window).width()-(Config.Mobile?0:60),542),a=$(i).height()-(Config.Mobile?92:150),o={placeholder:"img/placeholders/VideoThumbModal.gif",width:n,height:a};if(t.w&&t.h){var r=calcImageInBox(t.w,t.h,n,a);o.width=r.w,o.height=r.h}else o.height=o.width=Math.min(n,a);return t.full=o,t.fullThumb=angular.copy(t.thumb),t.fullThumb.width=o.width,t.fullThumb.height=o.height,t}function u(e,i){var a=t.$new(!0);return a.videoID=e,a.messageID=i,n.open({templateUrl:templateUrl("video_modal"),windowTemplateUrl:templateUrl("media_modal_layout"),controller:"VideoModalController",scope:a,windowClass:"video_modal_window"})}function p(e){var t=f[e],n=g[e]||t||{},i={_:"inputVideoFileLocation",id:e,access_hash:t.access_hash};void 0===n.downloaded&&o.getDownloadedFile(i,t.size).then(function(){n.downloaded=!0},function(){n.downloaded=!1})}function m(n,i){var a=f[n],r=g[n]||a||{},l=a.mime_type||"video/ogg",c={_:"inputVideoFileLocation",id:n,access_hash:a.access_hash};r.progress={enabled:!r.downloaded,percent:1,total:a.size};var d=o.downloadFile(a.dc_id,c,a.size,{mime:l,toFileEntry:i});return d.then(function(t){s.getFileCorrectUrl(t,l).then(function(t){r.url=e.trustAsResourceUrl(t)}),delete r.progress,r.downloaded=!0,console.log("video save done")},function(e){console.log("video download failed",e),r.progress.enabled=!1},function(e){console.log("dl progress",e),r.progress.enabled=!0,r.progress.done=e.done,r.progress.percent=Math.max(1,Math.floor(100*e.done/e.total)),t.$broadcast("history_update")}),r.progress.cancel=d.cancel,d}function h(e){{var t=f[e],n=t.mime_type||"video/mp4",i=n.split(".")[1]||"mp4",a="t_video"+e+"."+i;g[e]||t||{}}s.chooseSave(a,i,n).then(function(t){t&&m(e,t)},function(){m(e).then(function(e){s.download(e,n,a)})})}var f={},g={},_=$(window).width(),y=$(window).height();return{saveVideo:l,wrapForHistory:c,wrapForFull:d,openVideo:u,updateVideoDownloaded:p,downloadVideo:m,saveVideoFile:h}}]).service("AppDocsManager",["$sce","$rootScope","$modal","$window","$timeout","$q","MtpApiFileManager","FileManager",function(e,t,n,i,a,o,r,s){function l(e){h[e.id]=e,e.thumb&&"photoCachedSize"==e.thumb._&&(r.saveSmallFile(e.thumb.location,e.thumb.bytes),e.thumb.size=e.thumb.bytes.length,delete e.thumb.bytes,e.thumb._="photoSize")}function c(e){if(void 0!==f[e])return f[e];var t=angular.copy(h[e]),n="image/gif"==t.mime_type,i="audio/"==t.mime_type.substr(0,6),a=n?Math.min(g-80,260):100,o=n?Math.min(_-100,260):100,r=t.thumb,s={width:a,height:o};return r&&"photoSizeEmpty"!=r._?(r.w/r.h>a/o?s.height=parseInt(r.h*a/r.w):(s.width=parseInt(r.w*o/r.h),s.width>a&&(s.height=parseInt(s.height*a/s.width),s.width=a)),s.location=r.location,s.size=r.size):s=!1,t.thumb=s,t.withPreview=!Config.Mobile&&t.mime_type.match(/^(image\/)/)?1:0,n&&t.thumb?t.isSpecial="gif":i&&(t.isSpecial="audio"),f[e]=t}function d(e){var t=h[e],n=f[e]||t||{},i={_:"inputDocumentFileLocation",id:e,access_hash:t.access_hash};void 0===n.downloaded&&r.getDownloadedFile(i,t.size).then(function(){n.downloaded=!0},function(){n.downloaded=!1})}function u(n,i){var a=h[n],o=f[n]||a||{},l={_:"inputDocumentFileLocation",id:n,access_hash:a.access_hash};o.progress={enabled:!o.downloaded,percent:1,total:a.size};var c=r.downloadFile(a.dc_id,l,a.size,{mime:a.mime_type,toFileEntry:i});return c.then(function(t){s.getFileCorrectUrl(t,a.mime_type).then(function(t){o.url=e.trustAsResourceUrl(t)}),delete o.progress,o.downloaded=!0,console.log("file save done")},function(e){console.log("document download failed",e),o.progress.enabled=!1},function(e){console.log("dl progress",e),o.progress.enabled=!0,o.progress.done=e.done,o.progress.percent=Math.max(1,Math.floor(100*e.done/e.total)),t.$broadcast("history_update")}),o.progress.cancel=c.cancel,c}function p(e,i){var a=t.$new(!0);a.docID=e,a.messageID=i;n.open({templateUrl:templateUrl("document_modal"),windowTemplateUrl:templateUrl("media_modal_layout"),controller:"DocumentModalController",scope:a,windowClass:"document_modal_window"})}function m(e){var t=h[e],n=(f[e]||t||{},(t.file_name.split(".",2)||[])[1]||"");s.chooseSave(t.file_name,n,t.mime_type).then(function(t){t&&u(e,t)},function(){u(e).then(function(e){s.download(e,t.mime_type,t.file_name)})})}var h={},f={},g=$(window).width(),_=$(window).height();return{saveDoc:l,wrapForHistory:c,updateDocDownloaded:d,downloadDoc:u,openDoc:p,saveDocFile:m}}]).service("AppAudioManager",["$sce","$rootScope","$modal","$window","$timeout","MtpApiFileManager","FileManager",function(e,t,n,i,a,o,r){function s(e){p[e.id]=e}function l(e){if(void 0!==m[e])return m[e];var t=angular.copy(p[e]);return m[e]=t}function c(e){var t=p[e],n=m[e]||t||{},i={_:"inputAudioFileLocation",id:e,access_hash:t.access_hash};void 0===n.downloaded&&o.getDownloadedFile(i,t.size).then(function(){n.downloaded=!0},function(){n.downloaded=!1})}function d(n,i){var a=p[n],s=m[n]||a||{},l=a.mime_type||"audio/ogg",c={_:"inputAudioFileLocation",id:n,access_hash:a.access_hash};s.progress={enabled:!s.downloaded,percent:1,total:a.size};var d=o.downloadFile(a.dc_id,c,a.size,{mime:l,toFileEntry:i});return d.then(function(t){r.getFileCorrectUrl(t,l).then(function(t){s.url=e.trustAsResourceUrl(t)}),delete s.progress,s.downloaded=!0,console.log("audio save done")},function(e){console.log("audio download failed",e),s.progress.enabled=!1},function(e){console.log("dl progress",e),s.progress.enabled=!0,s.progress.done=e.done,s.progress.percent=Math.max(1,Math.floor(100*e.done/e.total)),t.$broadcast("history_update")}),s.progress.cancel=d.cancel,d}function u(e){{var t=p[e],n=t.mime_type||"audio/ogg",i=n.split(".")[1]||"ogg",a="t_audio"+e+"."+i;m[e]||t||{}}r.chooseSave(a,i,n).then(function(t){t&&d(e,t)},function(){d(e).then(function(e){r.download(e,n,a)})})}var p={},m={};return{saveAudio:s,wrapForHistory:l,updateAudioDownloaded:c,downloadAudio:d,saveAudioFile:u}}]).service("ApiUpdatesManager",["$rootScope","MtpNetworkerFactory","AppUsersManager","AppChatsManager","AppPeersManager","MtpApiManager",function(e,t,n,i,a,o){function r(){var e=f.seq+1,t=g[e];t&&(console.log(dT(),"pop pending update",e,t),l(t)&&delete g[e])}function s(){m||c()}function l(e){if(e.seq){if(!u(e.seq,e.seq_start))return g[e.seq_start||e.seq]=e,!1;e.date&&(f.date=e.date)}switch(e._){case"updatesTooLong":case"new_session_created":s();break;case"updateShort":d(e.update);break;case"updateShortMessage":if(!n.hasUser(e.from_id)){console.log("User not found",e.from_id,"getDiff"),s();break}d({_:"updateNewMessage",message:{_:"message",id:e.id,from_id:e.from_id,to_id:a.getOutputPeer(o.getUserID()),flags:1,date:e.date,message:e.message,media:{_:"messageMediaEmpty"}},pts:e.pts});break;case"updateShortChatMessage":if(!n.hasUser(e.from_id)||!i.hasChat(e.chat_id)){console.log("User or chat not found",e.from_id,e.chat_id,"getDiff"),s();break}d({_:"updateNewMessage",message:{_:"message",id:e.id,from_id:e.from_id,to_id:a.getOutputPeer(-e.chat_id),flags:1,date:e.date,message:e.message,media:{_:"messageMediaEmpty"}},pts:e.pts});break;case"updatesCombined":case"updates":n.saveApiUsers(e.users),i.saveApiChats(e.chats);for(var t,l,c,t=0;t=h.seqAwaiting&&(console.log(dT(),"cancel pending getDiff",h.seqAwaiting),clearTimeout(h.timeout),h=!1),!0}function c(){m=!0,h&&(clearTimeout(h.timeout),h=!1),o.invokeApi("updates.getDifference",{pts:f.pts,date:f.date,qts:0}).then(function(e){if("updates.differenceEmpty"==e._)return console.log(dT(),"apply empty diff",e.seq),f.date=e.date,f.seq=e.seq,m=!1,r(),!1;n.saveApiUsers(e.users),i.saveApiChats(e.chats),angular.forEach(e.other_updates,function(e){d(e)}),angular.forEach(e.new_messages,function(e){d({_:"updateNewMessage",message:e,pts:f.pts})});var t=e.intermediate_state||e.state;f.seq=t.seq,f.pts=t.pts,f.date=t.date,console.log(dT(),"apply diff",f.seq,f.pts),"updates.differenceSlice"==e._?c(!0):m=!1})}function d(t){t.pts&&(f.pts=t.pts),e.$broadcast("apiUpdate",t)}function u(e,t){return(t=t||e)?m?(console.log(dT(),"Seq decline",t),!1):t!=f.seq+1?(t>f.seq&&(console.warn(dT(),"Seq hole",t,h&&h.seqAwaiting),h||(h={seqAwaiting:t,timeout:setTimeout(function(){c()},5e3)})),!1):(f.seq=e,!0):!0}function p(){t.setUpdatesProcessor(l),o.invokeApi("updates.getState",{},{noErrorBox:!0}).then(function(e){f.seq=e.seq,f.pts=e.pts,f.date=e.date,setTimeout(function(){m=!1},1e3)})}var m=!0,h=!1,f={},g={};return{processUpdateMessage:l,attach:p}}]).service("RichTextProcessor",["$sce","$sanitize",function(e,t){function n(e){for(var t,n,i,a,o=0;o-1)return n=Math.floor(t/a),i=t%a,{category:o,row:n,column:i};return console.error("emoji not found in spritesheet",e),null}function i(i,a){if(!i||!i.length)return"";a=a||{},i=i.replace(/\ufe0f/g,"",i);for(var o,s,u,p=i,m=[],f=!1;o=p.match(h);)m.push(encodeEntities(p.substr(0,o.index))),o[1]?a.noLinks?m.push(encodeEntities(o[0])):o[3]?m.push('',encodeEntities(o[3]+o[4]),""):m.push('',encodeEntities(o[2]+"://"+o[4]),""):o[5]?m.push(a.noLinebreaks?" ":"
"):o[6]?(r=l[o[6]])&&(u=n(r))?(s=encodeEntities(c[r][1][0]),f=!0,m.push('',":",s,":")):m.push(encodeEntities(o[6])):o[8]&&(a.noLinks?m.push(o[7],encodeEntities(o[8])):m.push(o[7],'',encodeEntities(o[8]),"")),p=p.substr(o.index+o[0].length);return m.push(encodeEntities(p)),i=t(m.join("")),f&&(i=i.replace(//g,'')),e.trustAs("html",i)}function a(e){var t;if(t=e.match(f))return["youtube",t[1]];if(t=e.match(g))return["vimeo",t[1]];if(t=e.match(_))return["instagram",t[1]];if(t=e.match(y))return["vine",t[1]];if(t=e.match(w)){var n="explore,upload,pages,terms-of-use,mobile,jobs,imprint".split(",");if(-1!=n.indexOf(t[1]))return["soundcloud",t[0]]}if(!Config.Modes.chrome_packed){if(t=e.match(v))return["twitter",t[0]];if(t=e.match(b))return["facebook",t[0]]}return!1}function o(e,t){if(u)return e;if(!e||!e.length)return"";t=t||{},e=e.replace(/\ufe0f/g,"",e);for(var n,i,a=e,e=[];n=a.match(h);)e.push(a.substr(0,n.index)),e.push(n[6]?(r=l[n[6]])&&(i=c[r][1][0])?":"+i+":":n[0]:n[0]),a=a.substr(n.index+n[0].length);return e.push(a),e.join("")}var r,s=[],l={},c=Config.Emoji,d=18,u=-1!=navigator.userAgent.search(/OS X|iPhone|iPad|iOS|Android/i);for(r in c)s.push(c[r][0]),l[c[r][0]]=r;var p="a-z\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u00ff\\u0100-\\u024f\\u0253\\u0254\\u0256\\u0257\\u0259\\u025b\\u0263\\u0268\\u026f\\u0272\\u0289\\u028b\\u02bb\\u0300-\\u036f\\u1e00-\\u1eff\\u0400-\\u04ff\\u0500-\\u0527\\u2de0-\\u2dff\\ua640-\\ua69f\\u0591-\\u05bf\\u05c1-\\u05c2\\u05c4-\\u05c5\\u05c7\\u05d0-\\u05ea\\u05f0-\\u05f4\\ufb1d-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40-\\ufb41\\ufb43-\\ufb44\\ufb46-\\ufb4f\\u0610-\\u061a\\u0620-\\u065f\\u066e-\\u06d3\\u06d5-\\u06dc\\u06de-\\u06e8\\u06ea-\\u06ef\\u06fa-\\u06fc\\u06ff\\u0750-\\u077f\\u08a0\\u08a2-\\u08ac\\u08e4-\\u08fe\\ufb50-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\u200c\\u0e01-\\u0e3a\\u0e40-\\u0e4e\\u1100-\\u11ff\\u3130-\\u3185\\uA960-\\uA97F\\uAC00-\\uD7AF\\uD7B0-\\uD7FF\\u3003\\u3005\\u303b\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uff9f\\uffa1-\\uffdc",m="0-9._"+p,h=new RegExp("((?:(ftp|https?)://|(?:mailto:)?([A-Za-z0-9._%+-]+@))(\\S*\\.\\S*[^\\s.;,(){}<>\"']))|(\\n)|("+s.join("|")+")|(^|\\s)(#["+m+"]{2,20})","i"),f=/(?:https?:\/\/)?(?:www\.)?youtu(?:|\.be|be\.com|\.b)(?:\/v\/|\/watch\\?v=|e\/|(?:\/\??#)?\/watch(?:.+)v=)(.{11})(?:\&[^\s]*)?/,g=/(?:https?:\/\/)?(?:www\.)?vimeo\.com\/(\d+)/,_=/https?:\/\/(?:instagr\.am\/p\/|instagram\.com\/p\/)([a-zA-Z0-9\-\_]+)/i,y=/https?:\/\/vine\.co\/v\/([a-zA-Z0-9\-\_]+)/i,v=/https?:\/\/twitter\.com\/.+?\/status\/\d+/i,b=/https?:\/\/(?:www\.)?facebook\.com\/.+?\/posts\/\d+/i,w=/https?:\/\/(?:soundcloud\.com|snd\.sc)\/([a-zA-Z0-9%\-\_]+)\/([a-zA-Z0-9%\-\_]+)/i;return{wrapRichText:i,wrapPlainText:o,extractExternalEmbed:a}}]).service("StatusManager",["$timeout","$rootScope","MtpApiManager","IdleManager",function(e,t,n){function i(){l||(l=!0,t.$watch("idle.isIDLE",o),t.$watch("offline",o))}function a(e){var i=tsNow();if(!(e&&!s||!e&&5e4>i-s||t.offline))return s=e?0:i,n.invokeApi("account.updateStatus",{offline:e},{noErrorBox:!0})}function o(){r&&e.cancel(r),t.idle.isIDLE?r=e(function(){a(!0)},5e3):(a(!1),r=e(o,6e4))}var r,s=0,l=!1;return{start:i}}]).service("NotificationsManager",["$rootScope","$window","$timeout","$interval","$q","_","MtpApiManager","AppPeersManager","IdleManager","Storage","AppRuntimeManager",function(e,t,n,i,a,o,r,s,l,c,d){function u(e){return void 0!==D[e]?D[e]:D[e]=r.invokeApi("account.getNotifySettings",{peer:{_:"inputNotifyPeer",peer:s.getInputPeerByID(e)}})}function p(e,t){D[e]=a.when(t)}function m(e,t){p(e,t);var n=angular.copy(t);return n._="inputPeerNotifySettings",r.invokeApi("account.updateNotifySettings",{peer:{_:"inputNotifyPeer",peer:s.getInputPeerByID(e)},settings:n})}function h(e){return u(e).then(function(e){return"peerNotifySettings"==e._&&1e3*e.mute_until>tsNow()})}function f(){if(w(),!x)return!1;"Notification"in window&&"granted"!==Notification.permission&&"denied"!==Notification.permission&&$(t).on("click",g);try{"onbeforeunload"in window&&$(t).on("beforeunload",b)}catch(e){}}function g(){Notification.requestPermission(),$(t).off("click",g)}function _(e){return Config.Navigator.ffos?e.image="https://raw.githubusercontent.com/zhukov/webogram/master/app/img/icons/icon60.png":e.image||(e.image="img/icons/icon60.png"),E++,c.get("notify_nosound","notify_volume").then(function(e){(!e[0]&&e[1]===!1||e[1]>0)&&y(e[1]||.5)}),!x||"Notification"in window&&"granted"!==Notification.permission?!1:void c.get("notify_nodesktop","notify_novibrate").then(function(t){if(t[0]){if(I&&!t[1])return void navigator.vibrate([200,100,200])}else{var n,i=++T,a=e.key||"k"+i;if("Notification"in window)n=new Notification(e.title,{icon:e.image||"",body:e.message||"",tag:e.tag||""});else if("mozNotification"in navigator)n=navigator.mozNotification.createNotification(e.title,e.message||"",e.image||"");else{if(!C)return;window.external.msSiteModeClearIconOverlay(),window.external.msSiteModeSetIconOverlay("img/icons/icon16.png",e.title),window.external.msSiteModeActivate(),n={index:i}}n.onclick=function(){n.close(),d.focus(),b(),e.onclick&&e.onclick()},n.onclose=function(){delete A[a],b()},n.show&&n.show(),A[a]=n}})}function y(e){var t="img/sound_a.wav",n=$("#notify_sound").html('');n.find("audio")[0].volume=e}function v(e){var t=A[e];if(t){E>0&&E--;try{t.close?t.close():C&&t.index==T&&window.external.msSiteModeClearIconOverlay()}catch(n){}delete E[e]}}function b(){C?window.external.msSiteModeClearIconOverlay():angular.forEach(A,function(e){try{e.close&&e.close()}catch(t){}}),A={},E=0}function w(){if(U)return!1;if(navigator.push&&Config.Navigator.ffos&&Config.Modes.packed){var e=navigator.push.register();e.onsuccess=function(){clearTimeout(R),console.log(dT(),"Push registered",e.result),U=e.result,r.invokeApi("account.registerDevice",{token_type:4,token:U,device_model:navigator.userAgent||"Unknown UserAgent",system_version:navigator.platform||"Unknown Platform",app_version:Config.App.version,app_sandbox:!1,lang_code:navigator.language||"en"})},e.onerror=function(e){console.error("Push register error",e,e.toString()),R=setTimeout(w,B),B=Math.min(3e4,1.5*B)}}}function k(){return I}navigator.vibrate=navigator.vibrate||navigator.mozVibrate||navigator.webkitVibrate;var C=!1;try{window.external&&window.external.msIsSiteMode()&&(C=!0)}catch(S){}var M,x=C||"Notification"in window||"mozNotification"in navigator,A={},T=0,E=0,I=!!navigator.vibrate,D={},P=$('link[rel="icon"]:first'),N=$(''),L=o.pluralize("page_title_pluralize_notifications"),O=document.title;e.$watch("idle.isIDLE",function(e){e||b(),Config.Navigator.mobile||(i.cancel(M),e?(O=document.title,M=i(function(){var e=tsNow();if(!E||e%2e3>1e3){document.title=O;var t=$('link[rel="icon"]:first');-1!=t.attr("href").indexOf("favicon_unread")&&t.replaceWith(P)}else document.title=L(E),$('link[rel="icon"]:first').replaceWith(N)},1e3)):(document.title=O,$('link[rel="icon"]:first').replaceWith(P)))}),e.$on("apiUpdate",function(e,t){switch(t._){case"updateNotifySettings":if("notifyPeer"==t.peer._){var n=s.getPeerID(t.peer.peer);p(n,t.notify_settings)}}});var U=!1;return window.navigator.mozSetMessageHandler&&(window.navigator.mozSetMessageHandler("push",function(t){console.log(dT(),"received push",t),e.$broadcast("push_received") }),window.navigator.mozSetMessageHandler("push-register",function(e){console.log(dT(),"received push",e),U=!1,w()})),{start:f,notify:_,cancel:v,clear:b,getPeerSettings:u,getPeerMuted:h,savePeerSettings:p,updatePeerSettings:m,getVibrateSupport:k,testSound:y};var B,R}]).service("ErrorService",["$rootScope","$modal","$window",function(e,t,n){function i(n,i){if(r>=2)return console.log("Skip error box, too many open",r,n,i),!1;i=i||{};var a=e.$new();angular.extend(a,n),r++;var o=t.open({templateUrl:templateUrl("error_modal"),scope:a,windowClass:i.windowClass||"error_modal_window"});return o.result["finally"](function(){r--}),o}function a(e,t){return i({title:e,description:t})}function o(n,i){i=i||{};var a=e.$new();angular.extend(a,n);var o=t.open({templateUrl:templateUrl("confirm_modal"),scope:a,windowClass:i.windowClass||"confirm_modal_window"});return o.result}var r=0;return n.safeConfirm=function(e,t){"string"==typeof e&&(e={message:e}),o(e).then(function(e){t(e||!0)},function(){t(!1)})},{show:i,alert:a,confirm:o}}]).service("PeersSelectService",["$rootScope","$modal",function(e,t){function n(n){var i=e.$new();return n&&angular.extend(i,n),t.open({templateUrl:templateUrl("peer_select"),controller:"PeerSelectController",scope:i,windowClass:"peer_select_window mobile_modal"}).result}return{selectPeer:n}}]).service("ContactsSelectService",["$rootScope","$modal",function(e,t){function n(n,i){i=i||{};var a=e.$new();return a.multiSelect=n,angular.extend(a,i),!a.action&&n&&(a.action="select"),t.open({templateUrl:templateUrl("contacts_modal"),controller:"ContactsModalController",scope:a,windowClass:"contacts_modal_window mobile_modal"}).result}return{selectContacts:function(e){return n(!0,e)},selectContact:function(e){return n(!1,e)}}}]).service("ChangelogNotifyService",["Storage","$rootScope","$modal",function(e,t,n){function i(e,t){"string"!=typeof e&&(e=""),"string"!=typeof t&&(t=""),e=e.replace(/^\s+|\s+$/g,"").split("."),t=t.replace(/^\s+|\s+$/g,"").split(".");var n,i=Math.max(e.length,t.length);for(n=0;i>n;n++)if(e[n]!=t[n])return e[n]>t[n]?1:-1;return 0}function a(){e.get("last_version").then(function(t){t!=Config.App.version&&(t&&o(t),e.set({last_version:Config.App.version}))})}function o(e){var a=t.$new();a.lastVersion=e,a.canShowVersion=function(t){return a.lastVersion===!1||void 0===a.lastVersion?!0:i(t,e)>=0},n.open({controller:"ChangelogModalController",templateUrl:templateUrl("changelog_modal"),scope:a,windowClass:"changelog_modal_window mobile_modal"})}return{checkUpdate:a,showChangelog:o}}]).service("HttpsMigrateService",["ErrorService","Storage",function(e,t){function n(){t.get("https_dismiss").then(function(n){(!n||tsNow()>n+432e5)&&e.confirm({type:"MIGRATE_TO_HTTPS"}).then(function(){var e;try{e=window.open("https://web.telegram.org","_blank")}catch(t){}e||(location="https://web.telegram.org")},function(){t.set({https_dismiss:tsNow()})})})}function i(){a||"http:"!=location.protocol||-1==Config.App.domains.indexOf(location.hostname)||(a=!0,setTimeout(n,12e4))}var a=!1;return{start:i,check:n}}]).service("LayoutSwitchService",["ErrorService","Storage","AppRuntimeManager","$window",function(e,t,n,i){function a(e){t.set({current_layout:e?"mobile":"desktop",layout_confirmed:{width:$(window).width(),mobile:e}}).then(function(){n.reload()})}function o(n){if(!l){var i=$(window).width();if(!(!n&&Config.Mobile&&800>=i)){var o=600>i;o!=Config.Mobile&&t.get("layout_confirmed").then(function(n){return n&&(n.mobile?i==n.width:i==n.width)?!1:(l=!0,void e.confirm({type:o?"SWITCH_MOBILE_VERSION":"SWITCH_DESKTOP_VERSION"}).then(function(){t.remove("layout_confirmed"),a(o)},function(){t.set({layout_confirmed:{width:i,mobile:Config.Mobile}}),l=!1}))})}}}function r(){s||Config.Navigator.mobile||(s=!0,o(),$(i).on("resize",o))}var s=!1,l=!1;return{start:r,switchLayout:a}}]),angular.module("myApp.controllers",["myApp.i18n"]).controller("AppWelcomeController",["$scope","$location","MtpApiManager","ErrorService","ChangelogNotifyService","LayoutSwitchService",function(e,t,n,i,a,o){n.getUserID().then(function(n){return n?void t.url("/im"):"http:"==location.protocol&&-1!=Config.App.domains.indexOf(location.hostname)?void(location="https://web.telegram.org"):void(e.showWelcome=!0)}),a.checkUpdate(),o.start()}]).controller("AppLoginController",["$scope","$rootScope","$location","$timeout","$modal","$modalStack","MtpApiManager","ErrorService","NotificationsManager","ChangelogNotifyService","IdleManager","LayoutSwitchService","_",function(e,t,n,i,a,o,r,s,l,c,d,u,p){function m(){var t=(navigator.language||"").toLowerCase(),n=Config.LangCountries[t],i=!Config.Navigator.mobile;if(h(-1==["en","en-us","en-uk"].indexOf(t)?void 0!==n?n:t.indexOf("-")>0?t.split("-")[1].toUpperCase():"US":"US"),i){var a=e.credentials.phone_country;r.invokeApi("help.getNearestDc",{},{dcID:2,createNetworker:!0}).then(function(t){a==e.credentials.phone_country&&h(t.country),t.nearest_dc!=t.this_dc&&r.getNetworker(t.nearest_dc,{createNetworker:!0})})}}function h(e){var t,n;for(t=0;to&&!a.indexOf(i)&&(o=i.length,r=p(Config.CountryCodes[t][1]+"_raw"));e.credentials.phone_full=a,e.credentials.phone_country_name=r||p("login_controller_unknown_country_raw")}function _(e){r.setUserAuth(v.dcID,{expires:e.expires,id:e.user.id}),i.cancel(w),n.url("/im")}function y(){i.cancel(w),e.credentials.viaApp||(--e.callPending.remaining?w=i(y,1e3):(e.callPending.success=!1,r.invokeApi("auth.sendCall",{phone_number:e.credentials.phone_full,phone_code_hash:e.credentials.phone_code_hash},v).then(function(){e.callPending.success=!0})))}o.dismissAll(),d.start(),r.getUserID().then(function(e){return e?void n.url("/im"):void("http:"==location.protocol&&-1!=Config.App.domains.indexOf(location.hostname)&&(location="https://web.telegram.org/#/login"))});var v={dcID:2,createNetworker:!0},b=!1;e.credentials={phone_country:"",phone_country_name:"",phone_number:"",phone_full:""},e.progress={},e.callPending={},e.chooseCountry=function(){var e=a.open({templateUrl:templateUrl("country_select_modal"),controller:"CountrySelectModalController",windowClass:"countries_modal_window mobile_modal"});e.result.then(f)},e.$watch("credentials.phone_country",g),e.$watch("credentials.phone_number",g),m();var w;e.sendCode=function(){i.cancel(w),s.confirm({type:"LOGIN_PHONE_CORRECT",country_code:e.credentials.phone_country,phone_number:e.credentials.phone_number}).then(function(){e.progress.enabled=!0,onContentLoaded(function(){e.$broadcast("ui_height")});var n=tsNow();r.invokeApi("auth.sendCode",{phone_number:e.credentials.phone_full,sms_type:5,api_id:Config.App.id,api_hash:Config.App.hash},v).then(function(t){e.progress.enabled=!1,e.credentials.phone_code_hash=t.phone_code_hash,e.credentials.phone_occupied=t.phone_registered,e.credentials.viaApp="auth.sentAppCode"==t._,e.callPending.remaining=t.send_call_timeout||60,e.error={},y(),onContentLoaded(function(){e.$broadcast("ui_height")})},function(t){switch(e.progress.enabled=!1,console.log("sendCode error",t),t.type){case"PHONE_NUMBER_INVALID":e.error={field:"phone"},t.handled=!0}})["finally"](function(){(t.idle.isIDLE||tsNow()-n>6e4)&&l.notify({title:"Telegram",message:"Your authorization key was successfully generated! Open the app to log in.",tag:"auth_key"})})})},e.sendSms=function(){e.credentials.viaApp&&(delete e.credentials.viaApp,r.invokeApi("auth.sendSms",{phone_number:e.credentials.phone_full,phone_code_hash:e.credentials.phone_code_hash},v).then(y))},e.editPhone=function(){i.cancel(w),delete e.credentials.phone_code_hash,delete e.credentials.phone_unoccupied,delete e.credentials.phone_code_valid,delete e.credentials.viaApp,delete e.callPending.remaining,delete e.callPending.success},e.logIn=function(t){var n="auth.signIn",i={phone_number:e.credentials.phone_full,phone_code_hash:e.credentials.phone_code_hash,phone_code:e.credentials.phone_code};t&&(n="auth.signUp",angular.extend(i,{first_name:e.credentials.first_name,last_name:e.credentials.last_name})),e.progress.enabled=!0,r.invokeApi(n,i,v).then(_,function(t){if(e.progress.enabled=!1,400==t.code&&"PHONE_NUMBER_UNOCCUPIED"==t.type)return t.handled=!0,e.credentials.phone_code_valid=!0,void(e.credentials.phone_unoccupied=!0);if(400==t.code&&"PHONE_NUMBER_OCCUPIED"==t.type)return t.handled=!0,e.logIn(!1);switch(t.type){case"FIRSTNAME_INVALID":e.error={field:"first_name"},t.handled=!0;break;case"LASTNAME_INVALID":e.error={field:"last_name"},t.handled=!0;break;case"PHONE_CODE_INVALID":e.error={field:"phone_code"},delete e.credentials.phone_code_valid,t.handled=!0}})},c.checkUpdate(),u.start()}]).controller("AppIMController",["$scope","$location","$routeParams","$modal","$rootScope","$modalStack","MtpApiManager","AppUsersManager","AppChatsManager","ContactsSelectService","ChangelogNotifyService","ErrorService","AppRuntimeManager","HttpsMigrateService","LayoutSwitchService",function(e,t,n,i,a,o,r,s,l,c,d,u,p,m,h){function f(){if(n.q){if(n.q!==g&&(e.search.query=g=n.q,e.search.messages=!0,void 0!==e.curDialog))return!1}else g=!1;e.curDialog={peer:n.p||!1,messageID:n.m||!1}}e.$on("$routeUpdate",f),e.$on("history_focus",function(n,i){o.dismissAll(),i.peerString==e.curDialog.peer&&i.messageID==e.curDialog.messageID?e.$broadcast(i.messageID?"ui_history_change_scroll":"ui_history_focus"):t.url("/im?p="+i.peerString+(i.messageID?"&m="+i.messageID:""))}),e.isLoggedIn=!0,e.isEmpty={},e.search={},e.historyFilter={mediaType:!1},e.historyPeer={},e.historyState={selectActions:!1,typing:[]},e.openSettings=function(){i.open({templateUrl:templateUrl("settings_modal"),controller:"SettingsModalController",windowClass:"settings_modal_window mobile_modal"})},e.openContacts=function(){c.selectContact().then(function(t){e.dialogSelect(s.getUserString(t))})},e.openGroup=function(){c.selectContacts({action:"new_group"}).then(function(t){if(1==t.length)e.dialogSelect(s.getUserString(t[0]));else if(t.length>1){var n=a.$new();n.userIDs=t,i.open({templateUrl:templateUrl("chat_create_modal"),controller:"ChatCreateModalController",scope:n,windowClass:"group_edit_modal_window mobile_modal"})}})},e.importContact=function(){s.openImportContact().then(function(e){e&&a.$broadcast("history_focus",{peerString:s.getUserString(e)})})},e.dialogSelect=function(e,t){var n={peerString:e};t&&(n.messageID=t),a.$broadcast("history_focus",n)},e.logOut=function(){u.confirm({type:"LOGOUT"}).then(function(){r.logOut().then(function(){location.hash="/login",p.reload()})})},e.showPeerInfo=function(){e.curDialog.peerID>0?s.openUser(e.curDialog.peerID):e.curDialog.peerID<0&&l.openChat(-e.curDialog.peerID)},e.toggleEdit=function(){e.$broadcast("history_edit_toggle")},e.selectedFlush=function(){e.$broadcast("history_edit_flush")},e.toggleMedia=function(t){e.$broadcast("history_media_toggle",t)},e.returnToRecent=function(){e.$broadcast("history_return_recent")},e.toggleSearch=function(){e.$broadcast("dialogs_search_toggle")},f();var g=!1;d.checkUpdate(),m.start(),h.start()}]).controller("AppImDialogsController",["$scope","$location","$q","$timeout","$routeParams","MtpApiManager","AppUsersManager","AppChatsManager","AppMessagesManager","AppPeersManager","PhonebookContactsService","ErrorService",function(e,t,n,i,a,o,r,s,l,c,d){function u(t){var a,r=e.search.messages&&e.search.query.length>0,s=++v;return i.cancel($),r?($=t?n.when():i(angular.noop,500),a=$.then(function(){return l.getSearch({_:"inputPeerEmpty"},e.search.query,{_:"inputMessagesFilterEmpty"},_)})):a=l.getDialogs(e.search.query,_),a.then(function(e){if(s!=v)return n.reject();if(r){var t=[];angular.forEach(e.history,function(e){var n=l.getMessage(e),i=l.getMessagePeer(n);t.push({peerID:i,top_message:e,unread_count:-1})}),e={count:e.count,dialogs:t}}return e},function(e){return 401==e.code&&(o.logOut()["finally"](function(){"http:"==location.protocol&&-1!=Config.App.domains.indexOf(location.hostname)?location="https://web.telegram.org/#/login":(location.hash="/login",AppRuntimeManager.reload())}),e.handled=!0),n.reject()})}function p(t){g=0,_=0,y=!1,b={},f=!1,u(t).then(function(t){e.dialogs=[],e.contacts=[],e.foundUsers=[],t.dialogs.length&&(g+=t.dialogs.length,_=t.dialogs[t.dialogs.length-1].top_message,y=null===t.count||g=5&&i(function(){t==v&&o.invokeApi("contacts.search",{q:e.search.query,limit:10}).then(function(n){r.saveApiUsers(n.users),t==v&&(e.foundUsers=[],angular.forEach(n.results,function(t){var n=t.user_id;void 0===b[n]&&e.foundUsers.push({userID:n,user:r.getUser(n),peerString:r.getUserString(n)})}))},function(e){400==e.code&&(e.handled=!0)})},500)}function h(){return!f||y&&g?y||e.search.messages||!e.search.query&&e.dialogs.length?void u().then(function(t){t.dialogs.length&&(g+=t.dialogs.length,_=t.dialogs[t.dialogs.length-1].top_message,y=null===t.count||g-1?i=e.peerHistories[o]:(i={peerID:t,messages:[]},e.peerHistories.unshift(i),a=e.peerHistories.length-r,a>0&&e.peerHistories.splice(r-1,a),i)}function g(t){var n;for(n=0;n=0;o--)r=i.history[o],r>U&&P.messages.push(s.wrapForHistory(r));i.history.length?(U=i.history.length>=a?i.history[0]:0,s.regroupWrappedHistory(P.messages,-a)&&e.$broadcast("messages_regroup"),delete e.state.empty,e.$broadcast("ui_history_append")):U=0,e.skippedHistory=L=U>0,j&&b()}})}}function b(){if(N){if(z)return void(j=!0);j=!1,H=!0;var t=F,n=q,i=e.historyFilter.mediaType&&{_:R[e.historyFilter.mediaType]},a=Config.Mobile?20:0,o=i?s.getSearch(e.curDialog.inputPeer,"",i,O,a):s.getHistory(e.curDialog.inputPeer,O,a);o.then(function(i){H=!1,t==F&&n==q&&(angular.forEach(i.history,function(e){P.messages.unshift(s.wrapForHistory(e))}),N=null===i.count||i.history.length&&P.messages.length=i-1?t.history[0]:0,O=t.history[t.history.length-1],e.skippedHistory=L=U>0,N=null===t.count||n&&nt;for(o=0;o0){var t=[];angular.forEach(e.selectedMsgs,function(e,n){t.push(n)}),s.deleteMessages(t).then(function(){S()})}}function A(){if(e.selectedCount>0){var t=[];angular.forEach(e.selectedMsgs,function(e,n){t.push(n)}),d.selectPeer({confirm_type:"FORWARD_PEER"}).then(function(e){var n=l.getPeerID(e);s.forwardMessages(n,t).then(function(){S(),i.$broadcast("history_focus",{peerString:e})})})}}function T(){e.historyState.selectActions?S():(e.historyState.selectActions=!0,e.$broadcast("ui_panel_update"))}function E(t){e.historyFilter.mediaType=t||!1,P.messages=[],e.state.empty=!0,w()}function I(){e.historyFilter.mediaType?E():e.curDialog.messageID?i.$broadcast("history_focus",{peerString:e.curDialog.peer}):w(!0)}e.$watch("curDialog",h),c.attach(),u.start(),p.start(),e.peerHistories=[],e.skippedHistory=!1,e.selectedMsgs={},e.selectedCount=0,e.historyState.selectActions=!1,e.missedCount=0,e.state={},e.toggleMessage=C,e.selectedDelete=x,e.selectedForward=A,e.selectedCancel=S,e.selectedFlush=M,e.toggleEdit=T,e.toggleMedia=E,e.returnToRecent=I,e.$on("history_edit_toggle",T),e.$on("history_edit_flush",M),e.$on("history_media_toggle",function(e,t){E(t)}),e.$on("history_return_recent",I);var D,P=!1,N=!1,L=!1,O=0,U=0,B=!1,R={photos:"inputMessagesFilterPhotos",video:"inputMessagesFilterVideo",documents:"inputMessagesFilterDocument",audio:"inputMessagesFilterAudio"},F=0,q=0,H=!1,j=!1,V=0,z=!1,W=!1;e.$on("history_update",angular.noop);var G={};e.$on("history_append",function(t,a){var o=g(a.peerID);if(o){var r=a.peerID==e.curDialog.peerID;if(r){if(e.historyFilter.mediaType||e.skippedHistory)return void(a.my?I():e.missedCount++);delete e.state.empty}o.messages.push(s.wrapForHistory(a.messageID)),s.regroupWrappedHistory(o.messages,-3)&&e.$broadcast("messages_regroup"),r&&(e.historyState.typing.splice(0,e.historyState.typing.length),e.$broadcast("ui_history_append_new",{my:a.my}),a.my&&e.historyUnreadAfter&&(delete e.historyUnreadAfter,e.$broadcast("messages_unread_after")),i.idle.isIDLE||n(function(){s.readHistory(e.curDialog.inputPeer)}))}}),e.$on("history_delete",function(t,n){var i=g(n.peerID);if(i){var a,o=[];for(a=0;a0){t=t.replace(/:([a-z0-9\-\+\*_]+?):/gi,function(e,t){var n=$.emojiarea.reverseIcons[t];return void 0!==n?n:e});var n=0;do!function(e,t,n){setTimeout(function(){o.sendText(e,t)},n)}(e.curDialog.peerID,t.substr(0,4096),n),t=t.substr(4096),n+=100;while(t.length)}s(),e.$broadcast("ui_message_send")}),cancelEvent(n)}function s(t){t?i.get("draft"+e.curDialog.peerID).then(function(t){e.draftMessage.text=t||"",e.$broadcast("ui_peer_draft")}):(e.draftMessage.text="",e.$broadcast("ui_peer_draft"))}function l(t){if(t&&t.length){e.historyFilter.mediaType||e.skippedHistory||o.readHistory(e.curDialog.inputPeer);var n={};n["draft"+e.curDialog.peerID]=t,i.set(n)}else i.remove("draft"+e.curDialog.peerID)}function c(){n.invokeApi("messages.setTyping",{peer:e.curDialog.inputPeer,action:{_:"sendMessageTypingAction"}})}function d(t){if(angular.isArray(t)&&t.length)for(var n=0;n=0?i+n:0,s=++w,l=r>=_.length?u():e.when();l.then(function(){if(s==w){var e=_[r],i=o.getMessage(e);if(!(i&&i.media&&i.media.photo&&i.media.photo.id))return void console.error("Invalid photo message",r,_,e,i);t.messageID=e,t.photoID=i.media.photo.id,t.photo=a.wrapForFull(t.photoID),y[t.messageID]=!0,p(),n>0&&b&&_.indexOf(e)+1>=_.length?u():d(n)}})}function d(e){var n=0>e?[-1,-2]:[1,2],i=_.indexOf(t.messageID);angular.forEach(n,function(e){var t=_[i+e];if(void 0!==t&&void 0===y[t]){y[t]=!0;var n=o.getMessage(t),r=n.media.photo.id;a.preloadPhoto(r)}})}function u(){return $?$:$=o.getSearch(h,f,g,v).then(function(t){return t.history.length?(v=t.history[t.history.length-1],_=_.concat(t.history),b=_.length0,t.nav.hasPrev=b||n<_.length-1,t.canForward=t.canDelete=t.messageID>0}if(t.photo=a.wrapForFull(t.photoID),t.nav={},t.download=function(){a.downloadPhoto(t.photoID)},t.messageID){t.forward=function(){var e=t.messageID;s.selectPeer({confirm_type:"FORWARD_PEER"}).then(function(t){var i=r.getPeerID(t);o.forwardMessages(i,[e]).then(function(){n.$broadcast("history_focus",{peerString:t})})})},t.goToMessage=function(){var e=t.messageID,a=o.getMessagePeer(o.getMessage(e)),s=r.getPeerString(a);i.dismiss(),n.$broadcast("history_focus",{peerString:s,messageID:e})},t["delete"]=function(){var e=t.messageID;l.confirm({type:"MESSAGE_DELETE"}).then(function(){o.deleteMessages([e])})};var m=o.getMessagePeer(o.getMessage(t.messageID)),h=r.getInputPeerByID(m),f="",g={_:"inputMessagesFilterPhotos"},_=[t.messageID],y={},v=t.messageID,b=!0;y[t.messageID]=!0,p(),o.getSearch(h,f,g,0,1e3).then(function(e){e.history.indexOf(t.messageID)>=0&&(_=e.history,v=_[_.length-1],p(),d(1)),u()},u);var w=0,$=!1;t.nav.next=function(){return t.nav.hasNext?void c(-1):!1},t.nav.prev=function(){return t.nav.hasPrev?void c(1):!1},t.$on("history_delete",function(e,n){if(n.peerID==m){if(n.msgs[t.messageID])if(t.nav.hasNext)t.nav.next();else{if(!t.nav.hasPrev)return i.dismiss();t.nav.prev()}for(var a=[],o=0;o<_.length;o++)n.msgs[_[o]]||a.push(_[o]);_=a}})}}]).controller("UserpicModalController",["$q","$scope","$rootScope","$modalInstance","AppPhotosManager","AppUsersManager","AppPeersManager","AppMessagesManager","PeersSelectService","ErrorService",function(e,t,n,i,a,o,r,s,l,c){function d(n){var i=h.indexOf(t.photoID),o=i>=0?i+n:0,r=++_,s=o>=h.length?u():e.when();s.then(function(){r==_&&(t.photoID=h[o],t.photo=a.wrapForFull(t.photoID),p())})}function u(){return y?y:y=a.getUserPhotos(m,f).then(function(e){f=e.photos[e.photos.length-1],h=h.concat(e.photos),g=h.length0,t.nav.hasPrev=g||e=0&&(h=e.photos,f=h[h.length-1],g=h.length0&&i[3]<=1?i[3]:0:.5,t.notify.canVibrate=c.getVibrateSupport(),t.notify.vibrate=!i[4],t.notify.volumeOf4=function(){return 1+Math.ceil((t.notify.volume-.1)/.33)},t.toggleSound=function(){t.notify.volume=t.notify.volume?0:.5};var a;t.$watch("notify.volume",function(e,t){e!==t&&(l.set({notify_volume:e}),l.remove("notify_nosound"),c.clear(),a&&n.cancel(a),a=n(function(){c.testSound(e)},500))}),t.toggleDesktop=function(){t.notify.desktop=!t.notify.desktop,t.notify.desktop?l.remove("notify_nodesktop"):l.set({notify_nodesktop:!0})},t.toggleVibrate=function(){t.notify.vibrate=!t.notify.vibrate,t.notify.vibrate?l.remove("notify_novibrate"):l.set({notify_novibrate:!0})},t.toggleCtrlEnter=function(n){t.send.enter=n,t.send.enter?l.remove("send_ctrlenter"):l.set({send_ctrlenter:!0}),e.$broadcast("settings_changed")}}),t.openChangelog=function(){p.showChangelog(!1)}}]).controller("ChangelogModalController",["$scope","$modal",function(e,t){e.changeUsername=function(){t.open({templateUrl:templateUrl("username_edit_modal"),controller:"UsernameEditModalController",windowClass:"username_edit_modal_window mobile_modal"})}}]).controller("ProfileEditModalController",["$scope","$modalInstance","AppUsersManager","MtpApiManager",function(e,t,n,i){e.profile={},e.error={},i.getUserID().then(function(t){e.profile=n.getUser(t)}),e.updateProfile=function(){e.profile.updating=!0,i.invokeApi("account.updateProfile",{first_name:e.profile.first_name||"",last_name:e.profile.last_name||""}).then(function(i){e.error={},n.saveApiUser(i),t.close()},function(n){switch(n.type){case"FIRSTNAME_INVALID":e.error={field:"first_name"},n.handled=!0;break;case"LASTNAME_INVALID":e.error={field:"last_name"},n.handled=!0;break;case"NAME_NOT_MODIFIED":n.handled=!0,t.close()}})["finally"](function(){delete e.profile.updating})}}]).controller("UsernameEditModalController",["$scope","$modalInstance","AppUsersManager","MtpApiManager",function(e,t,n,i){e.profile={},e.error={},i.getUserID().then(function(t){e.profile=angular.copy(n.getUser(t))}),e.updateUsername=function(){e.profile.updating=!0,i.invokeApi("account.updateUsername",{username:e.profile.username||""}).then(function(i){e.checked={},n.saveApiUser(i),t.close()},function(e){"USERNAME_NOT_MODIFIED"==e.type&&(e.handled=!0,t.close())})["finally"](function(){delete e.profile.updating})},e.$watch("profile.username",function(t){return t.length?void i.invokeApi("account.checkUsername",{username:t||""}).then(function(n){e.profile.username==t&&(e.checked=n?{success:!0}:{error:!0})},function(n){if(e.profile.username==t)switch(n.type){case"USERNAME_INVALID":e.checked={error:!0},n.handled=!0}}):void(e.checked={})})}]).controller("ContactsModalController",["$scope","$timeout","$modal","$modalInstance","MtpApiManager","AppUsersManager","ErrorService",function(e,t,n,i,a,o){function r(){e.selectedContacts={},e.selectedCount=0}function s(n){var i=++l,r=[];o.getContacts(n).then(function(t){i==l&&(e.contacts=[],e.slice.limit=20,angular.forEach(t,function(t){var n={userID:t,user:o.getUser(t),userPhoto:o.getUserPhoto(t,"User")};r.push(t),e.contacts.push(n)}),e.contactsEmpty=n?!1:!e.contacts.length,e.$broadcast("contacts_change"))}),n&&n.length>=5&&t(function(){i==l&&a.invokeApi("contacts.search",{q:n,limit:10}).then(function(t){o.saveApiUsers(t.users),i==l&&angular.forEach(t.results,function(t){var n=t.user_id;-1==r.indexOf(n)&&e.contacts.push({userID:n,user:o.getUser(n),peerString:o.getUserString(n),found:!0})})},function(e){400==e.code&&(e.handled=!0)})},500)}e.contacts=[],e.foundUsers=[],e.search={},e.slice={limit:20,limitDelta:20};var l=0;if(r(),e.disabledContacts={},e.disabled)for(var c=0;c0){var t=[];return angular.forEach(e.selectedContacts,function(e,n){t.push(n)}),i.close(t)}},e.deleteSelected=function(){if(e.selectedCount>0){var t=[];angular.forEach(e.selectedContacts,function(e,n){t.push(n)}),o.deleteContacts(t).then(function(){e.toggleEdit(!1)})}},e.importContact=function(){o.openImportContact()}}]).controller("PeerSelectController",["$scope","$modalInstance","$q","AppPeersManager","ErrorService",function(e,t,n,i,a){e.dialogSelect=function(o){var r;if(e.confirm_type){var s=i.getPeerID(o),l=i.getPeer(s);r=a.confirm({type:e.confirm_type,peer_id:s,peer_data:l})}else r=n.when();r.then(function(){t.close(o)})},e.toggleSearch=function(){e.$broadcast("dialogs_search_toggle")}}]).controller("ChatCreateModalController",["$scope","$modalInstance","$rootScope","MtpApiManager","AppUsersManager","AppChatsManager","ApiUpdatesManager",function(e,t,n,i,a,o,r){e.group={name:""},e.createGroup=function(){if(e.group.name){e.group.creating=!0;var t=[];return angular.forEach(e.userIDs,function(e){t.push(a.getUserInput(e))}),i.invokeApi("messages.createChat",{title:e.group.name,users:t}).then(function(e){r.processUpdateMessage({_:"updates",seq:e.seq,users:e.users,chats:e.chats,updates:[{_:"updateNewMessage",message:e.message,pts:e.pts}]});var t=o.getChatString(e.message.to_id.chat_id);n.$broadcast("history_focus",{peerString:t})})["finally"](function(){delete e.group.creating})}}}]).controller("ChatEditModalController",["$scope","$modalInstance","$rootScope","MtpApiManager","AppUsersManager","AppChatsManager","ApiUpdatesManager",function(e,t,n,i,a,o,r){var s=o.getChat(e.chatID);e.group={name:s.title},e.updateGroup=function(){return e.group.name?e.group.name==s.title?t.close():(e.group.updating=!0,i.invokeApi("messages.editChatTitle",{chat_id:e.chatID,title:e.group.name}).then(function(t){r.processUpdateMessage({_:"updates",seq:t.seq,users:t.users,chats:t.chats,updates:[{_:"updateNewMessage",message:t.message,pts:t.pts}]});var i=o.getChatString(e.chatID);n.$broadcast("history_focus",{peerString:i})})["finally"](function(){delete e.group.updating})):void 0}}]).controller("ImportContactModalController",["$scope","$modalInstance","$rootScope","AppUsersManager","ErrorService","PhonebookContactsService",function(e,t,n,i,a,o){void 0===e.importContact&&(e.importContact={}),e.phonebookAvailable=o.isAvailable(),e.doImport=function(){e.importContact&&e.importContact.phone&&(e.progress={enabled:!0},i.importContact(e.importContact.phone,e.importContact.first_name||"",e.importContact.last_name||"").then(function(e){e||a.show({error:{code:404,type:"USER_NOT_USING_TELEGRAM"}}),t.close(e)})["finally"](function(){delete e.progress.enabled}))},e.importPhonebook=function(){o.openPhonebookImport().result.then(function(e){e?t.close(e[0]):t.dismiss()})}}]).controller("CountrySelectModalController",["$scope","$modalInstance","$rootScope","SearchIndexManager","_",function(e,t,n,i,a){e.search={},e.slice={limit:20,limitDelta:20};for(var o=i.createIndex(),r=0;r5184e5?o=n?"mediumDate":"shortDate":a>432e5&&(o=n?"EEEE":"EEE"),t(i,o)}}]).filter("time",["$filter",function(e){var t={},n=e("date"),i=Config.Mobile?"shortTime":"mediumTime";return function(e){return t[e]?t[e]:t[e]=n(1e3*e,i)}}]).filter("myDate",["$filter",function(e){var t={},n=e("date");return function(e){return t[e]?t[e]:t[e]=n(1e3*e,"fullDate")}}]).filter("duration",[function(){return function(e){e=parseInt(e),isNaN(e)&&(e=0);var t=e%60,n=Math.floor((e-t)/60);return 10>t&&(t="0"+t),n+":"+t}}]).filter("durationRemains",["$filter",function(e){var t=e("duration");return function(e,n){return"-"+t(n-e)}}]).filter("phoneNumber",[function(){return function(e){var t=" ";return e=(e||"").replace(/\D/g,""),"7"==e.charAt(0)&&11==e.length?"+"+e.charAt(0)+t+"("+e.substr(1,3)+")"+t+e.substr(4,3)+"-"+e.substr(7,2)+"-"+e.substr(9,2):"+"+e}}]).filter("formatSize",[function(){return function(e,t){if(!e)return"0";if(1024>e)return e+" b";if(1048576>e)return Math.round(e/1024)+" Kb";var n=e/1048576;return n=t?n.toFixed(1):Math.round(10*n)/10,n+" Mb"}}]).filter("formatSizeProgress",["$filter","_",function(e,t){var n=e("formatSize");return function(e){var i=n(e.done,!0),a=i.split(" "),o=n(e.total),r=o.split(" ");return r[1]===a[1]?t("format_size_progress_mulitple",{done:a[0],total:r[0],parts:a[1]||""}):t("format_size_progress",{done:i,total:o})}}]).filter("nl2br",[function(){return function(e){return e.replace(/\n/g,"
")}}]).filter("richText",["$filter",function(e){var t=e("linky");return function(e){return t(e,"_blank").replace(/\n| /g,"
")}}]).filter("relativeTime",["$filter","_",function(e,t){var n=t.pluralize("relative_time_pluralize_minutes_ago"),i=t.pluralize("relative_time_pluralize_hours_ago"),a=e("dateOrTime");return function(e){var o=1e3*e,r=Math.abs(tsNow()-o);if(6e4>r)return t("relative_time_just_now");if(36e5>r){var s=Math.floor(r/6e4);return n(s)}if(864e5>r){var l=Math.floor(r/36e5);return i(l)}return a(e,!0)}}]),angular.module("myApp.i18n",["izhukov.utils"]).factory("_",["$rootScope","$locale",function(e,t){function n(e,t){return e.replace(l,function(i,a,o){var r=t[a];return void 0===r?(console.warn("[i18n] missing param "+a+' for message "'+e+'"'),""):(void 0!==o&&(r=n(r,o.split("|"))),r.toString().trim())})}function i(e){return e=e.replace(/\*\*(.+?)\*\*/g,"$1").replace(/\n| /g,"
")}function a(e,t){var a=!1,l=e;if("_raw"===e.substr(-4)&&(a=!0,e=e.substr(0,e.length-4)),r.hasOwnProperty(e))l=r[e];else{if(!s.hasOwnProperty(e))return console.warn("[i18n] missing key "+e),e;l=s[e],console.warn("[i18n] missing locale key "+o+" / "+e)}return a||(l=encodeEntities(l)),"_md"==e.substr(-3)&&(l=i(l)),arguments.length>1&&("string"==typeof t?(Array.prototype.shift.apply(arguments),l=n(l,arguments)):l=n(l,t)),l}var o=Config.I18n.locale,r=Config.I18n.messages,s=Config.I18n.fallback_messages,l=/\{\s*([a-zA-Z\d\-_]+)(?:\s*:\s*(.*?))?\s*\}/g;return a.locale=function(){return o},a.pluralize=function(n){var i=e.$eval(a(n+"_raw"));return function(e){return(i[t.pluralCat(e)]||"").replace("{}",e)}},a}]).filter("i18n",["_",function(e){return function(t,n){return e(t+"_raw",n)}}]).directive("ngPluralize",["_",function(e){return{restrict:"EA",priority:1,compile:function(t){var n=t.attr("when"),i=e(n+"_raw");t.attr("when",i)}}}]).directive("myI18n",["_",function(e){return{restrict:"EA",compile:function(t){var n=t.children('my-i18n-param:not([name]), [my-i18n-param=""]:not([name])').map(function(e,t){return t.outerHTML}).toArray();t.children('my-i18n-param[name], [my-i18n-param]:not([my-i18n-param=""]), [my-i18n-param][name]').each(function(e,t){n[angular.element(t).attr("my-i18n-param")||angular.element(t).attr("name")]=t.outerHTML}),t.children("my-i18n-param").remove();var i=t.attr("my-i18n")||t.attr("msgid")?t:t.children("my-i18n-format, [my-i18n-format]");i.each(function(t,i){var a=angular.element(i),o=a.attr("my-i18n")||a.attr("msgid")||a.attr("my-i18n-format")||a.html().replace(/\s+/g," ").trim(),r=e(o,n);a.html(r)})}}}]),angular.module("myApp.templates",[]).run(["$templateCache",function(e){e.put("partials/desktop/audio_player.html",'
\n \n \n \n
\n
\n \n \n
\n \n \n \n \n
\n \n \n
\n
\n
\n \n \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
'),e.put("partials/desktop/changelog_modal.html",'
\n\n \n\n \n\n
\n'),e.put("partials/desktop/chat_create_modal.html",'
\n\n \n\n \n\n \n\n
\n'),e.put("partials/desktop/chat_edit_modal.html",'
\n\n \n\n \n\n \n\n
\n'),e.put("partials/desktop/chat_modal.html",'
\n\n \n\n \n\n
\n'),e.put("partials/desktop/confirm_modal.html",'
\n\n \n\n \n\n \n\n
\n'),e.put("partials/desktop/contacts_modal.html",'
\n\n \n\n \n\n \n\n
\n'),e.put("partials/desktop/country_select_modal.html",'
\n\n \n\n \n\n
\n'),e.put("partials/desktop/dialog.html",'\n\n
\n
\n \n \n
\n\n
\n \n
\n\n
\n\n
\n \n \n \n \n
\n\n
\n
\n \n
\n
\n \n {{((dialogMessage.out || dialogMessage.peerID < 0) && (dialogMessage.message.length || dialogMessage.media && dialogMessage.media._ != \'messageMediaEmpty\')) ? \':\' : \'\'}}\n \n\n \n \n \n \n \n \n \n \n\n \n \n \n \n \n\n \n \n \n \n \n \n\n \n \n \n \n \n \n \n\n \n
\n
\n\n
\n
\n'),e.put("partials/desktop/document_modal.html",'\n\n
\n
\n
\n \n \n \n \n \n \n \n \n \n
\n\n
\n \n \n
\n\n
\n\n
\n
\n\n'),e.put("partials/desktop/edit_contact_modal.html",'
\n\n \n\n \n\n \n\n
\n'),e.put("partials/desktop/error_modal.html",'
\n\n \n\n \n\n
\n'),e.put("partials/desktop/footer.html",''),e.put("partials/desktop/full_document.html",'
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n \n
\n
'),e.put("partials/desktop/full_gif.html",'\n\n
\n\n \n \n\n
\n\n
\n\n
\n
\n
\n
\n
\n\n
\n
GIF
\n
\n
\n\n
\n\n
'),e.put("partials/desktop/full_photo.html",'
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n
\n
\n
\n
\n
\n
'),e.put("partials/desktop/full_video.html",'
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n \n
\n
\n
\n
\n
\n
'),e.put("partials/desktop/head.html",'
\n \n
\n'),e.put("partials/desktop/im.html",'
\n\n
\n\n
\n\n
\n
\n \n \n\n
\n
\n \n \n
\n
\n
\n\n
\n
\n
\n\n
\n

\n

\n \n \n
\n\n
\n \n \n
\n\n
\n
\n \n
\n\n \n\n
\n
\n
\n
\n\n
\n\n
\n
\n

\n

\n \n
\n
\n
\n\n
\n \n
\n\n
\n
\n\n
\n\n
\n
\n\n \n \n\n \n \n \n \n \n \n\n
\n

\n

\n

\n

\n\n

\n
\n \n \n
\n
\n \n \n \n \n \n
\n

\n
\n\n
\n\n
\n\n
\n\n
\n\n
\n\n
\n
\n
\n \n \n \n \n
\n\n
\n
\n
\n
\n
\n\n
\n\n
\n\n
\n \n \n \n \n \n {{historyState.typing.length - 2}}\n \n
\n
\n\n
\n\n
\n\n
\n\n
\n\n
\n
\n \n \n \n \n \n
\n \n \n \n
\n
\n\n
\n\n
\n\n
\n
\n \n \n
\n
\n \n
\n
\n\n
\n
\n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n
\n\n \n
\n
\n\n
\n\n
\n\n
\n\n
\n
\n\n
\n\n
\n\n
\n\n
'),e.put("partials/desktop/import_contact_modal.html",'
\n\n \n\n \n\n \n\n
\n'),e.put("partials/desktop/lang_footer.html",''),e.put("partials/desktop/login.html",'
\n\n\n\n\n'),e.put("partials/desktop/media_modal_layout.html",''),e.put("partials/desktop/message.html",'
\n\n\n
\n\n
\n
\n \n \n
\n\n \n \n \n\n
\n\n
\n
\n \n
\n\n \n \n \n\n \n\n \n\n
\n \n \n
\n\n
\n\n \n\n
\n \n
\n \n
\n
\n\n
\n\n
\n
\n
\n
\n
\n
\n
\n\n
\n\n
\n
\n
\n\n
\n
\n\n
\n\n'),e.put("partials/desktop/message_attach_contact.html",'
\n \n
\n \n \n
\n
\n
'),e.put("partials/desktop/message_attach_document.html",'
\n\n
\n\n
\n
\n
\n\n
\n\n \n \n \n \n
\n \n
\n
\n\n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n
\n'),e.put("partials/desktop/message_attach_map.html",'\n \n'),e.put("partials/desktop/message_attach_pending.html",'
\n
\n \n
\n
\n
\n \n \n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n'),e.put("partials/desktop/message_attach_photo.html",'\n \n'),e.put("partials/desktop/message_attach_video.html",'
\n \n \n \n \n \n\n
\n
\n \n \n \n
\n
\n \n \n \n \n \n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n'),e.put("partials/desktop/message_service.html",'\n \n \n \n «»\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n\n'),e.put("partials/desktop/peer_select.html",'
\n\n \n\n \n\n
\n'),e.put("partials/desktop/photo_modal.html",'\n\n\n\n
\n
\n
\n \n \n \n \n \n \n \n \n \n
\n\n
\n \n \n \n
\n\n\n
\n \n \n \n \n \n
\n
\n
\n\n\n\n'),e.put("partials/desktop/profile_edit_modal.html",'
\n\n \n\n \n\n \n\n
\n'),e.put("partials/desktop/settings_modal.html",'\n'),e.put("partials/desktop/slider.html",'
\n
\n
\n
\n
\n
'),e.put("partials/desktop/user_modal.html",'
\n\n \n\n \n\n
\n'),e.put("partials/desktop/username_edit_modal.html",'
\n\n \n\n \n\n \n\n
\n'),e.put("partials/desktop/video_modal.html",'\n\n
\n
\n
\n \n \n \n \n \n \n \n \n \n
\n\n
\n \n \n
\n\n
\n
\n
\n\n'),e.put("partials/desktop/welcome.html",'
\n\n
\n\n
\n \n\n

\n\n
\n

\n
\n
\n \n
\n
\n\n \n\n\n\n
\n'),e.put("partials/mobile/audio_player.html",'
\n \n \n \n
\n
\n \n \n
\n \n \n \n \n
\n \n \n
\n
\n
\n \n \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
'),e.put("partials/mobile/changelog_modal.html",'
\n\n \n\n \n'),e.put("partials/mobile/chat_create_modal.html",'
\n\n
\n \n
\n\n \n\n
'),e.put("partials/mobile/chat_edit_modal.html",'
\n\n
\n \n
\n\n \n\n
'),e.put("partials/mobile/chat_modal.html",'
\n\n
\n \n
\n\n \n\n
\n'),e.put("partials/mobile/confirm_modal.html",'
\n\n \n\n \n\n \n\n
\n'),e.put("partials/mobile/contacts_modal.html",'
\n\n
\n \n
\n\n \n\n
\n'),e.put("partials/mobile/country_select_modal.html",'
\n\n
\n \n
\n\n \n\n
\n'),e.put("partials/mobile/dialog.html",'\n\n
\n
\n \n \n
\n\n
\n \n
\n\n
\n\n
\n \n \n \n \n
\n\n
\n
\n \n
\n
\n \n {{((dialogMessage.out || dialogMessage.peerID < 0) && (dialogMessage.message.length || dialogMessage.media && dialogMessage.media._ != \'messageMediaEmpty\')) ? \':\' : \'\'}}\n \n\n \n \n \n \n \n \n \n \n\n \n \n \n \n \n\n \n \n \n \n \n \n\n \n \n \n \n \n \n \n\n \n
\n
\n\n
\n
\n'),e.put("partials/mobile/edit_contact_modal.html",'
\n\n
\n \n
\n\n \n\n
'),e.put("partials/mobile/error_modal.html",'
\n\n \n\n \n\n
\n'),e.put("partials/mobile/full_gif.html",'\n\n
\n\n \n \n\n
\n\n
\n\n
\n
\n
\n
\n
\n\n
\n
GIF
\n
\n
\n\n
\n\n
'),e.put("partials/mobile/full_photo.html",'
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n
\n
\n
\n
\n
\n
'),e.put("partials/mobile/full_video.html",'
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n \n
\n
\n
\n
\n
\n
'),e.put("partials/mobile/head.html",'
\n \n
\n'),e.put("partials/mobile/im.html",'
\n\n
\n\n
\n\n
\n
\n \n\n
\n
\n \n \n
\n
\n
\n\n
\n\n
\n

\n

\n \n \n
\n\n
\n \n \n
\n\n
\n
\n \n
\n\n \n\n
\n
\n\n
\n
\n \n
\n\n
\n
\n\n
\n\n
\n
\n
\n \n \n \n \n
\n\n
\n
\n
\n
\n
\n\n
\n\n
\n\n
\n\n
\n\n
\n
\n \n \n
\n
\n\n
\n\n
\n\n
\n
\n\n
\n
\n \n
\n\n
\n \n \n
\n\n
\n \n
\n\n \n
\n
\n\n
\n\n
\n\n
\n\n
\n
\n\n
\n\n
\n\n
'),e.put("partials/mobile/import_contact_modal.html",'
\n\n
\n \n
\n\n \n
'),e.put("partials/mobile/login.html",'
\n\n\n\n\n'),e.put("partials/mobile/media_modal_layout.html",''),e.put("partials/mobile/message.html",'
\n\n\n
\n\n
\n
\n \n \n
\n\n \n \n \n\n
\n\n
\n \n\n \n\n
\n \n \n
\n\n
\n\n \n\n
\n \n \n
\n\n
\n\n
\n
\n
\n
\n
\n
\n
\n\n
\n\n
\n
\n\n
\n
\n\n
\n\n'),e.put("partials/mobile/message_attach_contact.html",'
\n \n
\n \n \n
\n
\n
'),e.put("partials/mobile/message_attach_document.html",'
\n\n
\n\n
\n
\n
\n\n
\n\n \n \n \n \n
\n \n
\n
\n\n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n\n
\n
\n'),e.put("partials/mobile/message_attach_map.html",'\n \n'),e.put("partials/mobile/message_attach_pending.html",'
\n \n
\n
\n \n \n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n'),e.put("partials/mobile/message_attach_photo.html",'\n \n'),e.put("partials/mobile/message_attach_video.html",''),e.put("partials/mobile/message_service.html",'\n \n \n \n «»\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n\n'),e.put("partials/mobile/peer_select.html",'
\n\n
\n \n
\n\n \n\n
\n'),e.put("partials/mobile/phonebook_modal.html",'
\n\n
\n \n
\n\n \n\n \n\n
\n'),e.put("partials/mobile/photo_modal.html",'
\n
\n
\n \n \n \n
\n\n
\n \n \n \n
\n\n
\n \n
\n \n
\n\n
\n
\n\n\n\n\n\n'),e.put("partials/mobile/profile_edit_modal.html",'
\n\n
\n \n
\n\n \n\n
'),e.put("partials/mobile/settings_modal.html",'\n'),e.put("partials/mobile/slider.html",'
\n
\n
\n
\n
\n
'),e.put("partials/mobile/user_modal.html",'
\n\n
\n \n
\n\n \n\n
\n'),e.put("partials/mobile/username_edit_modal.html",'
\n\n
\n \n
\n\n \n\n
'),e.put("partials/mobile/video_modal.html",'
\n
\n
\n \n \n \n
\n\n
\n \n \n \n
\n\n
\n \n
\n \n
\n\n
\n
\n\n
\n
\n
\n \n \n \n
\n \n
\n
\n\n\n\n'),e.put("partials/mobile/welcome.html",'
\n\n
\n\n
\n \n\n

\n\n
\n

\n
\n
\n \n
\n
\n\n \n\n\n\n
\n') -}]),angular.module("myApp.directives",["myApp.filters"]).directive("myHead",function(){return{restrict:"AE",templateUrl:templateUrl("head")}}).directive("myLangFooter",function(){return{restrict:"AE",templateUrl:templateUrl("lang_footer")}}).directive("myFooter",function(){return{restrict:"AE",templateUrl:templateUrl("footer")}}).directive("myDialog",function(){return{restrict:"AE",templateUrl:templateUrl("dialog")}}).directive("myMessage",["$filter","_",function(e,t){function n(e,t){var n,u,p=!1,m=!1,h=!1,f=!1,g=!1,_=!1,y=!1,v=function(){p!=(e.selectedMsgs[e.historyMessage.id]||!1)&&(p=!p,t.toggleClass(r,p))},b=function(){m!=e.historyMessage.grouped&&(m&&t.removeClass(m),m=e.historyMessage.grouped,m&&t.addClass(m)),_!=(e.historyMessage.needDate||!1)&&(_=!_,_?n?n.show():(n=$(a),$(n[0].firstChild).text(i(e.historyMessage.date)),u?n.insertBefore(u):n.prependTo(t)):n.hide())};v(),b(),e.$on("messages_select",v),e.$on("messages_regroup",b),e.$on("messages_focus",function(n,i){i==e.historyMessage.id!=h&&(h=!h,t.toggleClass(s,h))});var w;if(!e.historyMessage.out&&(e.historyMessage.unread||e.historyMessage.unreadAfter)){var k=function(){e.peerHistory.peerID==e.historyPeer.id&&y!=(e.historyUnreadAfter==e.historyMessage.id)&&(y=!y,y?u?u.show():u=$(o).prependTo(t):(u.hide(),w&&w()))};k(),w=e.$on("messages_unread_after",k)}if(e.historyMessage.unread){t.addClass(l);var C=e.$on("messages_read",function(){e.historyMessage.unread||(t.removeClass(l),C(),w&&!y&&w())})}if(e.historyMessage.error||e.historyMessage.pending){var S=function(){g!=(e.historyMessage.pending||!1)&&(g=!g,t.toggleClass(d,g)),f!=(e.historyMessage.error||!1)&&(f=!f,t.toggleClass(c,f)),f||g||M()},M=e.$on("messages_pending",S);S()}}var i=e("myDate"),a='
',o='
'+t("unread_messages_split")+"
",r="im_message_selected",s="im_message_focus",l="im_message_unread",c="im_message_error",d="im_message_pending";return{templateUrl:templateUrl("message"),link:n}}]).directive("myExternalEmbed",function(){function e(e,s,l){var c=e.$eval(l.myExternalEmbed);if(c){var d="",u=!1;switch(c[0]){case"youtube":var p=c[1];d='
<'+r+' type="text/html" frameborder="0" src="https://www.youtube.com/embed/'+p+'?autoplay=0&controls=2" webkitallowfullscreen mozallowfullscreen allowfullscreen>
";break;case"vimeo":var p=c[1];d='
<'+r+' type="text/html" frameborder="0" src="https://player.vimeo.com/video/'+p+'?title=0&byline=0&portrait=0" webkitallowfullscreen mozallowfullscreen allowfullscreen>
";break;case"instagram":var m=c[1];d='
<'+r+' type="text/html" frameborder="0" src="https://instagram.com/p/'+m+'/embed/">
";break;case"vine":var h=c[1];d='
<'+r+' type="text/html" frameborder="0" src="https://vine.co/v/'+h+'/embed/simple">
";break;case"soundcloud":var f=c[1];d='
<'+r+' type="text/html" frameborder="0" src="https://w.soundcloud.com/player/?url='+encodeEntities(encodeURIComponent(f))+'&auto_play=false&hide_related=true&show_comments=false&show_user=true&show_reposts=false&visual=true">
";break;case"twitter":d='
',u=function(){t?window.twttr&&twttr.widgets.load(s[0]):(t=!0,$("