├── .gitignore ├── README.md ├── caches ├── css │ ├── clear.css │ ├── codeforces.datepick.css │ ├── colorbox.css │ ├── community.css │ ├── datatable.css │ ├── facebox.css │ ├── font-awesome.min.css │ ├── fonts.css │ ├── jquery.autocomplete.css │ ├── jquery.drafts.css │ ├── jquery.jgrowl.css │ ├── jquery.wysiwyg.css │ ├── prettify.css │ ├── problem-statement.css │ ├── roundbox.css │ ├── second-level-menu.css │ ├── sidebar-menu.css │ ├── style.css │ ├── table-form.css │ ├── topic.css │ └── ttypography.css ├── favicon.png ├── images │ ├── codeforces-logo-with-telegram.png │ ├── codeforces-telegram-square.png │ └── flags │ │ └── 24 │ │ ├── gb.png │ │ └── ru.png └── markitup │ ├── sets │ └── markdown │ │ └── style.css │ └── skins │ └── markitup │ └── style.css ├── clear.sh ├── crawl_html.py ├── header.html ├── html └── .gitignore ├── html2pdf.sh └── src └── .gitignore /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | html_list.txt 3 | pdf/* 4 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # CodeforcesCrawler 2 | A python script to crawl problems in [Codeforces](http://codeforces.com/) 3 | ## How to use 4 | Install wkhtmltopdf 5 | ```bash 6 | #Just for Mac users 7 | $ brew cask install wkhtmltopdf 8 | ``` 9 | Crawl problems and Convert to pdf 10 | ```python 11 | python crawl_html.py 1 123 555 12 | #crawl problem from 1 to 123 by 555 threads 13 | ``` 14 | Now,problems in ./pdf already 15 | -------------------------------------------------------------------------------- /caches/css/clear.css: -------------------------------------------------------------------------------- 1 | @charset "utf-8"; 2 | body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;} ol,ul{list-style:none;} caption,th {text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;} q:before,q:after{content:'';} abbr,acronym {border:0;} 3 | textarea{margin:0;padding:2px;} 4 | a:link { color: #0000cc; } 5 | body { background: #fff; margin: 3px 8px;} 6 | body, select, input { font-family: verdana,arial,sans-serif;} 7 | /* 8 | body { font-size: 87.5%;} 9 | */ 10 | body { font-size: 1.4rem;} 11 | h1 { font-size: 1.8em; font-weight: bold;} 12 | h2 { font-size: 1.6em; font-weight: bold;} 13 | h3 { font-size: 1.4em; font-weight: bold;} 14 | h4 { font-size: 1.2em; font-weight: bold;} 15 | h5 { font-size: 1em; font-weight: bold;} 16 | td td, th th, th td, td th { font-size: 100%;} 17 | strong { font-weight:bold; } 18 | em { font-style: italic; } 19 | pre { font-size: 110%;} 20 | form { padding:0; margin:0;} 21 | input { padding-left:1px; padding-right:1px; } 22 | -------------------------------------------------------------------------------- /caches/css/codeforces.datepick.css: -------------------------------------------------------------------------------- 1 | /* Smoothness style sheet for jQuery date picker v3.6.1. */ 2 | #datepick-div, .datepick-inline { 3 | background: #fff; 4 | color: #222; 5 | width: 220px; 6 | } 7 | #datepick-div select.datepick-new-month { 8 | width: 70%; 9 | } 10 | #datepick-div select.datepick-new-year { 11 | width: 30%; 12 | } 13 | #datepick-div { 14 | display: none; 15 | border: 1px solid #B9B9B9; 16 | border-bottom: none; 17 | z-index: 100; /*must have*/ 18 | } 19 | .datepick-inline { 20 | float: left; 21 | display: block; 22 | border: 0; 23 | } 24 | #datepick-div table td { 25 | height: 16px; 26 | } 27 | #datepick-div table th { 28 | height: 22px; 29 | } 30 | .datepick-rtl { 31 | direction: rtl; 32 | } 33 | .datepick-dialog { 34 | padding: 5px !important; 35 | border: 4px ridge #B9B9B9 !important; 36 | } 37 | .datepick-disabled { 38 | position: absolute; 39 | z-index: 100; 40 | background-color: white; 41 | opacity: 0.5; 42 | filter: alpha(opacity=50); 43 | } 44 | button.datepick-trigger { 45 | width: 25px; 46 | } 47 | img.datepick-trigger { 48 | margin: 2px; 49 | vertical-align: middle; 50 | } 51 | .datepick-prompt { 52 | float: left; 53 | padding: 2px; 54 | } 55 | * html .datepick-prompt { 56 | width: 220px; 57 | } 58 | .datepick-control, .datepick-links, .datepick-header, .datepick { 59 | clear: both; 60 | float: left; 61 | width: 100%; 62 | color: #222; 63 | } 64 | .datepick-control { 65 | background: #fee6e3; 66 | padding: 2px 0px; 67 | display: none; 68 | } 69 | .datepick-links { 70 | background: #fff; 71 | padding: 2px 0px; 72 | } 73 | .datepick-control, .datepick-links { 74 | /*font-weight: bold;*/ 75 | color: #3B5998; 76 | font-size: 80%; 77 | } 78 | .datepick-links label { 79 | padding: 2px 5px; 80 | color: #888; 81 | } 82 | .datepick-clear, .datepick-prev { 83 | float: left; 84 | width: 34%; 85 | } 86 | .datepick-rtl .datepick-clear, .datepick-rtl .datepick-prev { 87 | float: right; 88 | text-align: right; 89 | } 90 | .datepick-current { 91 | float: left; 92 | width: 30%; 93 | text-align: center; 94 | } 95 | .datepick-close, .datepick-next { 96 | float: right; 97 | width: 34%; 98 | text-align: right; 99 | } 100 | .datepick-rtl .datepick-close, .datepick-rtl .datepick-next { 101 | float: left; 102 | text-align: left; 103 | } 104 | .datepick-header { 105 | background: #e0e0e0; 106 | /*color: #222;*/ 107 | text-align: center; 108 | font-weight: bold; 109 | color: #3B5998; 110 | height: 1.3em; 111 | } 112 | .datepick-header select { 113 | background: #e0e0e0; 114 | color: #222; 115 | border: 0px; 116 | font-weight: bold; 117 | color: #3B5998; 118 | } 119 | .datepick-header span { 120 | position: relative; 121 | top: 3px; 122 | } 123 | .datepick { 124 | text-align: center; 125 | font-size: 100%; 126 | } 127 | .datepick a { 128 | display: block; 129 | width: 100%; 130 | } 131 | .datepick-title-row th { 132 | text-align: center; 133 | font-weight: normal; 134 | } 135 | .datepick-week-col { 136 | background: #e0e0e0; 137 | } 138 | .datepick-days-cell { 139 | border: 1px solid #d3d3d3; 140 | } 141 | .datepick-days-cell a { 142 | display: block; 143 | background: #eee; 144 | } 145 | .datepick-other-month a { 146 | background: #fff; 147 | } 148 | .datepick-unselectable { 149 | color: #888; 150 | } 151 | .datepick-week-over a { 152 | background: #e0e0e0; 153 | } 154 | .datepick-today { 155 | border: 1px solid #fcefa1; 156 | } 157 | .datepick-today a { 158 | background: #fbf9ee; 159 | } 160 | .datepick-current-day { 161 | border: 1px solid #B9B9B9; 162 | } 163 | .datepick-current-day a { 164 | background: #e0e0e0; 165 | color: #222; 166 | } 167 | .datepick-days-cell-over { 168 | border: 1px solid #999; 169 | } 170 | .datepick-days-cell-over a { 171 | background: #dadada; 172 | } 173 | .datepick-status { 174 | width: 100%; 175 | font-size: 80%; 176 | text-align: center; 177 | } 178 | #datepick-div a, .datepick-inline a { 179 | cursor: pointer; 180 | margin: 0; 181 | padding: 0; 182 | text-decoration: none; 183 | } 184 | .datepick-inline .datepick-links a { 185 | padding: 0 5px !important; 186 | } 187 | .datepick-control a, .datepick-links a { 188 | padding: 2px 5px !important; 189 | color: #222 !important; 190 | } 191 | .datepick-control a:hover { 192 | background: #ffd0d0; 193 | } 194 | .datepick-links a:hover, .datepick-title-row a:hover { 195 | background: #e0e0e0; 196 | } 197 | .datepick-multi .datepick { 198 | border: 1px solid #B9B9B9; 199 | } 200 | .datepick-one-month { 201 | float: left; 202 | width: 220px; 203 | } 204 | .datepick-new-row { 205 | clear: left; 206 | } 207 | /* ___________ IE6 IFRAME FIX ________ */ 208 | .datepick-cover { 209 | display: none; /*sorry for IE5*/ 210 | display/**/: block; /*sorry for IE5*/ 211 | position: absolute; /*must have*/ 212 | z-index: -1; /*must have*/ 213 | filter: mask(); /*must have*/ 214 | top: -1px; /*must have*/ 215 | left: -1px; /*must have*/ 216 | width: 187px; /*must have*/ 217 | height: 187px; /*must have*/ 218 | } 219 | -------------------------------------------------------------------------------- /caches/css/colorbox.css: -------------------------------------------------------------------------------- 1 | /* 2 | ColorBox Core Style 3 | The following rules are the styles that are consistant between themes. 4 | Avoid changing this area to maintain compatability with future versions of ColorBox. 5 | */ 6 | #colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;} 7 | #cboxOverlay{position:fixed; width:100%; height:100%;} 8 | #cboxMiddleLeft, #cboxBottomLeft{clear:left;} 9 | #cboxContent{position:relative; overflow:hidden;} 10 | #cboxLoadedContent{overflow:auto;} 11 | #cboxLoadedContent iframe{display:block; width:100%; height:100%; border:0;} 12 | #cboxTitle{margin:0;} 13 | #cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%;} 14 | #cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;} 15 | 16 | /* 17 | Example user style 18 | The following rules are ordered and tabbed in a way that represents the 19 | order/nesting of the generated HTML, so that the structure easier to understand. 20 | */ 21 | #cboxOverlay{background:url(../images/overlay.png) 0 0 repeat;} 22 | #colorbox{} 23 | #cboxTopLeft{width:21px; height:21px; background:url(../images/controls.png) -100px 0 no-repeat;} 24 | #cboxTopRight{width:21px; height:21px; background:url(../images/controls.png) -129px 0 no-repeat;} 25 | #cboxBottomLeft{width:21px; height:21px; background:url(../images/controls.png) -100px -29px no-repeat;} 26 | #cboxBottomRight{width:21px; height:21px; background:url(../images/controls.png) -129px -29px no-repeat;} 27 | #cboxMiddleLeft{width:21px; background:url(../images/controls.png) left top repeat-y;} 28 | #cboxMiddleRight{width:21px; background:url(../images/controls.png) right top repeat-y;} 29 | #cboxTopCenter{height:21px; background:url(../images/border.png) 0 0 repeat-x;} 30 | #cboxBottomCenter{height:21px; background:url(../images/border.png) 0 -29px repeat-x;} 31 | #cboxContent{background:#fff;} 32 | #cboxLoadedContent{margin-bottom:28px;} 33 | #cboxTitle{position:absolute; bottom:4px; left:0; text-align:center; width:100%; color:#949494;} 34 | #cboxCurrent{position:absolute; bottom:4px; left:58px; color:#949494;} 35 | #cboxSlideshow{position:absolute; bottom:4px; right:30px; color:#0092ef;} 36 | #cboxPrevious{position:absolute; bottom:0; left:0px; background:url(../images/controls.png) -75px 0px no-repeat; width:25px; height:25px; text-indent:-9999px;} 37 | #cboxPrevious.hover{background-position:-75px -25px;} 38 | #cboxNext{position:absolute; bottom:0; left:27px; background:url(../images/controls.png) -50px 0px no-repeat; width:25px; height:25px; text-indent:-9999px;} 39 | #cboxNext.hover{background-position:-50px -25px;} 40 | #cboxLoadingOverlay{background:url(../images/loading_background.png) center center no-repeat;} 41 | #cboxLoadingGraphic{background:url(../images/loading.gif) center center no-repeat;} 42 | #cboxClose{position:absolute; bottom:0; right:0; background:url(../images/controls.png) -25px 0px no-repeat; width:25px; height:25px; text-indent:-9999px;} 43 | #cboxClose.hover{background-position:-25px -25px;} 44 | 45 | /* 46 | The following fixes png-transparency for IE6. 47 | It is also necessary for png-transparency in IE7 & IE8 to avoid 'black halos' with the fade transition 48 | 49 | Since this method does not support CSS background-positioning, it is incompatible with CSS sprites. 50 | Colorbox preloads navigation hover classes to account for this. 51 | 52 | !! Important Note: AlphaImageLoader src paths are relative to the HTML document, 53 | while regular CSS background images are relative to the CSS document. 54 | */ 55 | .cboxIE #cboxTopLeft{background:transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=../images/internet_explorer/borderTopLeft.png, sizingMethod='scale');} 56 | .cboxIE #cboxTopCenter{background:transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=../images/internet_explorer/borderTopCenter.png, sizingMethod='scale');} 57 | .cboxIE #cboxTopRight{background:transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=../images/internet_explorer/borderTopRight.png, sizingMethod='scale');} 58 | .cboxIE #cboxBottomLeft{background:transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=../images/internet_explorer/borderBottomLeft.png, sizingMethod='scale');} 59 | .cboxIE #cboxBottomCenter{background:transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=../images/internet_explorer/borderBottomCenter.png, sizingMethod='scale');} 60 | .cboxIE #cboxBottomRight{background:transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=../images/internet_explorer/borderBottomRight.png, sizingMethod='scale');} 61 | .cboxIE #cboxMiddleLeft{background:transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=../images/internet_explorer/borderMiddleLeft.png, sizingMethod='scale');} 62 | .cboxIE #cboxMiddleRight{background:transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=../images/internet_explorer/borderMiddleRight.png, sizingMethod='scale');} 63 | -------------------------------------------------------------------------------- /caches/css/community.css: -------------------------------------------------------------------------------- 1 | .recent-actions { 2 | margin: 1em; 3 | font-size: 0.9em; 4 | } 5 | 6 | .rated-user { 7 | /*font-family: arial;*/ 8 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 9 | text-decoration: none !important; 10 | font-weight: bold; 11 | } 12 | 13 | .user-black { 14 | color: black !important; 15 | font-weight: normal !important; 16 | } 17 | 18 | .user-red { 19 | color: red !important; 20 | } 21 | 22 | .user-fire { 23 | color: red !important; 24 | } 25 | 26 | .user-yellow { 27 | color: #bb0 !important; 28 | } 29 | 30 | .user-violet { 31 | color: #a0a !important; 32 | } 33 | 34 | .user-orange { 35 | color: #FF8C00 !important; 36 | } 37 | 38 | .user-blue { 39 | color: blue !important; 40 | } 41 | 42 | .user-green { 43 | color: green !important; 44 | } 45 | 46 | .user-gray { 47 | color: gray !important; 48 | } 49 | 50 | .user-admin { 51 | color: black !important; 52 | } 53 | -------------------------------------------------------------------------------- /caches/css/datatable.css: -------------------------------------------------------------------------------- 1 | .datatable td { 2 | width: auto !important; 3 | max-width: 20em !important; 4 | overflow: auto; 5 | } 6 | 7 | .datatable { 8 | width: 100%; 9 | position: relative; 10 | } 11 | 12 | .datatable table { 13 | width: 100%; 14 | } 15 | 16 | .datatable td, .datatable th { 17 | border-top: 1px solid #e1e1e1; 18 | border-right: 1px solid #e1e1e1; 19 | padding: 0.4em; 20 | font-size: 1.3rem; 21 | /*font-size: 0.9em;*/ 22 | text-align: center; 23 | overflow: hidden; 24 | } 25 | 26 | .datatable th { 27 | font-weight: bold; 28 | } 29 | 30 | .datatable .left { 31 | border-left: none; 32 | } 33 | 34 | .datatable .top { 35 | border-top: none; 36 | } 37 | 38 | .datatable .bottom { 39 | border-bottom: none; 40 | } 41 | 42 | .datatable .right { 43 | border-right: none; 44 | } 45 | 46 | .datatable .dark { 47 | background-color: #f8f8f8; 48 | } 49 | 50 | .datatable .lt { 51 | background: url(../images/datatable/datatable-corner-lt.png) no-repeat top left; 52 | width: 6px; 53 | height: 6px; 54 | left: 0; 55 | top: 0; 56 | position: absolute; 57 | } 58 | 59 | .datatable .rt { 60 | background: url(../images/datatable/datatable-corner-rt.png) no-repeat top right; 61 | width: 6px; 62 | height: 6px; 63 | right: 0; 64 | top: 0; 65 | position: absolute; 66 | } 67 | 68 | .datatable .lb { 69 | background: url(../images/datatable/datatable-corner-lb.png) no-repeat bottom left; 70 | width: 4px; 71 | height: 4px; 72 | left: 0; 73 | bottom: 0; 74 | position: absolute; 75 | } 76 | 77 | .datatable .rb { 78 | background: url(../images/datatable/datatable-corner-rb.png) no-repeat bottom right; 79 | width: 4px; 80 | height: 4px; 81 | right: 0; 82 | bottom: 0; 83 | position: absolute; 84 | } 85 | 86 | .datatable .ilt { 87 | background: url(../images/datatable/datatable-inner-corner-lt.png) no-repeat top left; 88 | width: 6px; 89 | height: 6px; 90 | left: 0; 91 | top: 0; 92 | position: absolute; 93 | } 94 | 95 | .datatable .irt { 96 | background: url(../images/datatable/datatable-inner-corner-rt.png) no-repeat top right; 97 | width: 6px; 98 | height: 6px; 99 | right: 0; 100 | top: 0; 101 | position: absolute; 102 | } 103 | 104 | .datatable .filter input { 105 | background: white url(../images/icons/magnifier-medium.png) 2px 2px no-repeat; 106 | padding-left: 20px; 107 | } 108 | -------------------------------------------------------------------------------- /caches/css/facebox.css: -------------------------------------------------------------------------------- 1 | #facebox { 2 | position: absolute; 3 | top: 0; 4 | left: 0; 5 | z-index: 100; 6 | text-align: left; 7 | } 8 | 9 | 10 | #facebox .popup{ 11 | position:relative; 12 | border:3px solid rgba(0,0,0,0); 13 | -webkit-border-radius:5px; 14 | -moz-border-radius:5px; 15 | border-radius:5px; 16 | -webkit-box-shadow:0 0 18px rgba(0,0,0,0.4); 17 | -moz-box-shadow:0 0 18px rgba(0,0,0,0.4); 18 | box-shadow:0 0 18px rgba(0,0,0,0.4); 19 | } 20 | 21 | #facebox .content { 22 | display:table; 23 | width: 370px; 24 | padding: 10px; 25 | background: #fff; 26 | -webkit-border-radius:4px; 27 | -moz-border-radius:4px; 28 | border-radius:4px; 29 | box-sizing: border-box; 30 | } 31 | 32 | #facebox .content > p:first-child{ 33 | margin-top:0; 34 | } 35 | #facebox .content > p:last-child{ 36 | margin-bottom:0; 37 | } 38 | 39 | #facebox .close{ 40 | position:absolute; 41 | top:5px; 42 | right:5px; 43 | padding:2px; 44 | background:#fff; 45 | } 46 | #facebox .close img{ 47 | opacity:0.3; 48 | } 49 | #facebox .close:hover img{ 50 | opacity:1.0; 51 | } 52 | 53 | #facebox .loading { 54 | text-align: center; 55 | } 56 | 57 | #facebox .image { 58 | text-align: center; 59 | } 60 | 61 | #facebox img { 62 | border: 0; 63 | margin: 0; 64 | } 65 | 66 | #facebox_overlay { 67 | position: fixed; 68 | top: 0px; 69 | left: 0px; 70 | height:100%; 71 | width:100%; 72 | } 73 | 74 | .facebox_hide { 75 | z-index:-100; 76 | } 77 | 78 | .facebox_overlayBG { 79 | background-color: #000; 80 | z-index: 99; 81 | } -------------------------------------------------------------------------------- /caches/css/font-awesome.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 3.1.0 3 | * the iconic font designed for Bootstrap 4 | * ------------------------------------------------------- 5 | * The full suite of pictographic icons, examples, and documentation 6 | * can be found at: http://fontawesome.io 7 | * 8 | * License 9 | * ------------------------------------------------------- 10 | * - The Font Awesome font is licensed under the SIL Open Font License v1.1 - 11 | * http://scripts.sil.org/OFL 12 | * - Font Awesome CSS, LESS, and SASS files are licensed under the MIT License - 13 | * http://opensource.org/licenses/mit-license.html 14 | * - Font Awesome documentation licensed under CC BY 3.0 License - 15 | * http://creativecommons.org/licenses/by/3.0/ 16 | * - Attribution is no longer required in Font Awesome 3.0, but much appreciated: 17 | * "Font Awesome by Dave Gandy - http://fontawesome.io" 18 | 19 | * Contact 20 | * ------------------------------------------------------- 21 | * Email: dave@fontawesome.io 22 | * Twitter: http://twitter.com/fortaweso_me 23 | * Work: Lead Product Designer @ http://kyruus.com 24 | */@font-face{font-family:'FontAwesome';src:url('../css/fontawesome-webfont.eot?v=3.1.0');src:url('../css/fontawesome-webfont.eot?#iefix&v=3.1.0') format('embedded-opentype'),url('../css/fontawesome-webfont.woff?v=3.1.0') format('woff'),url('../css/fontawesome-webfont.ttf?v=3.1.0') format('truetype'),url('../css/fontawesome-webfont.svg#fontawesomeregular?v=3.1.0') format('svg');font-weight:normal;font-style:normal}[class^="icon-"],[class*=" icon-"]{font-family:FontAwesome;font-weight:normal;font-style:normal;text-decoration:inherit;-webkit-font-smoothing:antialiased;*margin-right:.3em}[class^="icon-"]:before,[class*=" icon-"]:before{text-decoration:inherit;display:inline-block;speak:none}.icon-large:before{vertical-align:-10%;font-size:1.3333333333333333em}a [class^="icon-"],a [class*=" icon-"],a [class^="icon-"]:before,a [class*=" icon-"]:before{display:inline}[class^="icon-"].icon-fixed-width,[class*=" icon-"].icon-fixed-width{display:inline-block;width:1.2857142857142858em;text-align:center}[class^="icon-"].icon-fixed-width.icon-large,[class*=" icon-"].icon-fixed-width.icon-large{width:1.5714285714285714em}ul.icons-ul{list-style-type:none;text-indent:-0.7142857142857143em;margin-left:2.142857142857143em}ul.icons-ul>li .icon-li{width:.7142857142857143em;display:inline-block;text-align:center}[class^="icon-"].hide,[class*=" icon-"].hide{display:none}.icon-muted{color:#eee}.icon-light{color:#fff}.icon-dark{color:#333}.icon-border{border:solid 1px #eee;padding:.2em .25em .15em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.icon-2x{font-size:2em}.icon-2x.icon-border{border-width:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.icon-3x{font-size:3em}.icon-3x.icon-border{border-width:3px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.icon-4x{font-size:4em}.icon-4x.icon-border{border-width:4px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.icon-5x{font-size:5em}.icon-5x.icon-border{border-width:5px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px}.pull-right{float:right}.pull-left{float:left}[class^="icon-"].pull-left,[class*=" icon-"].pull-left{margin-right:.3em}[class^="icon-"].pull-right,[class*=" icon-"].pull-right{margin-left:.3em}[class^="icon-"],[class*=" icon-"]{display:inline;width:auto;height:auto;line-height:normal;vertical-align:baseline;background-image:none;background-position:0 0;background-repeat:repeat;margin-top:0}.icon-white,.nav-pills>.active>a>[class^="icon-"],.nav-pills>.active>a>[class*=" icon-"],.nav-list>.active>a>[class^="icon-"],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse .nav>.active>a>[class^="icon-"],.navbar-inverse .nav>.active>a>[class*=" icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:hover>[class*=" icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" icon-"],.dropdown-submenu:hover>a>[class^="icon-"],.dropdown-submenu:hover>a>[class*=" icon-"]{background-image:none}.btn [class^="icon-"].icon-large,.nav [class^="icon-"].icon-large,.btn [class*=" icon-"].icon-large,.nav [class*=" icon-"].icon-large{line-height:.9em}.btn [class^="icon-"].icon-spin,.nav [class^="icon-"].icon-spin,.btn [class*=" icon-"].icon-spin,.nav [class*=" icon-"].icon-spin{display:inline-block}.nav-tabs [class^="icon-"],.nav-pills [class^="icon-"],.nav-tabs [class*=" icon-"],.nav-pills [class*=" icon-"],.nav-tabs [class^="icon-"].icon-large,.nav-pills [class^="icon-"].icon-large,.nav-tabs [class*=" icon-"].icon-large,.nav-pills [class*=" icon-"].icon-large{line-height:.9em}.btn [class^="icon-"].pull-left.icon-2x,.btn [class*=" icon-"].pull-left.icon-2x,.btn [class^="icon-"].pull-right.icon-2x,.btn [class*=" icon-"].pull-right.icon-2x{margin-top:.18em}.btn [class^="icon-"].icon-spin.icon-large,.btn [class*=" icon-"].icon-spin.icon-large{line-height:.8em}.btn.btn-small [class^="icon-"].pull-left.icon-2x,.btn.btn-small [class*=" icon-"].pull-left.icon-2x,.btn.btn-small [class^="icon-"].pull-right.icon-2x,.btn.btn-small [class*=" icon-"].pull-right.icon-2x{margin-top:.25em}.btn.btn-large [class^="icon-"],.btn.btn-large [class*=" icon-"]{margin-top:0}.btn.btn-large [class^="icon-"].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x,.btn.btn-large [class^="icon-"].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-top:.05em}.btn.btn-large [class^="icon-"].pull-left.icon-2x,.btn.btn-large [class*=" icon-"].pull-left.icon-2x{margin-right:.2em}.btn.btn-large [class^="icon-"].pull-right.icon-2x,.btn.btn-large [class*=" icon-"].pull-right.icon-2x{margin-left:.2em}.icon-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:-35%}.icon-stack [class^="icon-"],.icon-stack [class*=" icon-"]{display:block;text-align:center;position:absolute;width:100%;height:100%;font-size:1em;line-height:inherit;*line-height:2em}.icon-stack .icon-stack-base{font-size:2em;*line-height:1em}.icon-spin{display:inline-block;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;-webkit-animation:spin 2s infinite linear;animation:spin 2s infinite linear}@-moz-keyframes spin{0%{-moz-transform:rotate(0deg)}100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg)}}@-o-keyframes spin{0%{-o-transform:rotate(0deg)}100%{-o-transform:rotate(359deg)}}@-ms-keyframes spin{0%{-ms-transform:rotate(0deg)}100%{-ms-transform:rotate(359deg)}}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(359deg)}}.icon-rotate-90:before{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1)}.icon-rotate-180:before{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2)}.icon-rotate-270:before{-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3)}.icon-flip-horizontal:before{-webkit-transform:scale(-1,1);-moz-transform:scale(-1,1);-ms-transform:scale(-1,1);-o-transform:scale(-1,1);transform:scale(-1,1)}.icon-flip-vertical:before{-webkit-transform:scale(1,-1);-moz-transform:scale(1,-1);-ms-transform:scale(1,-1);-o-transform:scale(1,-1);transform:scale(1,-1)}.icon-glass:before{content:"\f000"}.icon-music:before{content:"\f001"}.icon-search:before{content:"\f002"}.icon-envelope:before{content:"\f003"}.icon-heart:before{content:"\f004"}.icon-star:before{content:"\f005"}.icon-star-empty:before{content:"\f006"}.icon-user:before{content:"\f007"}.icon-film:before{content:"\f008"}.icon-th-large:before{content:"\f009"}.icon-th:before{content:"\f00a"}.icon-th-list:before{content:"\f00b"}.icon-ok:before{content:"\f00c"}.icon-remove:before{content:"\f00d"}.icon-zoom-in:before{content:"\f00e"}.icon-zoom-out:before{content:"\f010"}.icon-off:before{content:"\f011"}.icon-signal:before{content:"\f012"}.icon-cog:before{content:"\f013"}.icon-trash:before{content:"\f014"}.icon-home:before{content:"\f015"}.icon-file:before{content:"\f016"}.icon-time:before{content:"\f017"}.icon-road:before{content:"\f018"}.icon-download-alt:before{content:"\f019"}.icon-download:before{content:"\f01a"}.icon-upload:before{content:"\f01b"}.icon-inbox:before{content:"\f01c"}.icon-play-circle:before{content:"\f01d"}.icon-repeat:before,.icon-rotate-right:before{content:"\f01e"}.icon-refresh:before{content:"\f021"}.icon-list-alt:before{content:"\f022"}.icon-lock:before{content:"\f023"}.icon-flag:before{content:"\f024"}.icon-headphones:before{content:"\f025"}.icon-volume-off:before{content:"\f026"}.icon-volume-down:before{content:"\f027"}.icon-volume-up:before{content:"\f028"}.icon-qrcode:before{content:"\f029"}.icon-barcode:before{content:"\f02a"}.icon-tag:before{content:"\f02b"}.icon-tags:before{content:"\f02c"}.icon-book:before{content:"\f02d"}.icon-bookmark:before{content:"\f02e"}.icon-print:before{content:"\f02f"}.icon-camera:before{content:"\f030"}.icon-font:before{content:"\f031"}.icon-bold:before{content:"\f032"}.icon-italic:before{content:"\f033"}.icon-text-height:before{content:"\f034"}.icon-text-width:before{content:"\f035"}.icon-align-left:before{content:"\f036"}.icon-align-center:before{content:"\f037"}.icon-align-right:before{content:"\f038"}.icon-align-justify:before{content:"\f039"}.icon-list:before{content:"\f03a"}.icon-indent-left:before{content:"\f03b"}.icon-indent-right:before{content:"\f03c"}.icon-facetime-video:before{content:"\f03d"}.icon-picture:before{content:"\f03e"}.icon-pencil:before{content:"\f040"}.icon-map-marker:before{content:"\f041"}.icon-adjust:before{content:"\f042"}.icon-tint:before{content:"\f043"}.icon-edit:before{content:"\f044"}.icon-share:before{content:"\f045"}.icon-check:before{content:"\f046"}.icon-move:before{content:"\f047"}.icon-step-backward:before{content:"\f048"}.icon-fast-backward:before{content:"\f049"}.icon-backward:before{content:"\f04a"}.icon-play:before{content:"\f04b"}.icon-pause:before{content:"\f04c"}.icon-stop:before{content:"\f04d"}.icon-forward:before{content:"\f04e"}.icon-fast-forward:before{content:"\f050"}.icon-step-forward:before{content:"\f051"}.icon-eject:before{content:"\f052"}.icon-chevron-left:before{content:"\f053"}.icon-chevron-right:before{content:"\f054"}.icon-plus-sign:before{content:"\f055"}.icon-minus-sign:before{content:"\f056"}.icon-remove-sign:before{content:"\f057"}.icon-ok-sign:before{content:"\f058"}.icon-question-sign:before{content:"\f059"}.icon-info-sign:before{content:"\f05a"}.icon-screenshot:before{content:"\f05b"}.icon-remove-circle:before{content:"\f05c"}.icon-ok-circle:before{content:"\f05d"}.icon-ban-circle:before{content:"\f05e"}.icon-arrow-left:before{content:"\f060"}.icon-arrow-right:before{content:"\f061"}.icon-arrow-up:before{content:"\f062"}.icon-arrow-down:before{content:"\f063"}.icon-share-alt:before,.icon-mail-forward:before{content:"\f064"}.icon-resize-full:before{content:"\f065"}.icon-resize-small:before{content:"\f066"}.icon-plus:before{content:"\f067"}.icon-minus:before{content:"\f068"}.icon-asterisk:before{content:"\f069"}.icon-exclamation-sign:before{content:"\f06a"}.icon-gift:before{content:"\f06b"}.icon-leaf:before{content:"\f06c"}.icon-fire:before{content:"\f06d"}.icon-eye-open:before{content:"\f06e"}.icon-eye-close:before{content:"\f070"}.icon-warning-sign:before{content:"\f071"}.icon-plane:before{content:"\f072"}.icon-calendar:before{content:"\f073"}.icon-random:before{content:"\f074"}.icon-comment:before{content:"\f075"}.icon-magnet:before{content:"\f076"}.icon-chevron-up:before{content:"\f077"}.icon-chevron-down:before{content:"\f078"}.icon-retweet:before{content:"\f079"}.icon-shopping-cart:before{content:"\f07a"}.icon-folder-close:before{content:"\f07b"}.icon-folder-open:before{content:"\f07c"}.icon-resize-vertical:before{content:"\f07d"}.icon-resize-horizontal:before{content:"\f07e"}.icon-bar-chart:before{content:"\f080"}.icon-twitter-sign:before{content:"\f081"}.icon-facebook-sign:before{content:"\f082"}.icon-camera-retro:before{content:"\f083"}.icon-key:before{content:"\f084"}.icon-cogs:before{content:"\f085"}.icon-comments:before{content:"\f086"}.icon-thumbs-up:before{content:"\f087"}.icon-thumbs-down:before{content:"\f088"}.icon-star-half:before{content:"\f089"}.icon-heart-empty:before{content:"\f08a"}.icon-signout:before{content:"\f08b"}.icon-linkedin-sign:before{content:"\f08c"}.icon-pushpin:before{content:"\f08d"}.icon-external-link:before{content:"\f08e"}.icon-signin:before{content:"\f090"}.icon-trophy:before{content:"\f091"}.icon-github-sign:before{content:"\f092"}.icon-upload-alt:before{content:"\f093"}.icon-lemon:before{content:"\f094"}.icon-phone:before{content:"\f095"}.icon-check-empty:before{content:"\f096"}.icon-bookmark-empty:before{content:"\f097"}.icon-phone-sign:before{content:"\f098"}.icon-twitter:before{content:"\f099"}.icon-facebook:before{content:"\f09a"}.icon-github:before{content:"\f09b"}.icon-unlock:before{content:"\f09c"}.icon-credit-card:before{content:"\f09d"}.icon-rss:before{content:"\f09e"}.icon-hdd:before{content:"\f0a0"}.icon-bullhorn:before{content:"\f0a1"}.icon-bell:before{content:"\f0a2"}.icon-certificate:before{content:"\f0a3"}.icon-hand-right:before{content:"\f0a4"}.icon-hand-left:before{content:"\f0a5"}.icon-hand-up:before{content:"\f0a6"}.icon-hand-down:before{content:"\f0a7"}.icon-circle-arrow-left:before{content:"\f0a8"}.icon-circle-arrow-right:before{content:"\f0a9"}.icon-circle-arrow-up:before{content:"\f0aa"}.icon-circle-arrow-down:before{content:"\f0ab"}.icon-globe:before{content:"\f0ac"}.icon-wrench:before{content:"\f0ad"}.icon-tasks:before{content:"\f0ae"}.icon-filter:before{content:"\f0b0"}.icon-briefcase:before{content:"\f0b1"}.icon-fullscreen:before{content:"\f0b2"}.icon-group:before{content:"\f0c0"}.icon-link:before{content:"\f0c1"}.icon-cloud:before{content:"\f0c2"}.icon-beaker:before{content:"\f0c3"}.icon-cut:before{content:"\f0c4"}.icon-copy:before{content:"\f0c5"}.icon-paper-clip:before{content:"\f0c6"}.icon-save:before{content:"\f0c7"}.icon-sign-blank:before{content:"\f0c8"}.icon-reorder:before{content:"\f0c9"}.icon-list-ul:before{content:"\f0ca"}.icon-list-ol:before{content:"\f0cb"}.icon-strikethrough:before{content:"\f0cc"}.icon-underline:before{content:"\f0cd"}.icon-table:before{content:"\f0ce"}.icon-magic:before{content:"\f0d0"}.icon-truck:before{content:"\f0d1"}.icon-pinterest:before{content:"\f0d2"}.icon-pinterest-sign:before{content:"\f0d3"}.icon-google-plus-sign:before{content:"\f0d4"}.icon-google-plus:before{content:"\f0d5"}.icon-money:before{content:"\f0d6"}.icon-caret-down:before{content:"\f0d7"}.icon-caret-up:before{content:"\f0d8"}.icon-caret-left:before{content:"\f0d9"}.icon-caret-right:before{content:"\f0da"}.icon-columns:before{content:"\f0db"}.icon-sort:before{content:"\f0dc"}.icon-sort-down:before{content:"\f0dd"}.icon-sort-up:before{content:"\f0de"}.icon-envelope-alt:before{content:"\f0e0"}.icon-linkedin:before{content:"\f0e1"}.icon-undo:before,.icon-rotate-left:before{content:"\f0e2"}.icon-legal:before{content:"\f0e3"}.icon-dashboard:before{content:"\f0e4"}.icon-comment-alt:before{content:"\f0e5"}.icon-comments-alt:before{content:"\f0e6"}.icon-bolt:before{content:"\f0e7"}.icon-sitemap:before{content:"\f0e8"}.icon-umbrella:before{content:"\f0e9"}.icon-paste:before{content:"\f0ea"}.icon-lightbulb:before{content:"\f0eb"}.icon-exchange:before{content:"\f0ec"}.icon-cloud-download:before{content:"\f0ed"}.icon-cloud-upload:before{content:"\f0ee"}.icon-user-md:before{content:"\f0f0"}.icon-stethoscope:before{content:"\f0f1"}.icon-suitcase:before{content:"\f0f2"}.icon-bell-alt:before{content:"\f0f3"}.icon-coffee:before{content:"\f0f4"}.icon-food:before{content:"\f0f5"}.icon-file-alt:before{content:"\f0f6"}.icon-building:before{content:"\f0f7"}.icon-hospital:before{content:"\f0f8"}.icon-ambulance:before{content:"\f0f9"}.icon-medkit:before{content:"\f0fa"}.icon-fighter-jet:before{content:"\f0fb"}.icon-beer:before{content:"\f0fc"}.icon-h-sign:before{content:"\f0fd"}.icon-plus-sign-alt:before{content:"\f0fe"}.icon-double-angle-left:before{content:"\f100"}.icon-double-angle-right:before{content:"\f101"}.icon-double-angle-up:before{content:"\f102"}.icon-double-angle-down:before{content:"\f103"}.icon-angle-left:before{content:"\f104"}.icon-angle-right:before{content:"\f105"}.icon-angle-up:before{content:"\f106"}.icon-angle-down:before{content:"\f107"}.icon-desktop:before{content:"\f108"}.icon-laptop:before{content:"\f109"}.icon-tablet:before{content:"\f10a"}.icon-mobile-phone:before{content:"\f10b"}.icon-circle-blank:before{content:"\f10c"}.icon-quote-left:before{content:"\f10d"}.icon-quote-right:before{content:"\f10e"}.icon-spinner:before{content:"\f110"}.icon-circle:before{content:"\f111"}.icon-reply:before,.icon-mail-reply:before{content:"\f112"}.icon-folder-close-alt:before{content:"\f114"}.icon-folder-open-alt:before{content:"\f115"}.icon-expand-alt:before{content:"\f116"}.icon-collapse-alt:before{content:"\f117"}.icon-smile:before{content:"\f118"}.icon-frown:before{content:"\f119"}.icon-meh:before{content:"\f11a"}.icon-gamepad:before{content:"\f11b"}.icon-keyboard:before{content:"\f11c"}.icon-flag-alt:before{content:"\f11d"}.icon-flag-checkered:before{content:"\f11e"}.icon-terminal:before{content:"\f120"}.icon-code:before{content:"\f121"}.icon-reply-all:before{content:"\f122"}.icon-mail-reply-all:before{content:"\f122"}.icon-star-half-full:before,.icon-star-half-empty:before{content:"\f123"}.icon-location-arrow:before{content:"\f124"}.icon-crop:before{content:"\f125"}.icon-code-fork:before{content:"\f126"}.icon-unlink:before{content:"\f127"}.icon-question:before{content:"\f128"}.icon-info:before{content:"\f129"}.icon-exclamation:before{content:"\f12a"}.icon-superscript:before{content:"\f12b"}.icon-subscript:before{content:"\f12c"}.icon-eraser:before{content:"\f12d"}.icon-puzzle-piece:before{content:"\f12e"}.icon-microphone:before{content:"\f130"}.icon-microphone-off:before{content:"\f131"}.icon-shield:before{content:"\f132"}.icon-calendar-empty:before{content:"\f133"}.icon-fire-extinguisher:before{content:"\f134"}.icon-rocket:before{content:"\f135"}.icon-maxcdn:before{content:"\f136"}.icon-chevron-sign-left:before{content:"\f137"}.icon-chevron-sign-right:before{content:"\f138"}.icon-chevron-sign-up:before{content:"\f139"}.icon-chevron-sign-down:before{content:"\f13a"}.icon-html5:before{content:"\f13b"}.icon-css3:before{content:"\f13c"}.icon-anchor:before{content:"\f13d"}.icon-unlock-alt:before{content:"\f13e"}.icon-bullseye:before{content:"\f140"}.icon-ellipsis-horizontal:before{content:"\f141"}.icon-ellipsis-vertical:before{content:"\f142"}.icon-rss-sign:before{content:"\f143"}.icon-play-sign:before{content:"\f144"}.icon-ticket:before{content:"\f145"}.icon-minus-sign-alt:before{content:"\f146"}.icon-check-minus:before{content:"\f147"}.icon-level-up:before{content:"\f148"}.icon-level-down:before{content:"\f149"}.icon-check-sign:before{content:"\f14a"}.icon-edit-sign:before{content:"\f14b"}.icon-external-link-sign:before{content:"\f14c"}.icon-share-sign:before{content:"\f14d"} -------------------------------------------------------------------------------- /caches/css/fonts.css: -------------------------------------------------------------------------------- 1 | /* cyrillic */ 2 | @font-face { 3 | font-family: 'Cuprum'; 4 | font-style: normal; 5 | font-weight: 400; 6 | src: local('Cuprum'), local('Cuprum-Regular'), url(http://fonts.gstatic.com/s/cuprum/v7/w9oaRwWYdZS5Y8ayseB253-_kf6ByYO6CLYdB4HQE-Y.woff2) format('woff2'); 7 | unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; 8 | } 9 | /* latin-ext */ 10 | @font-face { 11 | font-family: 'Cuprum'; 12 | font-style: normal; 13 | font-weight: 400; 14 | src: local('Cuprum'), local('Cuprum-Regular'), url(http://fonts.gstatic.com/s/cuprum/v7/FlWnom6K7AQLPvtt4A5yNX-_kf6ByYO6CLYdB4HQE-Y.woff2) format('woff2'); 15 | unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF; 16 | } 17 | /* latin */ 18 | @font-face { 19 | font-family: 'Cuprum'; 20 | font-style: normal; 21 | font-weight: 400; 22 | src: local('Cuprum'), local('Cuprum-Regular'), url(http://fonts.gstatic.com/s/cuprum/v7/SeXb3A3XhJVZzUQ6RoSof-vvDin1pK8aKteLpeZ5c0A.woff2) format('woff2'); 23 | unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000; 24 | } 25 | -------------------------------------------------------------------------------- /caches/css/jquery.autocomplete.css: -------------------------------------------------------------------------------- 1 | .ac_results { 2 | padding: 0px; 3 | border: 1px solid black; 4 | background-color: white; 5 | overflow: hidden; 6 | z-index: 99999; 7 | } 8 | 9 | .ac_results ul { 10 | width: 100%; 11 | list-style-position: outside; 12 | list-style: none; 13 | padding: 0; 14 | margin: 0; 15 | } 16 | 17 | .ac_results li { 18 | margin: 0px; 19 | padding: 2px 5px; 20 | cursor: default; 21 | display: block; 22 | /* 23 | if width will be 100% horizontal scrollbar will apear 24 | when scroll mode will be used 25 | */ 26 | /*width: 100%;*/ 27 | font: menu; 28 | font-size: 12px; 29 | /* 30 | it is very important, if line-height not setted or setted 31 | in relative units scroll will be broken in firefox 32 | */ 33 | line-height: 16px; 34 | overflow: hidden; 35 | } 36 | 37 | .ac_loading { 38 | background: white url('../images/indicator.gif') right center no-repeat; 39 | } 40 | 41 | .ac_odd { 42 | background-color: #eee; 43 | } 44 | 45 | .ac_over { 46 | background-color: #0A246A; 47 | color: white; 48 | } 49 | -------------------------------------------------------------------------------- /caches/css/jquery.drafts.css: -------------------------------------------------------------------------------- 1 | .drafts-prototype { 2 | display: none; 3 | } 4 | 5 | .drafts-button { 6 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 7 | color: #ffffff; 8 | border-radius: 4px; 9 | font-size: 11px; 10 | padding: 3px 5px !important; 11 | font-weight: bold; 12 | cursor: pointer; 13 | } 14 | 15 | .drafts-button:not(.drafts-offline) { 16 | background-color: #3a87ad; 17 | } 18 | 19 | .drafts-button.drafts-offline { 20 | background-color: red; 21 | } 22 | 23 | .drafts-popup { 24 | display: none; 25 | position: absolute; 26 | z-index: 10000; 27 | top: 0; 28 | width: 95%; 29 | background-color: #f8f8ff; 30 | border: 3px solid gray; 31 | border-radius: 3px; 32 | padding: 0 16px 16px 16px; 33 | margin: 16px auto; 34 | } 35 | 36 | .drafts-popup pre.drafts-entry-body { 37 | display: block; 38 | padding: 9.5px; 39 | margin: 25px 0 10px 0; 40 | font-size: 13px; 41 | line-height: 20px; 42 | word-break: break-all; 43 | word-wrap: break-word; 44 | overflow: hidden; 45 | white-space: pre; 46 | white-space: pre-wrap; 47 | background-color: #f5f5f5; 48 | border: 1px solid #ccc; 49 | border: 1px solid rgba(0, 0, 0, 0.15); 50 | -webkit-border-radius: 4px; 51 | -moz-border-radius: 4px; 52 | border-radius: 4px; 53 | font-family: Monaco, Menlo, Consolas, "Courier New", monospace; 54 | color: #333333; 55 | } 56 | 57 | .drafts-popup h1 { 58 | font-family: tahoma, arial, verdana, sans-serif, 'Lucida Sans', sans-serif; 59 | margin-top: 10px; 60 | } 61 | 62 | .drafts-popup .drafts-close { 63 | font-size: 36px; 64 | font-weight: bold; 65 | cursor: pointer; 66 | position: absolute; 67 | right: 16px; 68 | top: 0; 69 | } 70 | 71 | .drafts-show-drafts { 72 | position: absolute; 73 | cursor: pointer; 74 | width: auto; 75 | } 76 | -------------------------------------------------------------------------------- /caches/css/jquery.jgrowl.css: -------------------------------------------------------------------------------- 1 | div.jGrowl { 2 | padding: 10px; 3 | z-index: 9999; 4 | } 5 | 6 | /** Special IE6 Style Positioning **/ 7 | div.ie6 { 8 | position: absolute; 9 | } 10 | 11 | div.ie6.top-right { 12 | right: auto; 13 | bottom: auto; 14 | left: expression( ( 0 - jGrowl.offsetWidth + ( document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.clientWidth ) + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' ); 15 | top: expression( ( 0 + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px' ); 16 | } 17 | 18 | div.ie6.top-left { 19 | left: expression( ( 0 + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' ); 20 | top: expression( ( 0 + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px' ); 21 | } 22 | 23 | div.ie6.bottom-right { 24 | left: expression( ( 0 - jGrowl.offsetWidth + ( document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.clientWidth ) + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' ); 25 | top: expression( ( 0 - jGrowl.offsetHeight + ( document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px' ); 26 | } 27 | 28 | div.ie6.bottom-left { 29 | left: expression( ( 0 + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' ); 30 | top: expression( ( 0 - jGrowl.offsetHeight + ( document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px' ); 31 | } 32 | 33 | div.ie6.center { 34 | left: expression( ( 0 + ( ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' ); 35 | top: expression( ( 0 + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px' ); 36 | width: 100%; 37 | } 38 | 39 | /** Normal Style Positions **/ 40 | body > div.jGrowl { 41 | position: fixed; 42 | } 43 | 44 | body > div.jGrowl.top-left { 45 | left: 0px; 46 | top: 0px; 47 | } 48 | 49 | body > div.jGrowl.top-right { 50 | right: 0px; 51 | top: 0px; 52 | } 53 | 54 | body > div.jGrowl.bottom-left { 55 | left: 0px; 56 | bottom: 0px; 57 | } 58 | 59 | body > div.jGrowl.bottom-right { 60 | right: 0px; 61 | bottom: 0px; 62 | } 63 | 64 | body > div.jGrowl.center { 65 | top: 0px; 66 | width: 50%; 67 | left: 25%; 68 | } 69 | 70 | /** Cross Browser Styling **/ 71 | div.center div.jGrowl-notification, div.center div.jGrowl-closer { 72 | margin-left: auto; 73 | margin-right: auto; 74 | } 75 | 76 | div.jGrowl div.jGrowl-notification, div.jGrowl div.jGrowl-closer { 77 | background-color: #000; 78 | color: #fff; 79 | opacity: .85; 80 | filter: alpha(opacity = 85); 81 | zoom: 1; 82 | width: 235px; 83 | padding: 10px; 84 | margin-top: 5px; 85 | margin-bottom: 5px; 86 | font-family: Tahoma, Arial, Helvetica, sans-serif; 87 | font-size: 12px; 88 | text-align: left; 89 | display: none; 90 | -moz-border-radius: 5px; 91 | -webkit-border-radius: 5px; 92 | } 93 | 94 | div.jGrowl div.jGrowl-notification { 95 | min-height: 40px; 96 | } 97 | 98 | div.jGrowl div.jGrowl-notification div.header { 99 | font-weight: bold; 100 | font-size: 10px; 101 | } 102 | 103 | div.jGrowl div.jGrowl-notification div.close { 104 | float: right; 105 | font-weight: bold; 106 | font-size: 12px; 107 | cursor: pointer; 108 | } 109 | 110 | div.jGrowl div.jGrowl-closer { 111 | height: 15px; 112 | padding-top: 4px; 113 | padding-bottom: 4px; 114 | cursor: pointer; 115 | font-size: 11px; 116 | font-weight: bold; 117 | text-align: center; 118 | } 119 | -------------------------------------------------------------------------------- /caches/css/jquery.wysiwyg.css: -------------------------------------------------------------------------------- 1 | 2 | div.wysiwyg { border: 1px solid #999; padding: 5px; background: #fff url("../images/wysiwyg/jquery.wysiwyg.bg.png") repeat-x top; } 3 | div.wysiwyg * { margin: 0; padding: 0; } 4 | 5 | div.wysiwyg ul.toolbar li.jwysiwyg-custom-command { overflow: hidden; } 6 | 7 | div.wysiwyg ul.toolbar { border-bottom: 1px solid #ccc; float: left; width: 100%; padding: 0; } 8 | div.wysiwyg ul.toolbar li { list-style: none; float: left; margin: 1px 2px 3px 0; background: rgb(240, 240, 240); -moz-user-select: none; -webkit-user-select: none; user-select: none; clear: none; padding: 0 } 9 | div.wysiwyg ul.toolbar li.separator { width: 1px; height: 16px; margin: 0 4px; border-left: 1px solid #ccc; } 10 | div.wysiwyg ul.toolbar li { text-indent: -5000px; opacity: 0.85; filter: alpha(opacity=85); display: block; width: 16px; height: 16px; background: url('../images/wysiwyg/jquery.wysiwyg.gif') no-repeat -64px -80px; border: 1px dotted rgb(240, 240, 240); cursor: pointer; margin: 0px; } 11 | div.wysiwyg ul.toolbar li.wysiwyg-button-hover, div.wysiwyg ul.toolbar li.active { opacity: 1.00; filter:alpha(opacity=100); border: 1px outset rgb(224, 224, 224); } 12 | div.wysiwyg ul.toolbar li.active { background-color: rgb(255, 255, 64); border: 1px solid rgb(208, 208, 208); border-left-color: #aaa; border-top-color: #aaa; margin: 0; } 13 | 14 | div.wysiwyg ul.toolbar li.bold { background-position: 0 -16px; } 15 | div.wysiwyg ul.toolbar li.italic { background-position: -16px -16px; } 16 | div.wysiwyg ul.toolbar li.strikeThrough { background-position: -32px -16px; } 17 | div.wysiwyg ul.toolbar li.underline { background-position: -48px -16px; } 18 | div.wysiwyg ul.toolbar li.highlight { background-position: -48px -96px; } 19 | 20 | div.wysiwyg ul.toolbar li.justifyLeft { background-position: 0 0; } 21 | div.wysiwyg ul.toolbar li.justifyCenter { background-position: -16px 0; } 22 | div.wysiwyg ul.toolbar li.justifyRight { background-position: -32px 0; } 23 | div.wysiwyg ul.toolbar li.justifyFull { background-position: -48px 0; } 24 | 25 | div.wysiwyg ul.toolbar li.indent { background-position: -64px 0; } 26 | div.wysiwyg ul.toolbar li.outdent { background-position: -80px 0; } 27 | 28 | div.wysiwyg ul.toolbar li.subscript { background-position: -64px -16px; } 29 | div.wysiwyg ul.toolbar li.superscript { background-position: -80px -16px; } 30 | 31 | div.wysiwyg ul.toolbar li.undo { background-position: 0 -64px; } 32 | div.wysiwyg ul.toolbar li.redo { background-position: -16px -64px; } 33 | 34 | div.wysiwyg ul.toolbar li.insertOrderedList { background-position: -32px -48px; } 35 | div.wysiwyg ul.toolbar li.insertUnorderedList { background-position: -16px -48px; } 36 | div.wysiwyg ul.toolbar li.insertHorizontalRule { background-position: 0 -48px; } 37 | 38 | div.wysiwyg ul.toolbar li.h1 { background-position: 0 -32px; } 39 | div.wysiwyg ul.toolbar li.h2 { background-position: -16px -32px; } 40 | div.wysiwyg ul.toolbar li.h3 { background-position: -32px -32px; } 41 | div.wysiwyg ul.toolbar li.h4 { background-position: -48px -32px; } 42 | div.wysiwyg ul.toolbar li.h5 { background-position: -64px -32px; } 43 | div.wysiwyg ul.toolbar li.h6 { background-position: -80px -32px; } 44 | 45 | div.wysiwyg ul.toolbar li.paragraph { background-position: 0px -96px; } 46 | div.wysiwyg ul.toolbar li.colorpicker { background-position: -16px -96px; } 47 | div.wysiwyg ul.toolbar li.fullscreen { background-position: -32px -96px; } 48 | 49 | div.wysiwyg ul.toolbar li.cut { background-position: -32px -64px; } 50 | div.wysiwyg ul.toolbar li.copy { background-position: -48px -64px; } 51 | div.wysiwyg ul.toolbar li.paste { background-position: -64px -64px; } 52 | div.wysiwyg ul.toolbar li.insertTable { background-position: -64px -48px; } 53 | 54 | div.wysiwyg ul.toolbar li.increaseFontSize { background-position: -16px -80px; } 55 | div.wysiwyg ul.toolbar li.decreaseFontSize { background-position: -32px -80px; } 56 | 57 | div.wysiwyg ul.toolbar li.createLink { background-position: -80px -48px; } 58 | div.wysiwyg ul.toolbar li.insertImage { background-position: -80px -80px; } 59 | 60 | div.wysiwyg ul.toolbar li.html { background-position: -47px -46px; } 61 | div.wysiwyg ul.toolbar li.removeFormat { background-position: -80px -63px; } 62 | 63 | div.wysiwyg ul.toolbar li.empty { background-position: -64px -80px; } 64 | 65 | div.wysiwyg iframe { border: 1px solid #999; clear: left; 66 | -moz-box-shadow :inset 0 0 10px rgba(0, 0, 0, 0.4); 67 | -webkit-box-shadow :inset 0 0 10px rgba(0, 0, 0, 0.4); 68 | box-shadow :inset 0 0 10px rgba(0, 0, 0, 0.4); 69 | background-color:white; padding:3px; margin:0; 70 | } 71 | 72 | -------------------------------------------------------------------------------- /caches/css/prettify.css: -------------------------------------------------------------------------------- 1 | .pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{/*list-style-type:none*/}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} -------------------------------------------------------------------------------- /caches/css/problem-statement.css: -------------------------------------------------------------------------------- 1 | .problem-statement { 2 | margin: 0.5em; 3 | /*font-family: verdana,arial,sans-serif;*/ 4 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 5 | line-height: 1.5em; 6 | font-size: 1.4rem; 7 | } 8 | 9 | .problem-statement .epigraph { 10 | margin-left: 67%; 11 | width: 33%; 12 | } 13 | 14 | .problem-statement .epigraph-text { 15 | } 16 | 17 | .problem-statement .epigraph-source { 18 | border-top: 1px solid #888; 19 | text-align: right; 20 | } 21 | 22 | .problem-statement p { 23 | margin: 0 0 1em 0 !important; 24 | } 25 | 26 | .problem-statement .header { 27 | margin-bottom: 1em; 28 | text-align: center; 29 | } 30 | 31 | .problem-statement .header .title { 32 | font-size: 150%; 33 | margin-bottom: 0.5em; 34 | } 35 | 36 | .problem-statement .header .title { 37 | font-size: 150%; 38 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 39 | /*font-family: arial,sans-serif;*/ 40 | } 41 | 42 | .problem-statement ul { 43 | list-style: disc; 44 | list-style-type: disc; 45 | list-style-position: outside; 46 | margin-top: 1em !important; 47 | margin-bottom: 1em !important; 48 | } 49 | 50 | .problem-statement ol { 51 | list-style: decimal; 52 | list-style-type: decimal; 53 | list-style-position: outside; 54 | margin-top: 1em !important; 55 | margin-bottom: 1em !important; 56 | } 57 | 58 | .problem-statement li { 59 | line-height: 1.5em; 60 | margin-left: 3em; 61 | } 62 | 63 | .problem-statement .property-title { 64 | display: inline; 65 | padding-right: 4px; 66 | } 67 | 68 | .problem-statement .property-title:after { 69 | content: ":"; 70 | } 71 | 72 | .problem-statement .time-limit, .problem-statement .memory-limit, .problem-statement .input-file, .problem-statement .output-file { 73 | margin: 0 auto; 74 | } 75 | 76 | .problem-statement .legend { 77 | margin-bottom: 1em; 78 | } 79 | 80 | .problem-statement .section-title { 81 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 82 | /*font-family: arial,sans-serif;*/ 83 | font-size: 115%; 84 | font-weight: bold; 85 | } 86 | 87 | .problem-statement .input-specification, 88 | .problem-statement .output-specification, 89 | .problem-statement .sample-tests, 90 | .problem-statement .author, 91 | .problem-statement .resource, 92 | .problem-statement .date { 93 | /*margin-bottom: 1em;*/ 94 | } 95 | 96 | .problem-statement .output-specification { 97 | margin-bottom: 1em; 98 | } 99 | 100 | .problem-statement .sample-tests .sample-test { 101 | } 102 | 103 | .problem-statement .sample-tests .input, .problem-statement .sample-tests .output { 104 | border: 1px solid #888; 105 | } 106 | 107 | .problem-statement .sample-tests .output { 108 | margin-bottom: 1em; 109 | position: relative; 110 | top: -1px; 111 | } 112 | 113 | .problem-statement .sample-tests pre { 114 | line-height: 1.25em; 115 | padding: 0.25em; 116 | margin: 0; 117 | background-color: #efefef; 118 | } 119 | 120 | .problem-statement .sample-tests { 121 | font-family: Consolas, "Lucida Console", "Andale Mono", "Bitstream Vera Sans Mono", "Courier New", Courier; 122 | font-size: 0.9em; 123 | } 124 | 125 | .problem-statement .sample-tests .title { 126 | /*font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;*/ 127 | /*font-family: arial,sans-serif;*/ 128 | font-size: 1.3em; 129 | padding: 0.25em; 130 | border-bottom: 1px solid #888; 131 | text-transform: lowercase; 132 | font-weight: bold; 133 | } 134 | 135 | .problem-statement .test { 136 | margin-bottom: 3em; 137 | } 138 | 139 | .problem-statement .test-title { 140 | /*font-size: 150%;*/ 141 | font-weight: bold; 142 | } 143 | 144 | .problem-statement .test-stem { 145 | margin: 0.5em 0 0.5em 0; 146 | } 147 | 148 | .problem-statement input[type="submit"] { 149 | margin-top: 0.5em; 150 | margin-right: 1em; 151 | padding: 0 1em; 152 | } 153 | 154 | .problemindexholder { 155 | position: relative; 156 | } 157 | 158 | div .problem-statement-overlay { 159 | position: absolute; 160 | top: 0; 161 | left: 0; 162 | height: 100%; 163 | width: 100%; 164 | background-color: #000; 165 | z-index: 50; 166 | opacity: 0.2; 167 | } 168 | 169 | .load-answers-waiting-indicator { 170 | position: absolute; 171 | top: 49%; 172 | left: 49%; 173 | } 174 | 175 | .problem-statement input[type="radio"] { 176 | margin-right: 0.5em; 177 | } 178 | 179 | .problem-statement input[type="checkbox"] { 180 | margin-right: 0.5em; 181 | } 182 | 183 | 184 | .problem-statement input[type="text"] { 185 | width: 20em; 186 | } 187 | 188 | .problem-statement textarea { 189 | width: 20em; 190 | height: 7em; 191 | } 192 | 193 | .problem-statement .test-form { 194 | line-height: 1.75em; 195 | } 196 | 197 | .problem-statement .test-form { 198 | line-height: 1.75em; 199 | } 200 | 201 | .tex-formula { 202 | font-family: times new roman,sans-serif; 203 | vertical-align: middle; 204 | margin: 0; 205 | border:medium none; 206 | position: relative; 207 | bottom: 2px; 208 | } 209 | 210 | .tex-span { 211 | font-size: 125%; 212 | font-family: times new roman,sans-serif; 213 | white-space: nowrap; 214 | } 215 | 216 | .tex-font-size-tiny { 217 | font-size: 70%; 218 | } 219 | 220 | .tex-font-size-script { 221 | font-size: 75%; 222 | } 223 | 224 | .tex-font-size-footnotes { 225 | font-size: 85%; 226 | } 227 | 228 | .tex-font-size-small { 229 | font-size: 85%; 230 | } 231 | 232 | .tex-font-size-normal { 233 | font-size: 100%; 234 | } 235 | 236 | .tex-font-size-large-1 { 237 | font-size: 115%; 238 | } 239 | 240 | .tex-font-size-large-2 { 241 | font-size: 130%; 242 | } 243 | 244 | .tex-font-size-large-3 { 245 | font-size: 145%; 246 | } 247 | 248 | .tex-font-size-huge-1 { 249 | font-size: 175%; 250 | } 251 | 252 | .tex-font-size-huge-2 { 253 | font-size: 200%; 254 | } 255 | 256 | .tex-font-style-rm { 257 | } 258 | 259 | .tex-font-style-sf { 260 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 261 | /*font-family: arial,sans-serif;*/ 262 | } 263 | 264 | .tex-font-style-tt { 265 | font-size: 110%; 266 | font-family: courier new,monospace; 267 | } 268 | 269 | .tex-font-style-md { 270 | } 271 | 272 | .tex-font-style-bf { 273 | font-weight: bold; 274 | } 275 | 276 | .tex-font-style-up { 277 | } 278 | 279 | .tex-font-style-it { 280 | font-style: italic; 281 | } 282 | 283 | .tex-font-style-sl { 284 | font-style: italic; 285 | } 286 | 287 | .tex-font-style-sc { 288 | text-transform: uppercase; 289 | } 290 | 291 | .tex-font-style-striked { 292 | text-decoration: line-through; 293 | } 294 | 295 | .tex-font-style-underline { 296 | text-decoration: underline; 297 | } 298 | 299 | .tex-graphics { 300 | display: block; 301 | } -------------------------------------------------------------------------------- /caches/css/roundbox.css: -------------------------------------------------------------------------------- 1 | .roundbox { 2 | border: 1px solid rgb(185, 185, 185); 3 | position: relative; 4 | } 5 | 6 | .roundbox .caption { 7 | color:#3B5998; 8 | font-size: 1.5rem; 9 | font-weight: bold; 10 | margin: 0.2em 0; 11 | position: relative; 12 | } 13 | 14 | .roundbox .titled { 15 | padding: 0 0 0.3em 0.5em; 16 | border-bottom:1px solid rgb(185, 185, 185); 17 | } 18 | 19 | .roundbox .caption .top-links { 20 | font-size: 1.1rem; 21 | font-family: arial; 22 | position: absolute; 23 | right: 0.5em; 24 | top: 0.3em; 25 | } 26 | 27 | .roundbox .bottom-links { 28 | font-family: arial; 29 | font-size: 1.1rem; 30 | border-top:1px solid rgb(185, 185, 185); 31 | background-color: #F5F5F5; 32 | padding: 0.45em; 33 | } 34 | 35 | .roundbox .dark { 36 | background-color: #F5F5F5; 37 | } 38 | 39 | .roundbox .bottom-links a { 40 | margin: 0.1em; 41 | } 42 | 43 | .roundbox table.rtable { 44 | width: 100%; 45 | margin-top: -4px; 46 | border: none; 47 | } 48 | 49 | .roundbox .rtable td, .roundbox .rtable th { 50 | border: 1px solid rgb(185, 185, 185); 51 | border-right: none; 52 | border-top: none; 53 | padding: 4px; 54 | text-align: center; 55 | font-size: 0.9em; 56 | } 57 | 58 | .roundbox .rtable th { 59 | /*font-weight: bolder;*/ 60 | font-size: 1em; 61 | padding-top: 7px; 62 | } 63 | 64 | .roundbox .rtable .left { 65 | border-left: none; 66 | } 67 | 68 | .roundbox .rtable .bottom { 69 | border-bottom: none; 70 | } 71 | 72 | .roundbox .rtable .corner { 73 | width: 10px; 74 | height: 10px; 75 | } 76 | 77 | .roundbox .roundbox-lt { 78 | background: url('../images/roundbox/roundbox-lt.png') no-repeat top left; 79 | position: absolute; 80 | top: -1px; 81 | left: -1px; 82 | } 83 | 84 | .roundbox .roundbox-rt { 85 | background: url('../images/roundbox/roundbox-rt.png') no-repeat top right; 86 | position: absolute; 87 | top: -1px; 88 | right: -1px; 89 | } 90 | 91 | .roundbox .roundbox-lb { 92 | background: url('../images/roundbox/roundbox-lb.png') no-repeat bottom left; 93 | position: absolute; 94 | bottom: -1px; 95 | left: -1px; 96 | } 97 | 98 | .roundbox .roundbox-rb { 99 | background: url('../images/roundbox/roundbox-rb.png') no-repeat bottom right; 100 | position: absolute; 101 | bottom: -1px; 102 | right: -1px; 103 | } 104 | 105 | .rtable th { 106 | font-weight: bold; 107 | } -------------------------------------------------------------------------------- /caches/css/second-level-menu.css: -------------------------------------------------------------------------------- 1 | .second-level-menu { 2 | position: absolute; 3 | left: 7px; 4 | top: -12px; 5 | } 6 | 7 | .second-level-menu-list { 8 | position: relative; 9 | height: 29px; 10 | overflow: hidden; 11 | } 12 | 13 | .second-level-menu-list li { 14 | /*font-family: 'Cuprum', sans-serif !important;*/ 15 | /*font-family: 'Arial Narrow', Arial, sans-serif;*/ 16 | font-family: 'PT Sans Narrow', sans-serif; 17 | float: left; 18 | list-style: none; 19 | } 20 | 21 | .second-level-menu-list li.backLava { 22 | background: url( "../images/menu/lava-right.png" ) no-repeat top right; 23 | width: 9px; 24 | height: 20px; 25 | z-index: 8; 26 | position: absolute; 27 | } 28 | 29 | .second-level-menu-list li.backLava .leftLava { 30 | background: url( "../images/menu/lava-left.png" ) no-repeat top left; 31 | height: 20px; 32 | margin-right: 9px; 33 | } 34 | 35 | .second-level-menu-list li a { 36 | /*font-family: 'Cuprum', sans-serif !important;*/ 37 | position: relative; 38 | overflow: hidden; 39 | text-decoration: none; 40 | text-transform: uppercase; 41 | font-weight: bold; 42 | font-size: 1.2rem; 43 | color: black; 44 | outline: none; 45 | text-align: center; 46 | line-height: 20px; 47 | height: 20px; 48 | top: 1px; 49 | z-index: 10; 50 | letter-spacing: 0; 51 | float: left; 52 | display: block; 53 | margin: auto 8px; 54 | } 55 | -------------------------------------------------------------------------------- /caches/css/sidebar-menu.css: -------------------------------------------------------------------------------- 1 | .sidebar-menu ul { 2 | font-size: 13px; 3 | margin: 1em; 4 | list-style: disc inside; 5 | } 6 | 7 | .sidebar-menu ul ul { 8 | margin: 0em 1em 0em 2em; 9 | } 10 | 11 | .sidebar-menu ul li { 12 | margin: 0.25em 0; 13 | padding: 0.25em 0.25em 0.25em 0.5em; 14 | } 15 | 16 | .sidebar-menu ul a { 17 | text-decoration: none; 18 | color: black; 19 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 20 | } 21 | 22 | .sidebar-menu ul li { 23 | border: 1px solid white; 24 | } 25 | 26 | .sidebar-menu ul li:hover, .sidebar-menu ul li.active { 27 | border-radius: 5px; 28 | -moz-border-radius: 5px; 29 | -webkit-border-radius: 5px; 30 | border: 1px solid #eaeaea; 31 | background-color: #eaeaea; 32 | } 33 | 34 | .sidebar-menu ul li.active { 35 | border: 1px solid #def; 36 | background-color: #def; 37 | } 38 | -------------------------------------------------------------------------------- /caches/css/style.css: -------------------------------------------------------------------------------- 1 | /* blue: #445f9d */ 2 | /* red: #bb2024 */ 3 | 4 | /*NYH*/ 5 | /*body {*/ 6 | /*background: url(../images/snowflakes-background3.png);*/ 7 | /*}*/ 8 | 9 | html { 10 | font-size: 10px; 11 | } 12 | 13 | .roundbox { 14 | background-color: white; 15 | } 16 | 17 | body.iframed { 18 | overflow: hidden; 19 | } 20 | 21 | #body { 22 | padding-top: 0.75em; 23 | max-width: 1200px; 24 | min-width: 920px; 25 | margin: 0 auto; 26 | } 27 | 28 | .comment-vote-direction-1 { 29 | background-color: indianred; 30 | } 31 | 32 | .comment-vote-direction--1 { 33 | background-color: dodgerblue; 34 | } 35 | 36 | .comment-table { 37 | border: 1px dashed white; 38 | } 39 | 40 | .comment-no-indent { 41 | display: none; 42 | } 43 | 44 | .comment-indent { 45 | float: left; 46 | width: 4em; 47 | text-align: left; 48 | padding-top: 1.75em; 49 | display: block !important; 50 | } 51 | 52 | .comment-indent span { 53 | color: #ace; 54 | font-size: 1.2rem; 55 | font-weight: bold; 56 | } 57 | 58 | .highlight { 59 | border: 1px solid #FFC300; 60 | background-color: #FFF7DB !important; 61 | } 62 | 63 | .highlight-blue { 64 | border: 1px solid #7f9ddc; 65 | background-color: #def !important; 66 | } 67 | 68 | .button { 69 | padding: 0 1em !important; 70 | height: 1.65em !important; 71 | } 72 | 73 | a.not-decorated { 74 | text-decoration: none !important; 75 | color: black; 76 | } 77 | 78 | #header { 79 | height: 5em; 80 | margin: 0 1em; 81 | } 82 | 83 | .login-panel { 84 | float: right; 85 | } 86 | 87 | .lang-chooser { 88 | float: right; 89 | text-align: right; 90 | } 91 | 92 | .logo-href { 93 | text-decoration: none; 94 | font-weight:bold; 95 | font-size:1.0rem; 96 | color:black !important; 97 | } 98 | 99 | #sidebar { 100 | float: right; 101 | width: 20em; 102 | display: inline; 103 | padding-left: 4em; 104 | margin: 1em 1em 1em -22em; 105 | } 106 | 107 | .sidebox { 108 | margin-bottom: 1.5em; 109 | } 110 | 111 | #pageContent { 112 | margin: 1em; 113 | padding-top: 1em; 114 | min-height: 20em; 115 | } 116 | 117 | .content-with-sidebar { 118 | margin-right: 22em !important; 119 | } 120 | 121 | .post { 122 | background: #c4a000; 123 | padding: 1em; 124 | margin: 1em 0 1em 0; 125 | } 126 | 127 | #footer { 128 | margin-top: 1em; 129 | padding-top: 1em; 130 | border-top: 1px solid #ccc; 131 | text-align: center; 132 | font-size: 1em; 133 | clear: both; 134 | height: 4em; 135 | } 136 | 137 | .search { 138 | border: 1px solid #d4d4d4; 139 | color: #666; 140 | font-size: 1.0rem; 141 | height: 16px; 142 | width: 9em; 143 | line-height: 16px; 144 | float: right; 145 | padding: 1px 1px 1px 20px; 146 | margin: 4px 1em 0 0; 147 | background: #f4f4f4 url(../images/search-16x16.png) 2px 2px no-repeat; 148 | } 149 | 150 | .search-large { 151 | border: 1px solid #d4d4d4; 152 | color: #666; 153 | font-size: 1.6rem; 154 | height: 24px; 155 | width: 100%; 156 | box-sizing: border-box; 157 | line-height: 24px; 158 | padding: 1px 1px 1px 30px; 159 | background: #f4f4f4 url(../images/search-24x24.png) 2px 2px no-repeat; 160 | } 161 | 162 | .search-help { 163 | font-size: 1.3rem !important; 164 | margin-top: 8px; 165 | } 166 | 167 | .search-help code { 168 | font-family: Consolas, "Lucida Console", "Andale Mono", "Bitstream Vera Sans Mono", "Courier New", Courier; 169 | border: 1px solid #d4d4d4; 170 | background: #f4f4f4; 171 | padding: 1px; 172 | } 173 | 174 | .menu-box { 175 | margin: 0 1em; 176 | padding-top: 0.5em; 177 | height: 2.5em; 178 | line-height: 2.5em; 179 | } 180 | 181 | .menu-list-container { 182 | margin: 0; 183 | } 184 | 185 | .menu-list { 186 | margin-left: 1.25em; 187 | } 188 | 189 | .menu-list li { 190 | /*font-family: 'Open Sans Condensed', sans-serif !important;*/ 191 | /*font-family: 'PT Sans Narrow', sans-serif !important;*/ 192 | font-family: 'Cuprum', sans-serif !important; 193 | float: left; 194 | list-style: none; 195 | margin-right: 1.25em; 196 | padding: 0 0 1px 0; 197 | position: relative; 198 | top: 5px; 199 | } 200 | 201 | .menu-list li a { 202 | font-weight: normal; 203 | font-size: 1.6rem; 204 | text-decoration: none; 205 | color: #000; 206 | outline: none; 207 | text-align: center; 208 | text-transform: uppercase; 209 | letter-spacing: 0; 210 | display: block; 211 | float: left; 212 | height: 20px; 213 | overflow: hidden; 214 | /*margin: auto 2px;*/ 215 | margin: 0; 216 | line-height: 22px; 217 | } 218 | 219 | .menu-list li .icon { 220 | position: relative; 221 | top: 3px; 222 | } 223 | 224 | .menu-list li.current { 225 | border-bottom: 3px solid #3B5998; 226 | /*border-radius: 5px;*/ 227 | /*-moz-border-radius: 5px;*/ 228 | /*-webkit-border-radius: 5px;*/ 229 | /*border: 1px solid #b9b9b9;*/ 230 | /*background-color: #b9b9b9;*/ 231 | } 232 | 233 | .menu-list li.item-highlighted * { 234 | color: red; 235 | } 236 | 237 | .menu-list li a:hover, .menu-list li a:active, .menu-list li a:visited { 238 | border: none; 239 | } 240 | 241 | .live { 242 | margin: 1em; 243 | } 244 | 245 | .live li { 246 | margin-bottom: 0.5em; 247 | } 248 | 249 | .live li.last { 250 | margin-bottom: 0; 251 | } 252 | 253 | .live li .blog { 254 | color: rgb(0, 0, 0); 255 | } 256 | 257 | .live li .comments { 258 | color: #f00; 259 | } 260 | 261 | .notice { 262 | color: #888 !important; 263 | } 264 | 265 | .error { 266 | color: red; 267 | } 268 | 269 | .warning { 270 | color: #ff8c00; 271 | } 272 | 273 | .shiftUp { 274 | position: relative; 275 | top: -5px; 276 | } 277 | 278 | .caption-edit-link { 279 | float: right; 280 | font-size: 0.8em; 281 | } 282 | 283 | .filter-box { 284 | position: relative; 285 | height: 2em; 286 | margin: 0.25em 0; 287 | } 288 | 289 | .filter-box input { 290 | background: #f4f4f4 url(../images/filter-16x16.png) 2px 2px no-repeat; 291 | border: 1px solid #d4d4d4; 292 | height: 1.2em; 293 | line-height: 1em; 294 | position: absolute; 295 | margin-top: 4px; 296 | margin-bottom: 2px; 297 | padding: 1px 1px 1px 18px; 298 | right: 0; 299 | } 300 | 301 | .action-link img { 302 | vertical-align: middle; 303 | } 304 | 305 | .avatar { 306 | text-align: center; 307 | font-size: smaller; 308 | } 309 | 310 | /* Comments */ 311 | 312 | .comment { 313 | opacity: 1; 314 | } 315 | 316 | .comments { 317 | margin-top: 2em; 318 | } 319 | 320 | .comments .title { 321 | color:#3B5998 !important; 322 | font-size:1.8em; 323 | margin-bottom: 1em; 324 | } 325 | 326 | .comment-table { 327 | width: 100%; 328 | margin: 0.25em; 329 | } 330 | 331 | .comment-table td.left { 332 | /*vertical-align: top;*/ 333 | text-align: center; 334 | width: 100px; 335 | padding: 0.5em; 336 | } 337 | 338 | .comment-table td.right { 339 | text-align: left; 340 | vertical-align: top; 341 | padding: 0.5em; 342 | } 343 | 344 | .comment-table .reply { 345 | position: relative; 346 | top: -1em; 347 | } 348 | 349 | .comment-table .reply .arrow { 350 | text-decoration: none; 351 | font-size: 1.5rem; 352 | } 353 | 354 | .comment-table .reply a{ 355 | color: #B9B9B9 !important; 356 | } 357 | 358 | .comment-table .reply:hover a { 359 | color: inherit; 360 | } 361 | 362 | .comment-table .info { 363 | font-size: 0.8em; 364 | color: #B9B9B9; 365 | margin-bottom: 0.5em; 366 | position: relative; 367 | } 368 | 369 | .comment-table .info .item { 370 | margin-right: 0.5em; 371 | } 372 | 373 | .comment-table .info .item a { 374 | color: #B9B9B9 !important; 375 | } 376 | 377 | .comment-children li { 378 | margin: 0.1em 0 0.25em 4em; 379 | } 380 | 381 | .comment-content { 382 | line-height: 2rem; 383 | font-size: 1.3rem; 384 | } 385 | 386 | .comment-content .moveup .ttypography { 387 | position: relative !important; 388 | bottom: 0.8em !important; 389 | } 390 | 391 | .comment-bad { 392 | opacity: 0.3 !important; 393 | } 394 | 395 | .comment-too-bad { 396 | opacity: 0.3 !important; 397 | } 398 | 399 | .comment-bad:hover { 400 | opacity: 1 !important; 401 | } 402 | 403 | .comment-too-bad:hover { 404 | opacity: 1 !important; 405 | } 406 | 407 | .comment-content div.ttypography, 408 | .comment-table div.ttypography { 409 | line-height: 20px; 410 | font-size: 1.3rem; 411 | position: relative; 412 | bottom: 2px; 413 | } 414 | 415 | .centered-message { 416 | margin: 5em auto; 417 | text-align: center; 418 | font-size: 1.5em; 419 | } 420 | 421 | .welldone { 422 | color: green; 423 | font-weight: bold; 424 | } 425 | 426 | .countdown { 427 | color: #777; 428 | } 429 | 430 | .highlighted-row td, .highlighted-row th { 431 | background-color: #def !important; 432 | } 433 | 434 | .file { 435 | margin: 0.5em; 436 | font-size: 1.1rem; 437 | } 438 | 439 | .file .name { 440 | font-weight: bold; 441 | } 442 | 443 | .file .text { 444 | background-color: #ddd; 445 | } 446 | 447 | .infoline { 448 | margin: 0.5em; 449 | } 450 | 451 | /* from-renderer */ 452 | 453 | .from-renderer { 454 | display: inline !important; 455 | } 456 | 457 | .from-renderer ul,ul.list{ 458 | list-style-type:disc;list-style-position:outside;margin: 0.5em 0 0.5em 2em;padding-left:2em; 459 | } 460 | 461 | .from-renderer ol,ol.list{ 462 | list-style-type:decimal;list-style-position:outside;margin: 0.5em 0 0.5em 2em;padding-left:2em; 463 | } 464 | 465 | .from-renderer li,.list li{padding:0 0 0 1em;list-style-position:outside;margin:0.5em 0;} 466 | 467 | .from-renderer p { 468 | margin: 1.2em 0; 469 | } 470 | 471 | #edit_area_toggle_checkbox_label { 472 | font-size: 1.2rem; 473 | margin-left: 1em; 474 | } 475 | 476 | .red-link { 477 | background-color: #c00; 478 | color: white !important; 479 | font-weight: bold; 480 | padding: 0.2em; 481 | } 482 | 483 | .contest-state-phase { 484 | color: #3B5998; 485 | font-size: 1.5rem; 486 | font-weight: bold; 487 | } 488 | 489 | .contest-state-regular { 490 | font-size: 1.4em; 491 | color: #777 !important; 492 | } 493 | 494 | img.standings-flag { 495 | position: relative; 496 | top: 3px; 497 | margin-right: 0.35em; 498 | } 499 | 500 | .confirm-proto { 501 | margin: 1em; 502 | } 503 | 504 | .confirm-proto .text { 505 | padding-bottom: 1em; 506 | } 507 | 508 | .confirm-proto input { 509 | width: 6em; 510 | padding: 0.25em 0.5em; 511 | margin: 1em 1em 1em 1em; 512 | } 513 | 514 | .small { 515 | font-size: 1.0rem !important; 516 | } 517 | 518 | .small * { 519 | font-size: 1.0rem !important; 520 | } 521 | 522 | .smaller { 523 | font-size: 1.1rem !important; 524 | } 525 | 526 | .smaller * { 527 | font-size: 1.1rem !important; 528 | } 529 | 530 | .friendStar { 531 | /*position: relative;*/ 532 | /*left: 0.25em;*/ 533 | /*top: 0.25em;*/ 534 | } 535 | 536 | .caption { 537 | margin: 0 0 1em 0; 538 | font-size: 1.5rem; 539 | font-weight: bold; 540 | color: #3B5998; 541 | } 542 | 543 | .test-for-popup { 544 | margin: 1.5em 0 0 0; 545 | } 546 | 547 | .test-for-popup .test-header { 548 | font-weight: bold; 549 | font-size: 1.1rem; 550 | } 551 | 552 | .test-for-popup pre { 553 | border: 1px solid #aaa; 554 | background-color: #eee; 555 | font-size: 1.1rem; 556 | } 557 | 558 | .pagination { 559 | margin: 0 auto; 560 | } 561 | 562 | .pagination .inactive { 563 | font-size: 2em; 564 | color: #ccc; 565 | } 566 | 567 | .pagination a { 568 | text-decoration: none !important; 569 | color: black; 570 | } 571 | 572 | .pagination ul li { 573 | display: inline; 574 | } 575 | 576 | .pagination .page-index { 577 | padding: 0.25em; 578 | } 579 | 580 | .pagination span.active { 581 | border: 1px solid #ddd; 582 | background-color: #eee; 583 | font-weight: bold; 584 | } 585 | 586 | .pagination .arrow { 587 | font-size: 2em; 588 | color: black; 589 | } 590 | 591 | #datepick-div { 592 | z-index: 100000 !important; 593 | } 594 | 595 | div.alert-info { 596 | color: #3a87ad; 597 | background-color: #d9edf7; 598 | border-color: #bce8f1; 599 | } 600 | 601 | div.alert-success { 602 | color: #3c763d; 603 | background-color: #dff0d8; 604 | border-color: #d6e9c6; 605 | } 606 | 607 | .alert { 608 | padding: 8px 35px 8px 14px; 609 | margin-bottom: 20px; 610 | text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); 611 | background-color: #fcf8e3; 612 | border: 1px solid #fbeed5; 613 | -webkit-border-radius: 4px; 614 | -moz-border-radius: 4px; 615 | border-radius: 4px; 616 | 617 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 618 | font-size: 1.4rem; 619 | line-height: 20px; 620 | color: #333333; 621 | } 622 | 623 | @media screen and (max-width: 1024px) { 624 | .menu-list-container .search { 625 | display: none; 626 | } 627 | 628 | .menu-list li a { 629 | font-size: 1.4rem; 630 | } 631 | } 632 | 633 | span.participant { 634 | font-family: Arial, Helvetica, sans-serif; 635 | } 636 | 637 | .problems .accepted-problem td.act { 638 | background-color: #d4edc9 !important; 639 | } 640 | 641 | .problems .accepted-problem td.id { 642 | border-left: 6px solid #d4edc9 !important; 643 | } 644 | 645 | .problems .rejected-problem td.act { 646 | background-color: #ffe3e3 !important; 647 | } 648 | 649 | .problems .rejected-problem td.id { 650 | border-left: 6px solid #ffe3e3 !important; 651 | } 652 | 653 | .problems .submitted-verdict-problem td.act { 654 | background-color: #def !important; 655 | } 656 | 657 | .problems .submitted-verdict-problem td.id { 658 | border-left: 6px solid #def !important; 659 | } 660 | 661 | .problems td.act .act-item { 662 | margin: 0 0.35em; 663 | } 664 | 665 | .clickable-title { 666 | cursor: pointer; 667 | } 668 | 669 | .spoiler .spoiler-title { 670 | font-weight: normal; 671 | border-bottom: 1px dashed; 672 | cursor: pointer; 673 | } 674 | .spoiler:before { 675 | width: 16px; 676 | height: 16px; 677 | content:" "; 678 | float: left; 679 | display: block; 680 | background: url("../images/icons/control.png") no-repeat; 681 | /*https://habracdn.net/habr/images/1456937768/spoiler.icon.png*/ 682 | } 683 | .spoiler.spoiler-open:before { 684 | background: url("../images/icons/control-270.png") left bottom no-repeat; 685 | /*https://habracdn.net/habr/images/1456937768/spoiler.icon.png*/ 686 | } 687 | .spoiler-content { 688 | border: 1px solid gray; 689 | background-color: #def; 690 | border-radius: 5px; 691 | padding: 5px; 692 | margin-top: 5px; 693 | } 694 | 695 | .blog-entry-section-name { 696 | color: black; 697 | font-family: arial, verdana, sans-serif, 'Lucida Sans', sans-serif; 698 | text-decoration: none; 699 | font-weight: bold; 700 | } 701 | 702 | .ajax-loading-gif { 703 | display:none; 704 | position: absolute; 705 | right:-24px; 706 | bottom:0; 707 | } -------------------------------------------------------------------------------- /caches/css/table-form.css: -------------------------------------------------------------------------------- 1 | .table-form { 2 | margin: 1em auto; 3 | font-size: 1.1em; 4 | } 5 | 6 | .table-form tr { 7 | height: 2em; 8 | } 9 | 10 | .table-form tr td { 11 | height: 2em; 12 | } 13 | 14 | .table-form td td { 15 | padding-bottom: 0; 16 | margin-bottom: 0; 17 | } 18 | 19 | .table-form .field-name { 20 | text-align: right; 21 | padding: 0.5em 2em 0.5em 0.5em; 22 | width: 7.5em; 23 | } 24 | 25 | .table-form input { 26 | padding: 0.1em; 27 | } 28 | 29 | .table-form .submit { 30 | padding: 0 1em; 31 | margin: 1em 1em 0 1em; 32 | height: 2em; 33 | color: black; 34 | } 35 | 36 | .table-form tr.subscription-row { 37 | height: 1.2em; 38 | line-height: 1.2em; 39 | font-size: 0.7em; 40 | } 41 | 42 | .table-form tr.subscription-row td { 43 | height: 1.2em; 44 | line-height: 1.2em; 45 | } 46 | 47 | .table-form textarea.bottom-space-small { 48 | margin-bottom: 5px; 49 | } 50 | -------------------------------------------------------------------------------- /caches/css/topic.css: -------------------------------------------------------------------------------- 1 | .topic { 2 | /*margin: 1em 0 1em 0.5em;*/ 3 | margin: 0 0 2em 0; 4 | } 5 | 6 | .topic .title * { 7 | font-size: 2.4rem !important; 8 | color: #3B5998 !important; 9 | } 10 | 11 | .topic-userpic { 12 | text-align: center; 13 | display: inline; 14 | float: right; 15 | border: 1px solid rgb( 185, 185, 185 ); 16 | padding: 0.5em; 17 | } 18 | 19 | .topic .title a, .topic .title a:hover, .topic .title a:visited { 20 | color: #3B5998 !important; 21 | text-decoration: none; 22 | } 23 | 24 | .topic .content { 25 | margin: 1em 0; 26 | padding-left: 1em; 27 | border-left: 4px solid #B9B9B9; 28 | /*line-height: 1.85em;*/ 29 | /*font-size: 0.85em;*/ 30 | line-height: 20px; 31 | font-size: 1.2rem; 32 | } 33 | 34 | .topic .content p { 35 | margin: 1em 0; 36 | } 37 | 38 | .topic .right-meta { 39 | float: right; 40 | } 41 | 42 | .topic .left-meta { 43 | float: left; 44 | } 45 | 46 | .topic .meta { 47 | margin-top: 1em; 48 | height: 2.5em; 49 | } 50 | 51 | .topic .meta ul { 52 | margin: 0.75em; 53 | font-size: 0.9em; 54 | } 55 | 56 | .topic .meta .right-meta ul li { 57 | float: left; 58 | margin: 0 10px; 59 | } 60 | 61 | .topic .meta .left-meta ul li { 62 | float: left; 63 | margin: 0 2px; 64 | } 65 | 66 | .topic .meta .left-meta ul li img { 67 | opacity: 0.5; 68 | } 69 | 70 | .topic-edit .title { 71 | font-size: 1.8em; 72 | color: #3B5998; 73 | } 74 | 75 | .topic-edit .locale { 76 | margin: 0.5em 0; 77 | font-size: 1.2em; 78 | position: relative; 79 | } 80 | 81 | .topic-edit .switch-lang { 82 | font-size: 1.2em; 83 | position: relative; 84 | } 85 | 86 | .topic-edit .topic-edit-form { 87 | margin: 0 auto; 88 | } 89 | 90 | -------------------------------------------------------------------------------- /caches/css/ttypography.css: -------------------------------------------------------------------------------- 1 | div.ttypography textarea, 2 | div.ttypography pre, 3 | div.ttypography code, 4 | div.ttypography kbd, 5 | div.ttypography samp, 6 | div.ttypography var, 7 | div.ttypography tt { 8 | font-family: Consolas, "Lucida Console", "Andale Mono", "Bitstream Vera Sans Mono", "Courier New", Courier; 9 | } 10 | 11 | div.ttypography { 12 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 13 | base: 14px; 14 | line-height: 21px; 15 | color: #222; 16 | -webkit-text-size-adjust: 100%; 17 | font-size: 1.4rem; 18 | word-wrap: break-word; 19 | margin: 1.5em 0 0 0 !important; 20 | /*background-color: #ffffff;*/ 21 | } 22 | 23 | div.ttypography .tt { 24 | margin: 0 4px; 25 | padding: 2px 4px; 26 | /*white-space: nowrap;*/ 27 | border: 1px solid #CCC; 28 | background-color: #F8F8F8; 29 | border-radius: 3px; 30 | -moz-border-radius: 3px; 31 | -webkit-border-radius: 3px; 32 | border-image: initial; 33 | } 34 | 35 | div.ttypography h1, 36 | div.ttypography h2, 37 | div.ttypography h3, 38 | div.ttypography h4, 39 | div.ttypography h5, 40 | div.ttypography h6 { 41 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 42 | font-weight: 400; 43 | color: #161e21; 44 | margin: 0; 45 | } 46 | 47 | div.ttypography h1 { 48 | font-size: 250%; 49 | line-height: 0.8571em; 50 | margin: 0.4286em 0 0; 51 | } 52 | 53 | div.ttypography h2 { 54 | font-size: 200%; 55 | line-height: 1.2em; 56 | margin: 0.6em 0 0 0; 57 | } 58 | 59 | div.ttypography h3 { 60 | font-size: 175%; 61 | line-height: 0.8571em; 62 | margin: 0.8571em 0 0 0; 63 | } 64 | 65 | div.ttypography h4 { 66 | font-size: 150%; 67 | line-height: 1.25em; 68 | margin: 1.25em 0 0 0; 69 | } 70 | 71 | div.ttypography h5 { 72 | font-size: 135%; 73 | line-height: 1.2857em; 74 | margin: 1.2857em 0 0 0; 75 | } 76 | 77 | div.ttypography h6 { 78 | font-weight: bold; 79 | font-size: 100%; 80 | line-height: 1.5em; 81 | margin: 1.5em 0 0 0; 82 | } 83 | 84 | /* --- Lists | Listen -------------------------------------------------------------------------------- */ 85 | 86 | div.ttypography ul, 87 | div.ttypography ol, 88 | div.ttypography dl { 89 | font-size: 1em; 90 | line-height: 1.5em; 91 | margin: 0.5em 0 0 1em; 92 | } 93 | 94 | div.ttypography ul { 95 | list-style-type: disc; 96 | } 97 | 98 | div.ttypography ol { 99 | list-style-type: decimal; 100 | } 101 | 102 | div.ttypography ul ul { 103 | list-style-type: circle; 104 | margin-top: 0; 105 | } 106 | 107 | div.ttypography ol ol { 108 | list-style-type: lower-latin; 109 | margin-top: 0; 110 | } 111 | 112 | div.ttypography ol ul { 113 | list-style-type: circle; 114 | margin-top: 0; 115 | } 116 | 117 | div.ttypography li { 118 | font-size: 1em; 119 | line-height: 1.5em; 120 | margin-left: 0.8em; 121 | } 122 | 123 | div.ttypography dt { 124 | font-weight: bold; 125 | } 126 | 127 | div.ttypography dd { 128 | margin: 0 0 1.5em 0.8em; 129 | } 130 | 131 | div.ttypography p:not(:first-child) { 132 | margin: 1.5em 0 0 0; 133 | } 134 | 135 | div.ttypography p { 136 | font-size: 1em; 137 | line-height: 1.4em; 138 | } 139 | 140 | div.ttypography blockquote, 141 | div.ttypography cite, 142 | div.ttypography q { 143 | font-family: Georgia, "Times New Roman", Times, serif; 144 | font-style: italic; 145 | } 146 | 147 | div.ttypography blockquote { 148 | margin: 1.5em 0 0 1.5em; 149 | color: #666; 150 | } 151 | 152 | div.ttypography strong, 153 | div.ttypography b { 154 | font-weight: bold; 155 | } 156 | 157 | div.ttypography em, 158 | div.ttypography i { 159 | font-style: italic; 160 | } 161 | 162 | div.ttypography big { 163 | font-size: 116.667%; 164 | } 165 | 166 | div.ttypography small { 167 | font-size: 85.71%; 168 | } 169 | 170 | div.ttypography pre, 171 | div.ttypography code, 172 | div.ttypography kbd, 173 | div.ttypography tt, 174 | div.ttypography samp, 175 | div.ttypography var { 176 | font-size: 100%; 177 | } 178 | 179 | div.ttypography pre { 180 | line-height: 1.5em; 181 | margin: 1.5em 0 0 0; 182 | white-space: pre; 183 | white-space: pre-wrap; 184 | word-wrap: break-word; 185 | } 186 | 187 | div.ttypography pre, div.ttypography code { 188 | color: #800; 189 | } 190 | 191 | div.ttypography kbd, 192 | div.ttypography samp, 193 | div.ttypography var, 194 | div.ttypography tt { 195 | color: #666; 196 | font-weight: bold; 197 | } 198 | 199 | div.ttypography var, 200 | div.ttypography dfn { 201 | font-style: italic; 202 | } 203 | 204 | div.ttypography acronym, 205 | div.ttypography abbr { 206 | border-bottom: 1px #aaa dotted; 207 | font-variant: small-caps; 208 | letter-spacing: .07em; 209 | cursor: help; 210 | } 211 | 212 | div.ttypography sub, 213 | div.ttypography sup { 214 | font-size: 75%; 215 | line-height: 0; 216 | position: relative; 217 | vertical-align: baseline; 218 | } 219 | 220 | div.ttypography sup { 221 | top: -0.5em; 222 | } 223 | 224 | div.ttypography sub { 225 | bottom: -0.25em; 226 | } 227 | 228 | div.ttypography mark { 229 | background: #ff0; 230 | color: #000; 231 | } 232 | 233 | div.ttypography hr { 234 | color: #fff; 235 | background: transparent; 236 | margin: 0 0 0.75em 0; 237 | padding: 0 0 0.75em 0; 238 | border: 0; 239 | border-bottom: 1px #eee solid; 240 | } 241 | 242 | div.ttypography a { 243 | color: #4D87C7; 244 | background: transparent; 245 | text-decoration: none; 246 | } 247 | 248 | div.ttypography a:active { 249 | outline: none; 250 | } 251 | 252 | /* (en) maximum constrast for tab focus - change with great care */ 253 | /* (en) Maximaler Kontrast f锟絖r Tab Focus - 锟�"ndern Sie diese Regel mit Bedacht */ 254 | div.ttypography a:hover, 255 | div.ttypography a:focus { 256 | background-color: #800; 257 | color: #fff; 258 | text-decoration: none; 259 | } 260 | 261 | /* --- images ------------------ */ 262 | 263 | div.ttypography img, 264 | div.ttypography figure { 265 | margin: 0; 266 | } 267 | 268 | div.ttypography .flexible { 269 | margin-top: 1.5em; 270 | max-width: 100%; 271 | } 272 | 273 | div.ttypography .bordered { 274 | margin-top: 1.5em; 275 | border: 2px #eee solid; 276 | border: 2px rgba(255, 255, 255, 1) solid; 277 | -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, .25); 278 | -moz-box-shadow: 0 0 3px rgba(0, 0, 0, .25); 279 | box-shadow: 0 0 3px rgba(0, 0, 0, .25); 280 | } 281 | 282 | div.ttypography table { 283 | border-collapse: collapse; 284 | margin: 1.3571em 0 0 0; 285 | color: #222; 286 | border-top: 1px #ccc solid; 287 | border-bottom: 1px #ccc solid; 288 | } 289 | 290 | div.ttypography table.narrow { 291 | margin: 1.4286em 0 0 0; 292 | } 293 | 294 | div.ttypography table.narrow th, 295 | div.ttypography table.narrow td { 296 | padding: 0 0.5em; 297 | line-height: 1.4286em; 298 | } 299 | 300 | div.ttypography table.bordertable { 301 | border: 1px #ccc solid; 302 | } 303 | 304 | div.ttypography table caption { 305 | font-variant: small-caps; 306 | } 307 | 308 | div.ttypography th, 309 | div.ttypography td { 310 | line-height: 1.5em; 311 | vertical-align: top; 312 | padding: 0.7143em 0.5em; 313 | } 314 | 315 | div.ttypography th *:first-child, 316 | td *:first-child { 317 | margin-top: 0; 318 | } 319 | 320 | div.ttypography th.nowrap, 321 | div.ttypography td.nowrap { 322 | white-space: nowrap; 323 | } 324 | 325 | div.ttypography thead th { 326 | text-align: left; 327 | color: #000; 328 | border-bottom: 2px #000 solid; 329 | font-weight: bold; 330 | } 331 | 332 | div.ttypography .bordertable thead th { 333 | background: #e0e0e0; 334 | border-right: 1px #ccc solid; 335 | border-bottom: 1px #ccc solid; 336 | font-weight: bold; 337 | } 338 | 339 | div.ttypography .bordertable tbody th[scope="row"] { 340 | background: #f0f0f0; 341 | } 342 | 343 | div.ttypography tbody th { 344 | text-align: left; 345 | border-top: 1px solid #ccc; 346 | text-align: left; 347 | font-weight: bold; 348 | } 349 | 350 | div.ttypography .bordertable tbody th { 351 | border-right: 1px solid #ccc; 352 | font-weight: bold; 353 | } 354 | 355 | div.ttypography tbody td { 356 | text-align: left; 357 | border-top: 1px solid #ccc; 358 | } 359 | 360 | div.ttypography .bordertable tbody td { 361 | border-right: 1px solid #ccc; 362 | } 363 | 364 | /* highlight row on mouse over */ 365 | div.ttypography tbody tr:hover th, 366 | div.ttypography tbody tr:hover td { 367 | background: #f8f8f8; 368 | } 369 | 370 | div.ttypography pre code { 371 | font-size: 95%; 372 | position: relative; 373 | } 374 | 375 | div.ttypography .MathJax { 376 | color: black !important; 377 | } 378 | -------------------------------------------------------------------------------- /caches/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Eronana/CodeforcesCrawler/3c19923d29a23754ea10991c952207599ebe5067/caches/favicon.png -------------------------------------------------------------------------------- /caches/images/codeforces-logo-with-telegram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Eronana/CodeforcesCrawler/3c19923d29a23754ea10991c952207599ebe5067/caches/images/codeforces-logo-with-telegram.png -------------------------------------------------------------------------------- /caches/images/codeforces-telegram-square.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Eronana/CodeforcesCrawler/3c19923d29a23754ea10991c952207599ebe5067/caches/images/codeforces-telegram-square.png -------------------------------------------------------------------------------- /caches/images/flags/24/gb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Eronana/CodeforcesCrawler/3c19923d29a23754ea10991c952207599ebe5067/caches/images/flags/24/gb.png -------------------------------------------------------------------------------- /caches/images/flags/24/ru.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Eronana/CodeforcesCrawler/3c19923d29a23754ea10991c952207599ebe5067/caches/images/flags/24/ru.png -------------------------------------------------------------------------------- /caches/markitup/sets/markdown/style.css: -------------------------------------------------------------------------------- 1 | .miu-comment .markItUp .markItUpButton1 a { 2 | background-image:url(images/bold.png); 3 | } 4 | .miu-comment .markItUp .markItUpButton2 a { 5 | background-image:url(images/italic.png); 6 | } 7 | .miu-comment .markItUp .markItUpButton3 a { 8 | background-image:url(images/list-bullet.png); 9 | } 10 | .miu-comment .markItUp .markItUpButton4 a { 11 | background-image:url(images/list-numeric.png); 12 | } 13 | .miu-comment .markItUp .markItUpButton5 a { 14 | background-image:url(images/picture.png); 15 | } 16 | .miu-comment .markItUp .markItUpButton6 a { 17 | background-image:url(images/link.png); 18 | } 19 | .miu-comment .markItUp .markItUpButton7 a { 20 | background-image:url(images/code.png); 21 | } 22 | .miu-comment .markItUp .markItUpButton8 a { 23 | background-image:url(../../../images/codeforces-stripes-16x16.png); 24 | } 25 | 26 | .miu-complete .markItUp .markItUpButton1 a { 27 | background-image:url(images/h1.png); 28 | } 29 | .miu-complete .markItUp .markItUpButton2 a { 30 | background-image:url(images/h2.png); 31 | } 32 | .miu-complete .markItUp .markItUpButton3 a { 33 | background-image:url(images/h3.png); 34 | } 35 | .miu-complete .markItUp .markItUpButton4 a { 36 | background-image:url(images/h4.png); 37 | } 38 | 39 | .miu-complete .markItUp .markItUpButton5 a { 40 | background-image:url(images/bold.png); 41 | } 42 | .miu-complete .markItUp .markItUpButton6 a { 43 | background-image:url(images/italic.png); 44 | } 45 | 46 | .miu-complete .markItUp .markItUpButton7 a { 47 | background-image:url(images/list-bullet.png); 48 | } 49 | .miu-complete .markItUp .markItUpButton8 a { 50 | background-image:url(images/list-numeric.png); 51 | } 52 | .miu-complete .markItUp .markItUpButton9 a { 53 | background-image:url(images/picture.png); 54 | } 55 | .miu-complete .markItUp .markItUpButton10 a { 56 | background-image:url(images/link.png); 57 | } 58 | .miu-complete .markItUp .markItUpButton11 a { 59 | background-image:url(images/code.png); 60 | } 61 | .miu-complete .markItUp .markItUpButton12 a { 62 | background-image:url(../../../images/codeforces-stripes-16x16.png); 63 | } 64 | 65 | .markItUp .preview a { 66 | background-image:url(images/preview.png); 67 | } -------------------------------------------------------------------------------- /caches/markitup/skins/markitup/style.css: -------------------------------------------------------------------------------- 1 | /* ------------------------------------------------------------------- 2 | // markItUp! Universal MarkUp Engine, JQuery plugin 3 | // By Jay Salvat - http://markitup.jaysalvat.com/ 4 | // ------------------------------------------------------------------*/ 5 | .markItUp * { 6 | margin:0px; padding:0px; 7 | outline:none; 8 | } 9 | .markItUp a:link, 10 | .markItUp a:visited { 11 | color:#000; 12 | text-decoration:none; 13 | } 14 | .markItUp { 15 | /*width:700px;*/ 16 | margin:5px 0 5px 0; 17 | border:0px solid #F5F5F5; 18 | } 19 | .markItUpContainer { 20 | border:1px solid #B9B9B9; 21 | /*background:#FFF url(images/bg-container.png) repeat-x top left;*/ 22 | padding:5px 5px 2px 5px; 23 | font:11px Verdana, Arial, Helvetica, sans-serif; 24 | } 25 | .markItUpEditor { 26 | font:12px Consolas, "Lucida Console", "Andale Mono", "Bitstream Vera Sans Mono", "Courier New", Courier; 27 | padding:5px 5px 5px 5px; 28 | /*border:3px solid #3C769D;*/ 29 | border:1px solid #B9B9B9; 30 | /*border:3px solid #3B5998;*/ 31 | /*width:610px;*/ 32 | height:320px; 33 | /*background:#FFF url(images/bg-editor-none.png) no-repeat;*/ 34 | clear:both; 35 | line-height:18px; 36 | overflow:auto; 37 | } 38 | .markItUpPreviewFrame { 39 | overflow:auto; 40 | background-color:#FFFFFF; 41 | border:1px solid #3C769D; 42 | width:99.9%; 43 | height:300px; 44 | margin:5px 0; 45 | } 46 | .markItUpFooter { 47 | width:100%; 48 | cursor:n-resize; 49 | } 50 | .markItUpResizeHandle { 51 | overflow:hidden; 52 | width:22px; height:5px; 53 | margin-left:auto; 54 | margin-right:auto; 55 | background-image:url(images/handle.png); 56 | cursor:n-resize; 57 | } 58 | /***************************************************************************************/ 59 | /* first row of buttons */ 60 | .markItUpHeader ul li { 61 | list-style:none; 62 | float:left; 63 | position:relative; 64 | margin: 0; 65 | padding: 0; 66 | } 67 | .markItUpHeader ul li ul{ 68 | display:none; 69 | } 70 | .markItUpHeader ul li:hover > ul{ 71 | display:block; 72 | } 73 | .markItUpHeader ul .markItUpDropMenu { 74 | background:transparent url(images/menu.png) no-repeat 115% 50%; 75 | margin-right:5px; 76 | } 77 | .markItUpHeader ul .markItUpDropMenu li { 78 | margin-right:0px; 79 | } 80 | .markItUpHeader ul .markItUpSeparator { 81 | margin:0 10px; 82 | width:1px; 83 | height:16px; 84 | overflow:hidden; 85 | background-color:#CCC; 86 | } 87 | .markItUpHeader ul ul .markItUpSeparator { 88 | width:auto; height:1px; 89 | margin:0px; 90 | } 91 | /* next rows of buttons */ 92 | .markItUpHeader ul ul { 93 | display:none; 94 | position:absolute; 95 | top:18px; left:0px; 96 | background:#fff; 97 | border:1px solid #B9B9B9; 98 | height:inherit; 99 | } 100 | .markItUpHeader ul ul li { 101 | float:none; 102 | border-bottom:1px solid #B9B9B9; 103 | } 104 | .markItUpHeader ul ul .markItUpDropMenu { 105 | /*background:#F5F5F5 url(images/submenu.png) no-repeat 100% 50%;*/ 106 | background:#fff url(images/submenu.png) no-repeat 100% 50%; 107 | } 108 | /* next rows of buttons */ 109 | .markItUpHeader ul ul ul { 110 | position:absolute; 111 | top:-1px; left:150px; 112 | } 113 | .markItUpHeader ul ul ul li { 114 | float:none; 115 | } 116 | .markItUpHeader ul a { 117 | display:block; 118 | width:16px; height:16px; 119 | text-indent:-10000px; 120 | background-repeat:no-repeat; 121 | padding:3px; 122 | margin:0px; 123 | } 124 | .markItUpHeader ul ul a { 125 | display:block; 126 | padding-left:0px; 127 | text-indent:0; 128 | width:120px; 129 | padding:5px 5px 5px 25px; 130 | background-position:2px 50%; 131 | } 132 | .markItUpHeader ul ul a:hover { 133 | color:#FFF; 134 | background-color:#3C769D; 135 | } 136 | /***************************************************************************************/ 137 | .html .markItUpEditor { 138 | background-image:url(images/bg-editor-html.png); 139 | } 140 | .markdown .markItUpEditor { 141 | background-image:url(images/bg-editor-none.png); 142 | } 143 | .textile .markItUpEditor { 144 | background-image:url(images/bg-editor-textile.png); 145 | } 146 | .bbcode .markItUpEditor { 147 | background-image:url(images/bg-editor-bbcode.png); 148 | } 149 | .wiki .markItUpEditor, 150 | .dotclear .markItUpEditor { 151 | background-image:url(images/bg-editor-wiki.png); 152 | } -------------------------------------------------------------------------------- /clear.sh: -------------------------------------------------------------------------------- 1 | rm -f contest/* 2 | rm -f html/* 3 | rm -f problem/* 4 | rm -f src/* -------------------------------------------------------------------------------- /crawl_html.py: -------------------------------------------------------------------------------- 1 | import urllib 2 | import urllib2 3 | import json 4 | import re 5 | import os 6 | import sys 7 | import threading 8 | import HTMLParser 9 | 10 | pdfs=[] 11 | def get_html(url): 12 | if url[0]=='/': 13 | if url[1]!='/': 14 | url='https://codeforces.com/'+url 15 | else: 16 | url="https:"+url 17 | t=5 18 | while t>0: 19 | try: 20 | return urllib2.urlopen(url).read() 21 | except: 22 | t-=1 23 | print "open url failed:%s"%url 24 | def allre(reg): 25 | return re.compile(reg,re.DOTALL) 26 | def down_src(html): 27 | src=allre(r'src="(.*?)"').findall(html) 28 | for s in src: 29 | nsrc='src/'+s.replace(':','_').replace('/','_') 30 | open(workdir+nsrc,"wb").write(get_html(s)) 31 | html=html.replace(s,'../'+nsrc) 32 | html=html.replace('style="max-width: 100.0%;max-height: 100.0%;"','') # windows workaround 33 | return html 34 | 35 | def get_contest_amount(): 36 | c=json.loads(get_html('/api/contest.list'))['result'] 37 | ret=0 38 | for cc in c: 39 | if cc['phase']=='FINISHED': 40 | ret=max(ret,cc['id']) 41 | return ret 42 | def get_contest(c): 43 | html=get_html("/contest/%d/problems"%c) 44 | p=allre('class="caption">(.*?)').findall(html) 45 | if len(p)==0: 46 | return None 47 | title=HTMLParser.HTMLParser().unescape(p[0]) 48 | html=allre('(
5: 80 | print "Usage:\n\t%s begin end threads [workdir]"%sys.argv[0] 81 | exit() 82 | if arglen==5: 83 | workdir=sys.argv[4] 84 | else: 85 | workdir="./" 86 | begin=int(sys.argv[1]) 87 | end=int(sys.argv[2]) 88 | if begin==-1: 89 | if not os.path.exists("./html/update"): 90 | f=open("./html/update","w") 91 | f.write("0") 92 | f.close() 93 | begin=int(open("./html/update","r").read())+1 94 | print "crawl missing contests from %d:"%(begin) 95 | if end==-1: 96 | print "trying to get amount of contests ... ", 97 | end=get_contest_amount() 98 | print "%d"%end 99 | threads=int(sys.argv[3]) 100 | for d in ['src','html']: 101 | d=workdir+d 102 | if not os.path.exists(d): 103 | print "makedirs:%s"%d 104 | os.makedirs(d) 105 | lock = threading.RLock() 106 | header=open("header.html").read() 107 | print "crawl contest %d to %d\n%d threads used,save in %s"%(begin,end,threads,workdir) 108 | t=[] 109 | for i in range(threads): 110 | t.append(crawl_contest()) 111 | t[len(t)-1].start() 112 | for i in t: 113 | i.join() 114 | 115 | f=open("./html/update","w") 116 | f.write(str(end)) 117 | f.close() 118 | print "converting into pdf..." 119 | for i in pdfs: 120 | pdf_path="./pdf"+i.replace(".html",".pdf").replace("./html","") 121 | os.system('xvfb-run wkhtmltopdf -q --no-stop-slow-scripts --javascript-delay 10000 "%s" "%s"'%(i,pdf_path)) 122 | print "coverted:[%s]"%pdf_path 123 | -------------------------------------------------------------------------------- /header.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | Problems - Codeforces 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 |
74 |
75 | 87 | -------------------------------------------------------------------------------- /html/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /html2pdf.sh: -------------------------------------------------------------------------------- 1 | cd html 2 | for h in *.html; 3 | do 4 | wkhtmltopdf -q "$h" "../pdf/`echo "$h"|sed "s/\.html/\.pdf/"`" 5 | done 6 | -------------------------------------------------------------------------------- /src/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | --------------------------------------------------------------------------------