├── .gitignore
├── README.md
├── composer.json
├── dist
├── css
│ ├── -leaflet.routing.icons.png
│ ├── -leaflet.routing.icons.svg
│ ├── fullscreen.png
│ ├── fullscreen@2x.png
│ ├── images
│ │ ├── geocoder.png
│ │ ├── layers-2x.png
│ │ ├── layers.png
│ │ ├── measure-control.png
│ │ └── measure-control.svg
│ ├── index.min.css
│ ├── leaflet.routing.icons.svg
│ ├── libraries.css
│ ├── map
│ │ └── index.min.css.map
│ ├── marker-icon-2x.png
│ ├── marker-icon.png
│ ├── marker-shadow.png
│ ├── modes.icons.svg
│ ├── routing-icon.png
│ └── throbber.gif
└── js
│ └── libraries.js
├── favicon.ico
├── gulpfile.js
├── home.html
├── img
├── arrow_redo.png
├── arrow_undo.png
├── g_logo.svg
├── google-logo_26.jpg
├── google-logo_26_hover.png
├── icon_gps_detect.svg
├── l_logo.svg
├── leaflet-images
│ ├── layers-2x.png
│ ├── layers.png
│ ├── marker-icon-2x.png
│ ├── marker-icon.png
│ └── marker-shadow.png
├── leaflet-logo_26.jpg
├── leaflet-logo_26_hover.png
├── menu-arrow_min.png
├── y_logo.svg
├── yadenx-logo_26.jpg
└── yadenx-logo_26_hover.png
├── index.php
└── src
├── js
├── index.js
└── ui-logic.js
└── scss
└── index.scss
/.gitignore:
--------------------------------------------------------------------------------
1 | /node_modules
2 | ### JetBrains template
3 | # Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio
4 |
5 | *.iml
6 |
7 | ## Directory-based project format:
8 | .idea/
9 | # if you remove the above rule, at least ignore the following:
10 |
11 | # User-specific stuff:
12 | # .idea/workspace.xml
13 | # .idea/tasks.xml
14 | # .idea/dictionaries
15 |
16 | # Sensitive or high-churn files:
17 | # .idea/dataSources.ids
18 | # .idea/dataSources.xml
19 | # .idea/sqlDataSources.xml
20 | # .idea/dynamic.xml
21 | # .idea/uiDesigner.xml
22 |
23 | # Gradle:
24 | # .idea/gradle.xml
25 | # .idea/libraries
26 |
27 | # Mongo Explorer plugin:
28 | # .idea/mongoSettings.xml
29 |
30 | ## File-based project format:
31 | *.ipr
32 | *.iws
33 |
34 | ## Plugin-specific files:
35 |
36 | # IntelliJ
37 | /out/
38 |
39 | # mpeltonen/sbt-idea plugin
40 | .idea_modules/
41 |
42 | # JIRA plugin
43 | atlassian-ide-plugin.xml
44 |
45 | # Crashlytics plugin (for Android Studio and IntelliJ)
46 | com_crashlytics_export_strings.xml
47 | crashlytics.properties
48 | crashlytics-build.properties
49 | ### Vagrant template
50 | .vagrant/
51 | /lib/
52 | /node_modules/
53 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | All maps in one place!
2 |
3 | Google maps
4 | Yandex maps
5 | OSM and others
6 |
7 | Example:
8 | https://all-maps.herokuapp.com/
9 |
10 | Example of usage:
11 | https://carries.herokuapp.com/
12 |
--------------------------------------------------------------------------------
/composer.json:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/dist/css/-leaflet.routing.icons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/dist/css/-leaflet.routing.icons.png
--------------------------------------------------------------------------------
/dist/css/-leaflet.routing.icons.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/dist/css/fullscreen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/dist/css/fullscreen.png
--------------------------------------------------------------------------------
/dist/css/fullscreen@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/dist/css/fullscreen@2x.png
--------------------------------------------------------------------------------
/dist/css/images/geocoder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/dist/css/images/geocoder.png
--------------------------------------------------------------------------------
/dist/css/images/layers-2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/dist/css/images/layers-2x.png
--------------------------------------------------------------------------------
/dist/css/images/layers.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/dist/css/images/layers.png
--------------------------------------------------------------------------------
/dist/css/images/measure-control.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/dist/css/images/measure-control.png
--------------------------------------------------------------------------------
/dist/css/images/measure-control.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
21 |
23 |
41 |
43 |
44 |
46 | image/svg+xml
47 |
49 |
50 |
51 |
52 |
53 |
58 |
60 |
63 |
70 |
75 |
80 |
85 |
90 |
91 |
92 |
93 |
94 |
--------------------------------------------------------------------------------
/dist/css/index.min.css:
--------------------------------------------------------------------------------
1 | body,html{margin:0;padding:0;height:100%;width:100%;line-height:1.5}html body .gm-iv-address{box-sizing:content-box}html body .gm-style>div:nth-child(2){left:initial!important;right:0!important;bottom:10px!important}html body .ymaps-2-1-41-copyright{top:-9px;right:-3px}html body .ymaps-2-1-41-map-copyrights-promo{bottom:11px!important;right:-3px!important}html body .ymaps-2-1-41-map-copyrights-promo iframe{position:relative;float:right;bottom:-4px;right:-3px}html body .leaflet-control-container .leaflet-control{clear:none}html body .leaflet-control-container .leaflet-control-geocoder .leaflet-control-geocoder-form{float:right}html body .leaflet-control-container .leaflet-control-geocoder .leaflet-control-geocoder-form input{padding:0 0 0 10px;margin:0;height:26px;box-shadow:none}html body .leaflet-control-container .leaflet-control-layers-toggle{background-size:90%;width:26px;height:26px}html body .leaflet-control-container .leaflet-routing-container{min-height:26px}html body .leaflet-control-container .leaflet-routing-container .leaflet-routing-collapse-btn{top:-4px}html body .leaflet-control-container .leaflet-routing-container-hide{width:26px;height:26px;padding-top:0}html body .leaflet-control-container .leaflet-routing-container-hide .leaflet-routing-collapse-btn{height:26px;width:26px;background-size:80%;background-repeat:no-repeat;background-position:center;position:static}.main-container{height:100%}.main-container .full-width{display:block;width:100%}.main-container .wrapper-with-padding{padding:20px}.main-container .paragraph-with-padding{padding:15px 0;margin:5px 0}.main-container .hover-pointer{cursor:pointer}.main-container .weight-text{font-weight:700}.main-container .container-maps-and-content{height:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.main-container .container-maps-and-content #containerMaps{position:relative;height:100%;width:100%;overflow:hidden;padding:0}.main-container .container-maps-and-content #containerMaps #containerOwnControls{height:43px;width:186px;position:absolute;bottom:0;left:0;background-color:#fff;z-index:2147483647;border-top:1px solid #cacaca}.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-gps-control,.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-history-controls,.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-toggle-maps{height:100%;float:left;display:inline-block;border-right:1px solid #cacaca}.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-gps-control__wrapper-buttons,.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-history-controls__wrapper-buttons,.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-toggle-maps__wrapper-buttons{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;height:60%}.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-gps-control__wrapper-buttons #btnDetectorGps,.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-history-controls__wrapper-buttons #container-history-controls-container-btn_redo,.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-history-controls__wrapper-buttons #container-history-controls-container-btn_undo,.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-toggle-maps__wrapper-buttons #buttonGoogle,.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-toggle-maps__wrapper-buttons #buttonLeaflet,.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-toggle-maps__wrapper-buttons #buttonYandex{height:100%;display:inline-block;float:left;cursor:pointer;background-repeat:no-repeat;background-position:center}.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-gps-control__wrapper-buttons #btnDetectorGps:hover,.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-history-controls__wrapper-buttons #container-history-controls-container-btn_redo:hover,.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-history-controls__wrapper-buttons #container-history-controls-container-btn_undo:hover,.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-toggle-maps__wrapper-buttons #buttonGoogle:hover,.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-toggle-maps__wrapper-buttons #buttonLeaflet:hover,.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-toggle-maps__wrapper-buttons #buttonYandex:hover{background-color:#ebebeb}.main-container .container-maps-and-content #containerMaps #containerOwnControls .group-header{height:40%;padding:0 3px;font-size:12px;text-align:center;border-bottom:1px solid #cacaca}.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-gps-control{width:18%}.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-gps-control__wrapper-buttons #btnDetectorGps{width:100%;background-image:url(/img/icon_gps_detect.svg);background-size:62%}.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-history-controls{width:34%}.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-history-controls__wrapper-buttons #container-history-controls-container-btn_undo{width:50%;border-right:1px solid #cacaca;background-image:url(/img/arrow_undo.png);background-size:80%}.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-history-controls__wrapper-buttons #container-history-controls-container-btn_redo{width:50%;background-image:url(/img/arrow_redo.png);background-size:80%}.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-history-controls__wrapper-buttons .disable-btn-history{background-color:#cacaca}.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-toggle-maps{width:48%}.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-toggle-maps__wrapper-buttons #buttonGoogle{width:33.33%;background-size:auto 80%;background-image:url(/img/google-logo_26_hover.png);border-right:1px solid #cacaca}.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-toggle-maps__wrapper-buttons #buttonYandex{width:33.33%;background-size:auto 80%;background-image:url(/img/yadenx-logo_26_hover.png);border-right:1px solid #cacaca}.main-container .container-maps-and-content #containerMaps #containerOwnControls .container-toggle-maps__wrapper-buttons #buttonLeaflet{width:33.33%;background-size:auto 80%;background-image:url(/img/leaflet-logo_26_hover.png)}.main-container .container-maps-and-content #containerMaps #googleMaps,.main-container .container-maps-and-content #containerMaps #leafletMaps,.main-container .container-maps-and-content #containerMaps #yandexMaps{height:100%;width:100%}.main-container .container-maps-and-content #containerContent{height:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.main-container .container-maps-and-content #containerContent #containerIcoOpenSlider{display:-ms-flexbox;display:flex;height:100%;cursor:col-resize;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;border-right:1px solid #9e9e9e;border-left:1px solid #9e9e9e}.main-container .container-maps-and-content #containerContent #containerIcoOpenSlider #icoOpenSlider{width:30px;height:90px;background-image:url(/img/menu-arrow_min.png);background-repeat:no-repeat;background-position:center;background-size:60%;cursor:pointer}.main-container .container-maps-and-content #containerContent #rightMenu{display:block;height:100%;width:600px;overflow:auto}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-greeting,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-menu,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-place,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-task,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-schedule,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-settings{padding:0 10px}.main-container .container-maps-and-content #containerContent #rightMenu .btn-add-data{display:block;width:100%}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-datetimepicker{position:relative}.main-container .container-maps-and-content #containerContent #rightMenu .panel-heading{cursor:pointer}.main-container .container-maps-and-content #containerContent #rightMenu .hint-text{font-size:.8em;color:red}.main-container .container-maps-and-content #containerContent #rightMenu .alert-error-listener,.main-container .container-maps-and-content #containerContent #rightMenu .alert-success-listener{display:none}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-menu{list-style:none}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-schedule .wrapper-task-list-by-day .one-day-listener .wrapper-task-list-listener{padding:10px 40px 20px}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-schedule .wrapper-task-list-by-day .one-day-listener .wrapper-task-list-listener .sorted-task-list-listener{padding:0}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-place .wrapper-around-clock-time-work,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-task .around-clock-time-work,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-task .wrapper-around-clock-time-work,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-schedule .wrapper-around-clock-time-work{padding:6px 0}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-schedule .wrapper-task-list-by-day .one-day-listener .wrapper-task-list-listener .sorted-task-list-listener .task-row-listener{position:relative;border-bottom:1px solid grey;padding:6px 0}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-schedule .wrapper-task-list-by-day .one-day-listener .wrapper-task-list-listener .sorted-task-list-listener .task-row-listener .task-name-listener{display:inline-block}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-schedule .wrapper-task-list-by-day .one-day-listener .wrapper-task-list-listener .sorted-task-list-listener .task-row-listener .wrapper-task-icons{display:inline-block;position:absolute;right:20px}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-schedule .wrapper-task-list-by-day .one-day-listener .wrapper-task-list-listener .sorted-task-list-listener .task-row-listener .wrapper-task-icons .icon-edit-task{color:green;cursor:pointer}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-schedule .wrapper-task-list-by-day .one-day-listener .wrapper-task-list-listener .sorted-task-list-listener .task-row-listener .wrapper-task-icons .icon-remove-task{color:red;cursor:pointer}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-schedule .wrapper-task-list-by-day .one-day-listener .wrapper-task-list-listener .sorted-task-list-listener .form-update-create-task{margin:15px 0 0}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-task .wrapper-select-place{margin:15px 0 10px}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-task .wrapper-select-place .wrapper-place-information-for-editing-listener{margin:10px 0 0}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-place{margin:5px 0}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-place .wrapper-around-clock-time-work .label-around-clock-time-work,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-task .wrapper-around-clock-time-work .label-around-clock-time-work,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-schedule .wrapper-around-clock-time-work .label-around-clock-time-work{margin:0}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-place .form-add-place,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-task .form-add-place,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-schedule .form-add-place{margin:0 0 30px}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-place .btn-add-new-time-range,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-task .btn-add-new-time-range,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-schedule .btn-add-new-time-range{display:block}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-place .wrapper-added-places,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-task .wrapper-added-places,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-schedule .wrapper-added-places{border-top:1px solid #8b0000;padding:30px 0 0}.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-place .wrapper-added-places .wrapper-place-information-for-editing-listener,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-new-task .wrapper-added-places .wrapper-place-information-for-editing-listener,.main-container .container-maps-and-content #containerContent #rightMenu .wrapper-schedule .wrapper-added-places .wrapper-place-information-for-editing-listener{margin:10px 0 0}
2 | /*# sourceMappingURL=map/index.min.css.map */
3 |
--------------------------------------------------------------------------------
/dist/css/leaflet.routing.icons.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/dist/css/libraries.css:
--------------------------------------------------------------------------------
1 | /*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */.flex-video,svg:not(:root){overflow:hidden}abbr,body,code,kbd{color:#0a0a0a}[type=button],[type=submit],button,select{-moz-appearance:none}.invisible,.leaflet-tile{visibility:hidden}.leaflet-routing-alt table,table{border-collapse:collapse}button,img,legend{border:0}body,button,legend{padding:0}h1,h2,h3,h4,h5,h6,p{text-rendering:optimizeLegibility}.input-group,[type=file],select{width:100%}img,select[multiple],textarea[rows]{height:auto}[data-whatinput=mouse] .button,[data-whatinput=mouse] button,a:active,a:hover{outline:0}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}abbr[title]{border-bottom:1px dotted}b,optgroup,strong{font-weight:700}dfn{font-style:italic}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{max-width:100%;-ms-interpolation-mode:bicubic;display:inline-block;vertical-align:middle}figure{margin:1em 40px}pre,textarea{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}a,b,em,i,small,strong{line-height:inherit}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:not-allowed}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:border-box}.button,[type=button],[type=submit],button,select{-webkit-appearance:none}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-spacing:0}.foundation-mq{font-family:"small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"}body,h1,h2,h3,h4,h5,h6{font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-weight:400}html{font-size:100%;box-sizing:border-box}*,::after,::before{box-sizing:inherit}body{line-height:1.5;background:#fefefe;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#map_canvas embed,#map_canvas img,#map_canvas object,.map_canvas embed,.map_canvas img,.map_canvas object,.mqa-display embed,.mqa-display img,.mqa-display object{max-width:none!important}button{overflow:visible;background:0 0;border-radius:0;line-height:1}.is-visible{display:block!important}.is-hidden{display:none!important}.row{max-width:75rem;margin-left:auto;margin-right:auto;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap}.row .row,.row.expanded{max-width:none}.row .row{margin-left:-.625rem;margin-right:-.625rem}.row.collapse>.column,.row.collapse>.columns{padding-left:0;padding-right:0}.column,.columns{-ms-flex:1 1 0px;flex:1 1 0px;padding-left:.625rem;padding-right:.625rem;min-width:initial}@media screen and (min-width:40em){.row .row{margin-left:-.9375rem;margin-right:-.9375rem}.column,.columns{padding-left:.9375rem;padding-right:.9375rem}}.column.row.row,.row.row.columns{float:none;display:block}.row .column.row.row,.row .row.row.columns{padding-left:0;padding-right:0;margin-left:0;margin-right:0}.small-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.small-offset-0{margin-left:0}.small-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.small-offset-1{margin-left:8.33333%}.small-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.small-offset-2{margin-left:16.66667%}.small-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.small-offset-3{margin-left:25%}.small-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.small-offset-4{margin-left:33.33333%}.small-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.small-offset-5{margin-left:41.66667%}.small-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.small-offset-6{margin-left:50%}.small-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.small-offset-7{margin-left:58.33333%}.small-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.small-offset-8{margin-left:66.66667%}.small-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.small-offset-9{margin-left:75%}.small-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.small-offset-10{margin-left:83.33333%}.small-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.small-offset-11{margin-left:91.66667%}.small-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-1>.column,.small-up-1>.columns{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.small-up-2{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-2>.column,.small-up-2>.columns{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.small-up-3{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-3>.column,.small-up-3>.columns{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.small-up-4{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-4>.column,.small-up-4>.columns{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.small-up-5{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-5>.column,.small-up-5>.columns{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.small-up-6{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-6>.column,.small-up-6>.columns{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.small-up-7{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-7>.column,.small-up-7>.columns{-ms-flex:0 0 14.28571%;flex:0 0 14.28571%;max-width:14.28571%}.small-up-8{-ms-flex-wrap:wrap;flex-wrap:wrap}.small-up-8>.column,.small-up-8>.columns{-ms-flex:0 0 12.5%;flex:0 0 12.5%;max-width:12.5%}.small-collapse>.column,.small-collapse>.columns{padding-left:0;padding-right:0}.small-uncollapse>.column,.small-uncollapse>.columns{padding-left:.625rem;padding-right:.625rem}@media screen and (min-width:40em){.medium-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.medium-offset-0{margin-left:0}.medium-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.medium-offset-1{margin-left:8.33333%}.medium-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.medium-offset-2{margin-left:16.66667%}.medium-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.medium-offset-3{margin-left:25%}.medium-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.medium-offset-4{margin-left:33.33333%}.medium-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.medium-offset-5{margin-left:41.66667%}.medium-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.medium-offset-6{margin-left:50%}.medium-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.medium-offset-7{margin-left:58.33333%}.medium-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.medium-offset-8{margin-left:66.66667%}.medium-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.medium-offset-9{margin-left:75%}.medium-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.medium-offset-10{margin-left:83.33333%}.medium-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.medium-offset-11{margin-left:91.66667%}.medium-order-1{-ms-flex-order:1;order:1}.medium-order-2{-ms-flex-order:2;order:2}.medium-order-3{-ms-flex-order:3;order:3}.medium-order-4{-ms-flex-order:4;order:4}.medium-order-5{-ms-flex-order:5;order:5}.medium-order-6{-ms-flex-order:6;order:6}.medium-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-1>.column,.medium-up-1>.columns{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.medium-up-2{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-2>.column,.medium-up-2>.columns{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.medium-up-3{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-3>.column,.medium-up-3>.columns{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.medium-up-4{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-4>.column,.medium-up-4>.columns{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.medium-up-5{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-5>.column,.medium-up-5>.columns{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.medium-up-6{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-6>.column,.medium-up-6>.columns{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.medium-up-7{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-7>.column,.medium-up-7>.columns{-ms-flex:0 0 14.28571%;flex:0 0 14.28571%;max-width:14.28571%}.medium-up-8{-ms-flex-wrap:wrap;flex-wrap:wrap}.medium-up-8>.column,.medium-up-8>.columns{-ms-flex:0 0 12.5%;flex:0 0 12.5%;max-width:12.5%}}@media screen and (min-width:40em) and (min-width:40em){.medium-expand{-ms-flex:1 1 0px;flex:1 1 0px}}.row.medium-unstack>.column,.row.medium-unstack>.columns{-ms-flex:0 0 100%;flex:0 0 100%}@media screen and (min-width:40em){.row.medium-unstack>.column,.row.medium-unstack>.columns{-ms-flex:1 1 0px;flex:1 1 0px}.medium-collapse>.column,.medium-collapse>.columns{padding-left:0;padding-right:0}.medium-uncollapse>.column,.medium-uncollapse>.columns{padding-left:.9375rem;padding-right:.9375rem}}@media screen and (min-width:64em){.large-1{-ms-flex:0 0 8.33333%;flex:0 0 8.33333%;max-width:8.33333%}.large-offset-0{margin-left:0}.large-2{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.large-offset-1{margin-left:8.33333%}.large-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.large-offset-2{margin-left:16.66667%}.large-4{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.large-offset-3{margin-left:25%}.large-5{-ms-flex:0 0 41.66667%;flex:0 0 41.66667%;max-width:41.66667%}.large-offset-4{margin-left:33.33333%}.large-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.large-offset-5{margin-left:41.66667%}.large-7{-ms-flex:0 0 58.33333%;flex:0 0 58.33333%;max-width:58.33333%}.large-offset-6{margin-left:50%}.large-8{-ms-flex:0 0 66.66667%;flex:0 0 66.66667%;max-width:66.66667%}.large-offset-7{margin-left:58.33333%}.large-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.large-offset-8{margin-left:66.66667%}.large-10{-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.large-offset-9{margin-left:75%}.large-11{-ms-flex:0 0 91.66667%;flex:0 0 91.66667%;max-width:91.66667%}.large-offset-10{margin-left:83.33333%}.large-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.large-offset-11{margin-left:91.66667%}.large-order-1{-ms-flex-order:1;order:1}.large-order-2{-ms-flex-order:2;order:2}.large-order-3{-ms-flex-order:3;order:3}.large-order-4{-ms-flex-order:4;order:4}.large-order-5{-ms-flex-order:5;order:5}.large-order-6{-ms-flex-order:6;order:6}.large-up-1{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-1>.column,.large-up-1>.columns{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.large-up-2{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-2>.column,.large-up-2>.columns{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.large-up-3{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-3>.column,.large-up-3>.columns{-ms-flex:0 0 33.33333%;flex:0 0 33.33333%;max-width:33.33333%}.large-up-4{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-4>.column,.large-up-4>.columns{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.large-up-5{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-5>.column,.large-up-5>.columns{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.large-up-6{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-6>.column,.large-up-6>.columns{-ms-flex:0 0 16.66667%;flex:0 0 16.66667%;max-width:16.66667%}.large-up-7{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-7>.column,.large-up-7>.columns{-ms-flex:0 0 14.28571%;flex:0 0 14.28571%;max-width:14.28571%}.large-up-8{-ms-flex-wrap:wrap;flex-wrap:wrap}.large-up-8>.column,.large-up-8>.columns{-ms-flex:0 0 12.5%;flex:0 0 12.5%;max-width:12.5%}}.shrink,legend,textarea{max-width:100%}@media screen and (min-width:64em) and (min-width:64em){.large-expand{-ms-flex:1 1 0px;flex:1 1 0px}}.row.large-unstack>.column,.row.large-unstack>.columns{-ms-flex:0 0 100%;flex:0 0 100%}@media screen and (min-width:64em){.row.large-unstack>.column,.row.large-unstack>.columns{-ms-flex:1 1 0px;flex:1 1 0px}.large-collapse>.column,.large-collapse>.columns{padding-left:0;padding-right:0}.large-uncollapse>.column,.large-uncollapse>.columns{padding-left:.9375rem;padding-right:.9375rem}}.shrink{-ms-flex:0 0 auto;flex:0 0 auto}.align-top.columns,.column.align-top{-ms-flex-item-align:start;align-self:flex-start}.align-bottom.columns,.column.align-bottom{-ms-flex-item-align:end;align-self:flex-end}.align-middle.columns,.column.align-middle{-ms-flex-item-align:center;align-self:center}.align-stretch.columns,.column.align-stretch{-ms-flex-item-align:stretch;align-self:stretch}blockquote,dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,li,ol,p,pre,td,th,ul{margin:0;padding:0}ol,ul{margin-left:1.25rem}dl,ol,p,ul{line-height:1.6;margin-bottom:1rem}li,p{font-size:inherit}em,i{font-style:italic}h1,h2,h3,h4,h5,h6{font-style:normal;color:inherit;margin-top:0;margin-bottom:.5rem;line-height:1.4}code,kbd{font-family:Consolas,"Liberation Mono",Courier,monospace;background-color:#e6e6e6}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{color:#cacaca;line-height:0}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.1875rem}h4{font-size:1.125rem}h5{font-size:1.0625rem}h6{font-size:1rem}@media screen and (min-width:40em){h1{font-size:3rem}h2{font-size:2.5rem}h3{font-size:1.9375rem}h4{font-size:1.5625rem}h5{font-size:1.25rem}h6{font-size:1rem}}a{background-color:transparent;color:#2199e8;text-decoration:none;cursor:pointer}a:focus,a:hover{color:#1585cf}a img{border:0}hr{box-sizing:content-box;max-width:75rem;height:0;border-right:0;border-top:0;border-bottom:1px solid #cacaca;border-left:0;margin:1.25rem auto;clear:both}dl,ol,ul{list-style-position:outside}ul{list-style-type:disc}ol ol,ol ul,ul ol,ul ul{margin-left:1.25rem;margin-bottom:0}dl dt{margin-bottom:.3rem;font-weight:700}.subheader,code,label{font-weight:400}blockquote{margin:0 0 1rem;padding:.5625rem 1.25rem 0 1.1875rem;border-left:1px solid #cacaca}blockquote,blockquote p{line-height:1.6;color:#8a8a8a}cite{display:block;font-size:.8125rem;color:#8a8a8a}cite:before{content:'\2014 \0020'}abbr{cursor:help;border-bottom:1px dotted #0a0a0a}code{border:1px solid #cacaca;padding:.125rem .3125rem .0625rem}kbd{padding:.125rem .25rem 0;margin:0}.subheader{margin-top:.2rem;margin-bottom:.5rem;line-height:1.4;color:#8a8a8a}.lead{font-size:125%;line-height:1.6}.stat{font-size:2.5rem;line-height:1}p+.stat{margin-top:-1rem}.no-bullet{margin-left:0;list-style:none}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}@media screen and (min-width:40em){.medium-text-left{text-align:left}.medium-text-right{text-align:right}.medium-text-center{text-align:center}.medium-text-justify{text-align:justify}}@media screen and (min-width:64em){.large-text-left{text-align:left}.large-text-right{text-align:right}.large-text-center{text-align:center}.large-text-justify{text-align:justify}}.show-for-print{display:none!important}@media print{blockquote,img,pre,tr{page-break-inside:avoid}*{background:0 0!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}.show-for-print{display:block!important}.hide-for-print{display:none!important}table.show-for-print{display:table!important}thead.show-for-print{display:table-header-group!important}tbody.show-for-print{display:table-row-group!important}tr.show-for-print{display:table-row!important}td.show-for-print,th.show-for-print{display:table-cell!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}.ir a:after,a[href^='javascript:']:after,a[href^='#']:after{content:''}abbr[title]:after{content:" (" attr(title) ")"}blockquote,pre{border:1px solid #8a8a8a}thead{display:table-header-group}img{max-width:100%!important}@page{margin:.5cm}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}}[type=color],[type=date],[type=datetime-local],[type=datetime],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],textarea{display:block;box-sizing:border-box;width:100%;height:2.4375rem;padding:.5rem;border:1px solid #cacaca;margin:0 0 1rem;font-family:inherit;font-size:1rem;color:#0a0a0a;background-color:#fefefe;box-shadow:inset 0 1px 2px rgba(10,10,10,.1);border-radius:0;transition:box-shadow .5s,border-color .25s ease-in-out;-webkit-appearance:none;-moz-appearance:none}[type=color]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=datetime]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,textarea:focus{border:1px solid #8a8a8a;background-color:#fefefe;outline:0;box-shadow:0 0 5px #cacaca;transition:box-shadow .5s,border-color .25s ease-in-out}textarea{min-height:50px}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#cacaca}input::-moz-placeholder,textarea::-moz-placeholder{color:#cacaca}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:#cacaca}input::placeholder,textarea::placeholder{color:#cacaca}input:disabled,input[readonly],textarea:disabled,textarea[readonly]{background-color:#e6e6e6;cursor:not-allowed}[type=button],[type=submit]{border-radius:0}[type=checkbox],[type=file],[type=radio]{margin:0 0 1rem}[type=checkbox]+label,[type=radio]+label{display:inline-block;margin-left:.5rem;margin-right:1rem;margin-bottom:0;vertical-align:baseline}[type=checkbox]+label[for],[type=radio]+label[for]{cursor:pointer}label>[type=checkbox],label>[type=radio]{margin-right:.5rem}label{display:block;margin:0;font-size:.875rem;line-height:1.8;color:#0a0a0a}label.middle{margin:0 0 1rem;padding:.5625rem 0}.help-text{margin-top:-.5rem;font-size:.8125rem;font-style:italic;color:#0a0a0a}.input-group{display:flex;margin-bottom:1rem;-ms-flex-align:stretch;align-items:stretch}.input-group-button a,.input-group-button button,.input-group-button input,fieldset{margin:0}.input-group>:first-child,.input-group>:last-child>*{border-radius:0}.input-group-button,.input-group-field,.input-group-label{margin:0;white-space:nowrap}.input-group-label{text-align:center;padding:0 1rem;background:#e6e6e6;color:#0a0a0a;border:1px solid #cacaca;white-space:nowrap;-ms-flex:0 0 auto;flex:0 0 auto;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.input-group-label:first-child{border-right:0}.input-group-label:last-child{border-left:0}.input-group-field{border-radius:0;-ms-flex:1 1 0px;flex:1 1 0px;width:auto;height:auto}.fieldset,select{border:1px solid #cacaca}.input-group-button{padding-top:0;padding-bottom:0;text-align:center;-ms-flex:0 0 auto;flex:0 0 auto}.input-group .input-group-button{display:table-cell}fieldset{border:0;padding:0}legend{margin-bottom:.5rem}.fieldset{padding:1.25rem;margin:1.125rem 0}.fieldset legend{background:#fefefe;padding:0 .1875rem;margin:0 0 0 -.1875rem}select{height:2.4375rem;padding:.5rem 1.5rem .5rem .5rem;margin:0 0 1rem;font-size:1rem;font-family:inherit;line-height:normal;color:#0a0a0a;background-color:#fefefe;border-radius:0;background-image:url("data:image/svg+xml;utf8,");background-size:9px 6px;background-position:right -1rem center;background-origin:content-box;background-repeat:no-repeat}.form-error,.is-invalid-label{color:#ec5840}@media screen and (min-width:0\0){select{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==)}}select:disabled{background-color:#e6e6e6;cursor:not-allowed}select::-ms-expand{display:none}select[multiple]{background-image:none}.is-invalid-input:not(:focus){background-color:rgba(236,88,64,.1);border-color:#ec5840}.form-error{display:none;margin-top:-.5rem;margin-bottom:1rem;font-size:.75rem;font-weight:700}.form-error.is-visible{display:block}.button{display:inline-block;text-align:center;line-height:1;cursor:pointer;transition:background-color .25s ease-out,color .25s ease-out;vertical-align:middle;border:1px solid transparent;border-radius:0;padding:.85em 1em;margin:0 0 1rem;font-size:.9rem;background-color:#2199e8;color:#fefefe}.button:focus,.button:hover{background-color:#1583cc;color:#fefefe}.button.tiny{font-size:.6rem}.button.small{font-size:.75rem}.button.large{font-size:1.25rem}.button.expanded{display:block;width:100%;margin-left:0;margin-right:0}.button.primary{background-color:#2199e8;color:#fefefe}.button.primary:focus,.button.primary:hover{background-color:#147cc0;color:#fefefe}.button.secondary{background-color:#777;color:#fefefe}.button.secondary:focus,.button.secondary:hover{background-color:#5f5f5f;color:#fefefe}.button.success{background-color:#3adb76;color:#fefefe}.button.success:focus,.button.success:hover{background-color:#22bb5b;color:#fefefe}.button.warning{background-color:#ffae00;color:#fefefe}.button.warning:focus,.button.warning:hover{background-color:#cc8b00;color:#fefefe}.button.alert{background-color:#ec5840;color:#fefefe}.button.alert:focus,.button.alert:hover{background-color:#da3116;color:#fefefe}.button.hollow{border:1px solid #2199e8;color:#2199e8}.button.hollow,.button.hollow:focus,.button.hollow:hover{background-color:transparent}.button.hollow:focus,.button.hollow:hover{border-color:#0c4d78;color:#0c4d78}.button.hollow.primary{border:1px solid #2199e8;color:#2199e8}.button.hollow.primary:focus,.button.hollow.primary:hover{border-color:#0c4d78;color:#0c4d78}.button.hollow.secondary{border:1px solid #777;color:#777}.button.hollow.secondary:focus,.button.hollow.secondary:hover{border-color:#3c3c3c;color:#3c3c3c}.button.hollow.success{border:1px solid #3adb76;color:#3adb76}.button.hollow.success:focus,.button.hollow.success:hover{border-color:#157539;color:#157539}.button.hollow.warning{border:1px solid #ffae00;color:#ffae00}.button.hollow.warning:focus,.button.hollow.warning:hover{border-color:#805700;color:#805700}.button.hollow.alert{border:1px solid #ec5840;color:#ec5840}.button.hollow.alert:focus,.button.hollow.alert:hover{border-color:#881f0e;color:#881f0e}.button.disabled,.button[disabled]{opacity:.25;cursor:not-allowed}.button.disabled:focus,.button.disabled:hover,.button[disabled]:focus,.button[disabled]:hover{background-color:#2199e8;color:#fefefe}.button.dropdown::after{content:'';width:0;height:0;border:.4em inset;border-color:#fefefe transparent transparent;border-top-style:solid;border-bottom-width:0;position:relative;top:.4em;float:right;margin-left:1em;display:inline-block}.button.arrow-only::after{margin-left:0;float:none;top:-.1em}.flex-video{position:relative;height:0;padding-bottom:75%;margin-bottom:1rem}.flex-video embed,.flex-video iframe,.flex-video object,.flex-video video{position:absolute;top:0;left:0;width:100%;height:100%}.flex-video.widescreen{padding-bottom:56.25%}.flex-video.vimeo{padding-top:0}.hide{display:none!important}@media screen and (max-width:0em),screen and (min-width:40em){.show-for-small-only{display:none!important}}@media screen and (min-width:40em){.hide-for-medium{display:none!important}}@media screen and (max-width:39.9375em){.hide-for-small-only,.show-for-medium{display:none!important}}@media screen and (min-width:40em) and (max-width:63.9375em){.hide-for-medium-only{display:none!important}}@media screen and (max-width:39.9375em),screen and (min-width:64em){.show-for-medium-only{display:none!important}}@media screen and (min-width:64em){.hide-for-large{display:none!important}}@media screen and (max-width:63.9375em){.show-for-large{display:none!important}}@media screen and (min-width:64em) and (max-width:74.9375em){.hide-for-large-only{display:none!important}}@media screen and (max-width:63.9375em),screen and (min-width:75em){.show-for-large-only{display:none!important}}.show-for-sr,.show-on-focus{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.show-on-focus:active,.show-on-focus:focus{position:static!important;height:auto;width:auto;overflow:visible;clip:auto}.hide-for-portrait,.show-for-landscape{display:block!important}@media screen and (orientation:landscape){.hide-for-portrait,.show-for-landscape{display:block!important}.hide-for-landscape,.show-for-portrait{display:none!important}}.hide-for-landscape,.show-for-portrait{display:none!important}@media screen and (orientation:portrait){.hide-for-portrait,.show-for-landscape{display:none!important}.hide-for-landscape,.show-for-portrait{display:block!important}}.align-right{-ms-flex-pack:end;justify-content:flex-end}.align-center{-ms-flex-pack:center;justify-content:center}.align-justify{-ms-flex-pack:justify;justify-content:space-between}.align-spaced{-ms-flex-pack:distribute;justify-content:space-around}.align-top{-ms-flex-align:start;-ms-grid-row-align:flex-start;align-items:flex-start}.align-self-top{-ms-flex-item-align:start;align-self:flex-start}.align-bottom{-ms-flex-align:end;-ms-grid-row-align:flex-end;align-items:flex-end}.align-self-bottom{-ms-flex-item-align:end;align-self:flex-end}.align-middle{-ms-flex-align:center;-ms-grid-row-align:center;align-items:center}.align-self-middle{-ms-flex-item-align:center;align-self:center}.align-stretch{-ms-flex-align:stretch;-ms-grid-row-align:stretch;align-items:stretch}.align-self-stretch{-ms-flex-item-align:stretch;align-self:stretch}.small-order-1{-ms-flex-order:1;order:1}.small-order-2{-ms-flex-order:2;order:2}.small-order-3{-ms-flex-order:3;order:3}.small-order-4{-ms-flex-order:4;order:4}.small-order-5{-ms-flex-order:5;order:5}.small-order-6{-ms-flex-order:6;order:6}@media screen and (min-width:40em){.medium-order-1{-ms-flex-order:1;order:1}.medium-order-2{-ms-flex-order:2;order:2}.medium-order-3{-ms-flex-order:3;order:3}.medium-order-4{-ms-flex-order:4;order:4}.medium-order-5{-ms-flex-order:5;order:5}.medium-order-6{-ms-flex-order:6;order:6}}@media screen and (min-width:64em){.large-order-1{-ms-flex-order:1;order:1}.large-order-2{-ms-flex-order:2;order:2}.large-order-3{-ms-flex-order:3;order:3}.large-order-4{-ms-flex-order:4;order:4}.large-order-5{-ms-flex-order:5;order:5}.large-order-6{-ms-flex-order:6;order:6}}.leaflet-image-layer,.leaflet-layer,.leaflet-map-pane,.leaflet-marker-icon,.leaflet-marker-pane,.leaflet-marker-shadow,.leaflet-overlay-pane,.leaflet-overlay-pane svg,.leaflet-popup-pane,.leaflet-shadow-pane,.leaflet-tile,.leaflet-tile-container,.leaflet-tile-pane,.leaflet-zoom-box{position:absolute;left:0;top:0}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container img{max-width:none!important}.leaflet-container img.leaflet-image-layer{max-width:15000px!important}.leaflet-tile{filter:inherit}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-tile-pane{z-index:2}.leaflet-objects-pane{z-index:3}.leaflet-overlay-pane{z-index:4}.leaflet-shadow-pane{z-index:5}.leaflet-marker-pane{z-index:6}.leaflet-popup-pane{z-index:7}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:7;pointer-events:auto;float:left;clear:both}.leaflet-bottom,.leaflet-top{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-right .leaflet-control{float:right;margin-right:10px}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-fade-anim .leaflet-popup,.leaflet-fade-anim .leaflet-tile{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;-o-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup,.leaflet-fade-anim .leaflet-tile-loaded{opacity:1}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);-o-transition:-o-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-touching .leaflet-zoom-animated,.leaflet-zoom-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-clickable{cursor:pointer}.leaflet-container{overflow:hidden;-ms-touch-action:none;touch-action:none;cursor:-webkit-grab;cursor:-moz-grab;background:#ddd;outline:0;font:12px/1.5 "Helvetica Neue",Arial,Helvetica,sans-serif}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-clickable,.leaflet-dragging .leaflet-container{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing}.leaflet-container a{color:#0078A8}.leaflet-container a.leaflet-active{outline:orange solid 2px}.leaflet-zoom-box{border:2px dotted #38f;background:rgba(255,255,255,.5)}.leaflet-bar{box-shadow:0 1px 5px rgba(0,0,0,.65);border-radius:4px}.leaflet-bar a,.leaflet-bar a:hover{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px 'Lucida Console',Monaco,monospace;text-indent:1px}.leaflet-control-zoom-out{font-size:20px}.leaflet-touch .leaflet-control-zoom-in{font-size:22px}.leaflet-touch .leaflet-control-zoom-out{font-size:24px}.leaflet-control-layers{box-shadow:0 1px 5px rgba(0,0,0,.4);background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(images/layers.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(images/layers-2x.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-container .leaflet-control-attribution{background:#fff;background:rgba(255,255,255,.7);margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-container .leaflet-control-attribution,.leaflet-container .leaflet-control-scale{font-size:11px}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;font-size:11px;white-space:nowrap;overflow:hidden;-moz-box-sizing:content-box;box-sizing:content-box;background:#fff;background:rgba(255,255,255,.5)}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 19px;line-height:1.4}.leaflet-popup-content p{margin:18px 0}.leaflet-popup-tip-container{margin:0 auto;width:40px;height:20px;position:relative;overflow:hidden}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;box-shadow:0 3px 14px rgba(0,0,0,.4)}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;padding:4px 4px 0 0;text-align:center;width:18px;height:14px;font:16px/14px Tahoma,Verdana,sans-serif;color:#c3c3c3;text-decoration:none;font-weight:700;background:0 0}.leaflet-container a.leaflet-popup-close-button:hover{color:#999}.leaflet-popup-scrolled{overflow:auto;border-bottom:1px solid #ddd;border-top:1px solid #ddd}.leaflet-oldie .leaflet-popup-content-wrapper{zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678, M12=.70710678, M21=-.70710678, M22=.70710678)}.leaflet-oldie .leaflet-popup-tip-container{margin-top:-1px}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-draw-section{position:relative}.leaflet-draw-toolbar{margin-top:12px}.leaflet-draw-actions-bottom,.leaflet-draw-toolbar-top{margin-top:0}.leaflet-draw-toolbar-notop a:first-child{border-top-right-radius:0}.leaflet-draw-toolbar-nobottom a:last-child{border-bottom-right-radius:0}.leaflet-draw-toolbar a{background-image:url(images/spritesheet.png);background-repeat:no-repeat}.leaflet-retina .leaflet-draw-toolbar a{background-image:url(images/spritesheet-2x.png);background-size:270px 30px}.leaflet-draw a{display:block;text-align:center;text-decoration:none}.leaflet-draw-actions{display:none;list-style:none;margin:0;padding:0;position:absolute;left:26px;top:0;white-space:nowrap}.leaflet-touch .leaflet-draw-actions{left:32px}.leaflet-right .leaflet-draw-actions{right:26px;left:auto}.leaflet-touch .leaflet-right .leaflet-draw-actions{right:32px;left:auto}.leaflet-draw-actions li{display:inline-block}.leaflet-draw-actions li:first-child a{border-left:none}.leaflet-draw-actions li:last-child a{-webkit-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.leaflet-right .leaflet-draw-actions li:last-child a{-webkit-border-radius:0;border-radius:0}.leaflet-right .leaflet-draw-actions li:first-child a{-webkit-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.leaflet-draw-actions a{background-color:#919187;border-left:1px solid #AAA;color:#FFF;font:11px/19px "Helvetica Neue",Arial,Helvetica,sans-serif;line-height:28px;text-decoration:none;padding-left:10px;padding-right:10px;height:28px}.leaflet-touch .leaflet-draw-actions a{font-size:12px;line-height:30px;height:30px}.leaflet-draw-actions-top{margin-top:1px}.leaflet-draw-actions-bottom a,.leaflet-draw-actions-top a{height:27px;line-height:27px}.leaflet-draw-actions a:hover{background-color:#A0A098}.leaflet-draw-actions-top.leaflet-draw-actions-bottom a{height:26px;line-height:26px}.leaflet-draw-toolbar .leaflet-draw-draw-polyline{background-position:-2px -2px}.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-draw-polyline{background-position:0 -1px}.leaflet-draw-toolbar .leaflet-draw-draw-polygon{background-position:-31px -2px}.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-draw-polygon{background-position:-29px -1px}.leaflet-draw-toolbar .leaflet-draw-draw-rectangle{background-position:-62px -2px}.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-draw-rectangle{background-position:-60px -1px}.leaflet-draw-toolbar .leaflet-draw-draw-circle{background-position:-92px -2px}.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-draw-circle{background-position:-90px -1px}.leaflet-draw-toolbar .leaflet-draw-draw-marker{background-position:-122px -2px}.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-draw-marker{background-position:-120px -1px}.leaflet-draw-toolbar .leaflet-draw-edit-edit{background-position:-152px -2px}.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-edit-edit{background-position:-150px -1px}.leaflet-draw-toolbar .leaflet-draw-edit-remove{background-position:-182px -2px}.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-edit-remove{background-position:-180px -1px}.leaflet-draw-toolbar .leaflet-draw-edit-edit.leaflet-disabled{background-position:-212px -2px}.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-edit-edit.leaflet-disabled{background-position:-210px -1px}.leaflet-draw-toolbar .leaflet-draw-edit-remove.leaflet-disabled{background-position:-242px -2px}.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-edit-remove.leaflet-disabled{background-position:-240px -2px}.leaflet-mouse-marker{background-color:#fff;cursor:crosshair}.leaflet-draw-tooltip{background:#363636;background:rgba(0,0,0,.5);border:1px solid transparent;-webkit-border-radius:4px;border-radius:4px;color:#fff;font:12px/18px "Helvetica Neue",Arial,Helvetica,sans-serif;margin-left:20px;margin-top:-21px;padding:4px 8px;position:absolute;visibility:hidden;white-space:nowrap;z-index:6}.leaflet-draw-tooltip:before{border-right:6px solid #000;border-right-color:rgba(0,0,0,.5);border-top:6px solid transparent;border-bottom:6px solid transparent;content:"";position:absolute;top:7px;left:-7px}.info::before,.leaflet-routing-icon{content:''}.leaflet-error-draw-tooltip{background-color:#F2DEDE;border:1px solid #E6B6BD;color:#B94A48}.leaflet-error-draw-tooltip:before{border-right-color:#E6B6BD}.leaflet-draw-tooltip-single{margin-top:-12px}.leaflet-draw-tooltip-subtext{color:#f8d5e4}.leaflet-draw-guide-dash{font-size:1%;opacity:.6;position:absolute;width:5px;height:5px}.leaflet-edit-marker-selected{background:rgba(254,87,161,.1);border:4px dashed rgba(254,87,161,.6);-webkit-border-radius:4px;border-radius:4px;box-sizing:content-box}.leaflet-edit-move{cursor:move}.leaflet-edit-resize{cursor:pointer}.leaflet-oldie .leaflet-draw-toolbar{border:1px solid #999}.leaflet-control-geocoder .leaflet-control-geocoder-icon,.leaflet-control-geocoder .leaflet-control-geocoder-icon:hover,.leaflet-control-geocoder a,.leaflet-control-geocoder a:hover{border-bottom:none;display:inline-block}.leaflet-control-draw-measure{background-image:url(images/measure-control.png)}.gmruler-label{margin:0;position:absolute;padding:.2em .3em .2em .8em;cursor:pointer;color:#fff;background-color:rgba(22,22,22,.45);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.gmruler-upper-dot{height:7px;width:7px;background-color:#7be500;border-radius:7px;position:absolute;left:0;top:0}#map,body,html{width:100%;height:100%}body,html{margin:0}.info::before{-webkit-background-size:72px 18px;background-size:72px 18px;background-image:url(modes.icons.svg);margin:0;display:inline-block;vertical-align:top;background-repeat:no-repeat;width:18px;height:18px}.info.auto::before{background-position:0 0}.info.bicycle::before{background-position:-18px 0}.info.multimodal::before{background-position:-36px 0}.info.pedestrian::before{background-position:-54px 0}.leaflet-routing-icon-kNone{background-position:0 0}.leaflet-routing-icon-kStart{background-position:-18px 0}.leaflet-routing-icon-kStartRight{background-position:-36px 0}.leaflet-routing-icon-kStartLeft{background-position:-54px 0}.leaflet-routing-icon-kDestination{background-position:-72px 0}.leaflet-routing-icon-kDestinationRight{background-position:-90px 0}.leaflet-routing-icon-kDestinationLeft{background-position:-108px 0}.leaflet-routing-icon-kBecomes{background-position:-126px 0}.leaflet-routing-icon-kContinue{background-position:-144px 0}.leaflet-routing-icon-kSlightRight{background-position:-162px 0}.leaflet-routing-icon-kRight{background-position:-180px 0}.leaflet-routing-icon-kSharpRight{background-position:-198px 0}.leaflet-routing-icon-kUturnRight{background-position:-216px 0}.leaflet-routing-icon-kUturnLeft{background-position:-234px 0}.leaflet-routing-icon-kSharpLeft{background-position:-252px 0}.leaflet-routing-icon-kLeft{background-position:-270px 0}.leaflet-routing-icon-kSlightLeft{background-position:-288px 0}.leaflet-routing-icon-kRampStraight{background-position:-306px 0}.leaflet-routing-icon-kRampRight{background-position:-324px 0}.leaflet-routing-icon-kRampLeft{background-position:-342px 0}.leaflet-routing-icon-kExitRight{background-position:-360px 0}.leaflet-routing-icon-kExitLeft{background-position:-378px 0}.leaflet-routing-icon-kStayStraight{background-position:-396px 0}.leaflet-routing-icon-kStayRight{background-position:-414px 0}.leaflet-routing-icon-kStayLeft{background-position:-432px 0}.leaflet-routing-icon-kMerge{background-position:-450px 0}.leaflet-routing-icon-kRoundaboutEnter{background-position:-468px 0}.leaflet-routing-icon-kRoundaboutExit{background-position:-486px 0}.leaflet-routing-icon-kFerryEnter{background-position:-504px 0}.leaflet-routing-icon-kFerryExit{background-position:-522px 0}.leaflet-routing-icon-kTransitBus{background-position:-540px 0}.leaflet-routing-icon-kTransitCable_car{background-position:-558px 0}.leaflet-routing-icon-kTransitFerry{background-position:-576px 0}.leaflet-routing-icon-kTransitFunicular{background-position:-594px 0}.leaflet-routing-icon-kTransitGondola{background-position:-612px 0}.leaflet-routing-icon-kTransitMetro{background-position:-630px 0}.leaflet-routing-icon-kTransitRail{background-position:-648px 0}.leaflet-routing-icon-kTransitTram{background-position:-666px 0}.leaflet-control-geocoder{border-radius:4px;background:#fff;min-width:26px;min-height:26px}.leaflet-touch .leaflet-control-geocoder{min-width:30px;min-height:30px}.leaflet-control-geocoder .leaflet-control-geocoder-alternatives a{width:inherit;height:inherit;line-height:inherit}.leaflet-control-geocoder-form{display:none;vertical-align:middle}.leaflet-control-geocoder-expanded .leaflet-control-geocoder-form{display:inline-block}.leaflet-control-geocoder-form button,.leaflet-control-geocoder-form-no-error{display:none}.leaflet-control-geocoder-form input{font-size:120%;border:0;background-color:transparent;width:246px}.leaflet-control-geocoder-icon{border-radius:4px;width:26px;height:26px;border:none;background-color:#fff;background-image:url(images/geocoder.png);background-repeat:no-repeat;background-position:center}.leaflet-touch .leaflet-control-geocoder-icon{width:30px;height:30px}.leaflet-control-geocoder-throbber .leaflet-control-geocoder-icon{background-image:url(images/throbber.gif)}.leaflet-control-geocoder-form input:focus{outline:0}.leaflet-control-geocoder-error{margin-top:8px;margin-left:8px;display:block;color:#444}.leaflet-control-geocoder-alternatives{display:block;width:272px;list-style:none;padding:0;margin:0}.leaflet-control-geocoder-alternatives-minimized{display:none;height:0}.leaflet-control-geocoder-alternatives li{white-space:nowrap;display:block;overflow:hidden;padding:5px 8px;text-overflow:ellipsis;border-bottom:1px solid #ccc;cursor:pointer}.leaflet-control-geocoder-alternatives li a,.leaflet-control-geocoder-alternatives li a:hover{width:inherit;height:inherit;line-height:inherit;background:inherit;border-radius:inherit;text-align:left}.leaflet-container.leaflet-fullscreen-on,.leaflet-pseudo-fullscreen{width:100%!important;height:100%!important}.leaflet-control-geocoder-alternatives li:last-child{border-bottom:none}.leaflet-control-geocoder-alternatives li:hover,.leaflet-control-geocoder-selected{background-color:#f5f5f5}.leaflet-control-geocoder-address-context{color:#666}.leaflet-control-fullscreen a{background:url(fullscreen.png) no-repeat #fff;background-size:26px 52px}.leaflet-touch .leaflet-control-fullscreen a{background-position:2px 2px}.leaflet-fullscreen-on .leaflet-control-fullscreen a{background-position:0 -26px}.leaflet-touch.leaflet-fullscreen-on .leaflet-control-fullscreen a{background-position:2px -24px}.leaflet-container:-webkit-full-screen{width:100%!important;height:100%!important}.leaflet-pseudo-fullscreen{position:fixed!important;top:0!important;left:0!important;z-index:99999}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.leaflet-control-fullscreen a{background-image:url(fullscreen@2x.png)}}.leaflet-routing-container,.leaflet-routing-error{width:320px;background-color:#fff;padding-top:4px;transition:all .2s ease;box-sizing:border-box}.leaflet-control-container .leaflet-routing-container-hide{width:32px;height:32px}.leaflet-routing-container h2{font-size:14px}.leaflet-routing-container h3{font-size:12px;font-weight:400}.leaflet-routing-collapsible .leaflet-routing-geocoders{margin-top:20px}.leaflet-routing-alt,.leaflet-routing-error,.leaflet-routing-geocoders{padding:6px;margin-top:2px;margin-bottom:6px;border-bottom:1px solid #ccc;max-height:320px;overflow-y:auto;transition:all .2s ease}.leaflet-control-container .leaflet-routing-container-hide .leaflet-routing-alt,.leaflet-control-container .leaflet-routing-container-hide .leaflet-routing-geocoders{display:none}.leaflet-bar .leaflet-routing-alt:last-child{border-bottom:none}.leaflet-routing-alt-minimized{color:#888;max-height:64px;overflow:hidden;cursor:pointer}.leaflet-routing-alt tr:hover{background-color:#eee;cursor:pointer}.leaflet-routing-alt::-webkit-scrollbar{width:8px}.leaflet-routing-alt::-webkit-scrollbar-track{border-radius:2px;background-color:#eee}.leaflet-routing-alt::-webkit-scrollbar-thumb{border-radius:2px;background-color:#888}.leaflet-routing-icon{background-image:url(leaflet.routing.icons.png);-webkit-background-size:240px 20px;background-size:240px 20px;background-repeat:no-repeat;margin:0;display:inline-block;vertical-align:top;width:20px;height:20px}.leaflet-routing-icon-continue{background-position:0 0}.leaflet-routing-icon-sharp-right{background-position:-20px 0}.leaflet-routing-icon-turn-right{background-position:-40px 0}.leaflet-routing-icon-bear-right{background-position:-60px 0}.leaflet-routing-icon-u-turn{background-position:-80px 0}.leaflet-routing-icon-sharp-left{background-position:-100px 0}.leaflet-routing-icon-turn-left{background-position:-120px 0}.leaflet-routing-icon-bear-left{background-position:-140px 0}.leaflet-routing-icon-depart{background-position:-160px 0}.leaflet-routing-icon-enter-roundabout{background-position:-180px 0}.leaflet-routing-icon-arrive{background-position:-200px 0}.leaflet-routing-icon-via{background-position:-220px 0}.leaflet-routing-geocoders div{padding:4px 0}.leaflet-routing-geocoders input{width:303px;width:calc(100% - 4px);line-height:1.67;border:1px solid #ccc}.leaflet-routing-geocoders button{font:700 18px 'Lucida Console',Monaco,monospace;border:1px solid #ccc;border-radius:4px;background-color:#fff;margin:0 3px 0 0;float:right;cursor:pointer;transition:background-color .2s ease}.leaflet-routing-add-waypoint:after{content:'+'}.leaflet-routing-reverse-waypoints:after{font-weight:400;content:'\21c5'}.leaflet-routing-geocoders button:hover{background-color:#eee}.leaflet-routing-geocoder,.leaflet-routing-geocoders input,.leaflet-routing-remove-waypoint{position:relative}.leaflet-routing-geocoder-result{font:12px/1.5 "Helvetica Neue",Arial,Helvetica,sans-serif;position:absolute;max-height:0;overflow:hidden;transition:all .5s ease;z-index:1000}.leaflet-routing-geocoder-result table{width:100%;border:1px solid #ccc;border-radius:0 0 4px 4px;background-color:#fff;cursor:pointer}.leaflet-routing-geocoder-result-open{max-height:800px}.leaflet-routing-geocoder-result tr:hover,.leaflet-routing-geocoder-selected{background-color:#eee}.leaflet-routing-geocoder-no-results{font-style:italic;color:#888}.leaflet-routing-remove-waypoint{background-color:transparent;display:inline-block;vertical-align:middle;cursor:pointer}.leaflet-routing-remove-waypoint:after{position:absolute;display:block;width:15px;height:1px;z-index:1;right:1px;top:4px;bottom:0;margin:-16px auto auto;padding:2px 4px 16px 2px;font-size:18px;font-weight:700;content:"\00d7";text-align:center;cursor:pointer;color:#ccc;background:#fff;line-height:1}.leaflet-routing-remove-waypoint:hover{color:#000}.leaflet-routing-instruction-distance{width:48px}.leaflet-routing-collapse-btn{position:absolute;top:0;right:6px;font-size:24px;color:#ccc;font-weight:700}.leaflet-routing-collapse-btn:after{content:'\00d7'}.leaflet-routing-container-hide .leaflet-routing-collapse-btn{position:relative;left:4px;top:4px;display:block;width:26px;height:23px;background-image:url(routing-icon.png)}.leaflet-routing-container-hide .leaflet-routing-collapse-btn:after{content:none}.leaflet-top .leaflet-routing-container.leaflet-routing-container-hide{margin-top:10px!important}.leaflet-right .leaflet-routing-container.leaflet-routing-container-hide{margin-right:10px!important}.leaflet-bottom .leaflet-routing-container.leaflet-routing-container-hide{margin-bottom:10px!important}.leaflet-left .leaflet-routing-container.leaflet-routing-container-hide{margin-left:10px!important}@media only screen and (max-width:640px){.leaflet-routing-container{margin:0!important;padding:0!important;width:100%;height:100%}}
--------------------------------------------------------------------------------
/dist/css/map/index.min.css.map:
--------------------------------------------------------------------------------
1 | {"version":3,"sources":["index.min.css"],"names":[],"mappings":"AAAM,KAAN,KACE,OAAQ,EACR,QAAS,EACT,OAAQ,KACR,MAAO,KACP,YAAa,IAEf,yBACE,WAAY,YAEd,qCACE,KAAM,kBACN,MAAO,YACP,OAAQ,eAEV,kCACE,IAAK,KACL,MAAO,KAET,6CACE,OAAQ,eACR,MAAO,eACP,oDACE,SAAU,SACV,MAAO,MACP,OAAQ,KACR,MAAO,KAEX,sDACE,MAAO,KAET,8FACE,MAAO,MACP,oGACE,QAAS,EAAE,EAAE,EAAE,KACf,OAAQ,EACR,OAAQ,KACR,WAAY,KAEhB,oEACE,gBAAiB,IACjB,MAAO,KACP,OAAQ,KAEV,gEACE,WAAY,KACZ,8FACE,IAAK,KAET,qEACE,MAAO,KACP,OAAQ,KACR,YAAa,EACb,mGACE,OAAQ,KACR,MAAO,KACP,gBAAiB,IACjB,kBAAmB,UACnB,oBAAqB,OACrB,SAAU,OAsLd,gBACE,OAAQ,KACR,4BACE,QAAS,MACT,MAAO,KACT,sCACE,QAAS,KACX,wCACE,QAAS,KAAK,EACd,OAAQ,IAAI,EACd,+BACE,OAAQ,QACV,6BACE,YAAa,IACf,4CACE,OAAQ,KACR,QAAS,YACT,QAAS,KACT,mBAAoB,IAChB,eAAgB,IACpB,2DACE,SAAU,SACV,OAAQ,KACR,MAAO,KACP,SAAU,OACV,QAAS,EACT,iFACE,OAAQ,KACR,MAAO,MACP,SAAU,SACV,OAAQ,EACR,KAAM,EACN,iBAAkB,KAClB,QAAS,WACT,WAAY,IAAI,MAAM,QACtB,wGAAyG,6GAA8G,wGACrN,OAAQ,KACR,MAAO,KACP,QAAS,aACT,aAAc,IAAI,MAAM,QAC1B,yHAA0H,8HAA+H,yHACvP,oBAAqB,KACrB,iBAAkB,KAClB,gBAAiB,KACjB,YAAa,KACb,OAAQ,IACV,yIAAwT,6KAA9K,6KAA4V,uIAAgR,wIAAxI,uIAC5mB,OAAQ,KACR,QAAS,aACT,MAAO,KACP,OAAQ,QACR,kBAAmB,UACnB,oBAAqB,OACrB,+IAAoU,mLAApL,mLAAwW,6IAA4R,8IAA9I,6IACpoB,iBAAkB,QACtB,+FACE,OAAQ,IACR,QAAS,EAAE,IACX,UAAW,KACX,WAAY,OACZ,cAAe,IAAI,MAAM,QAC3B,wGACE,MAAO,IACP,yIACE,MAAO,KACP,iBAAkB,8BAClB,gBAAiB,IACrB,6GACE,MAAO,IACP,6KACE,MAAO,IACP,aAAc,IAAI,MAAM,QACxB,iBAAkB,yBAClB,gBAAiB,IACnB,6KACE,MAAO,IACP,iBAAkB,yBAClB,gBAAiB,IACnB,mJACE,iBAAkB,QACtB,wGACE,MAAO,IACP,uIACE,MAAO,OACP,gBAAiB,KAAK,IACtB,iBAAkB,mCAClB,aAAc,IAAI,MAAM,QAC1B,uIACE,MAAO,OACP,gBAAiB,KAAK,IACtB,iBAAkB,mCAClB,aAAc,IAAI,MAAM,QAC1B,wIACE,MAAO,OACP,gBAAiB,KAAK,IACtB,iBAAkB,oCACxB,uEAAgJ,wEAAxE,uEACtE,OAAQ,KACR,MAAO,KACX,8DACE,OAAQ,KACR,QAAS,YACT,QAAS,KACT,mBAAoB,IAChB,eAAgB,IACpB,sFACE,QAAS,YACT,QAAS,KACT,OAAQ,KACR,OAAQ,WACR,mBAAoB,OAChB,eAAgB,OACpB,cAAe,OACX,gBAAiB,OACrB,aAAc,IAAI,MAAM,QACxB,YAAa,IAAI,MAAM,QAEvB,qGACE,MAAO,KACP,OAAQ,KACR,iBAAkB,6BAClB,kBAAmB,UACnB,oBAAqB,OACrB,gBAAiB,IACjB,OAAQ,QACZ,yEACE,QAAS,MACT,OAAQ,KACR,MAAO,MACP,SAAU,KACV,2FAA4F,uFAAgR,4FAA5F,2FAA5F,2FAAqR,2FACvc,QAAS,EAAE,KACb,uFACE,QAAS,MACT,MAAO,KACT,iGACE,SAAU,SACZ,wFACE,OAAQ,QACV,oFACE,UAAW,KACX,MAAO,IACT,+FAEA,iGADE,QAAS,KAGX,uFACE,WAAY,KACd,mKACE,QAAS,KAAK,KAAK,KACnB,8LACE,QAAS,EA2B2O,4HAJxP,mHAI4H,2HAA5H,2HACE,QAAS,IAAI,EA3BX,iNACE,SAAU,SACV,cAAe,IAAI,MAAM,KACzB,QAAS,IAAI,EACb,qOACE,QAAS,aACX,qOACE,QAAS,aACT,SAAU,SACV,MAAO,KACP,qPACE,MAAO,MACP,OAAQ,QACV,uPACE,MAAO,IACP,OAAQ,QACd,uNACE,OAAQ,KAAK,EAAE,EACrB,iHACE,OAAQ,KAAK,EAAE,KACf,iKACE,OAAQ,KAAK,EAAE,EAGnB,4FACE,OAAQ,IAAI,EAGwS,0JAA1J,yJAA1J,yJACE,OAAQ,EAC4M,4GAA5G,2GAA5G,2GACE,OAAQ,EAAE,EAAE,KAC0N,oHAApH,mHAApH,mHACE,QAAS,MACyN,kHAAlH,iHAAlH,iHACE,WAAY,IAAI,MAAM,QACtB,QAAS,KAAK,EAAE,EACoT,kKAAlK,iKAAlK,iKACE,OAAQ,KAAK,EAAE","file":"index.min.css","sourceRoot":"/source/","sourcesContent":[]}
--------------------------------------------------------------------------------
/dist/css/marker-icon-2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/dist/css/marker-icon-2x.png
--------------------------------------------------------------------------------
/dist/css/marker-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/dist/css/marker-icon.png
--------------------------------------------------------------------------------
/dist/css/marker-shadow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/dist/css/marker-shadow.png
--------------------------------------------------------------------------------
/dist/css/modes.icons.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/dist/css/routing-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/dist/css/routing-icon.png
--------------------------------------------------------------------------------
/dist/css/throbber.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/dist/css/throbber.gif
--------------------------------------------------------------------------------
/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/favicon.ico
--------------------------------------------------------------------------------
/gulpfile.js:
--------------------------------------------------------------------------------
1 | require('es6-promise').polyfill();
2 |
3 | var gulp = require('gulp'),
4 | plumber = require('gulp-plumber'),
5 | rename = require('gulp-rename'),
6 | concat = require('gulp-concat'),
7 | uglify = require('gulp-uglify'),
8 | imagemin = require('gulp-imagemin'),
9 | cache = require('gulp-cache'),
10 | sass = require('gulp-sass'),
11 | cleanCSS = require('gulp-clean-css'),
12 | sourcemaps = require('gulp-sourcemaps'),
13 | postcss = require('gulp-postcss'),
14 | autoprefixer = require('autoprefixer'),
15 | server = require('gulp-develop-server');
16 | var browserSync = require('browser-sync').create();
17 |
18 | /*
19 | * reload for somedomain.someextension
20 | * */
21 |
22 | gulp.task('browser-sync', function() {
23 | browserSync.init({
24 | // proxy: "http://local.tourist777.ru/",
25 | //tunnel: "my-private-site-329183912"
26 | //open: "ui",
27 | //notify: false
28 | });
29 | });
30 |
31 |
32 | /*
33 | * sass -> css
34 | * */
35 | gulp.task('convert_scss_and_minification', function () {
36 | gulp.src(['src/scss/**/*'])
37 | .pipe(plumber({
38 | errorHandler: function (error) {
39 | console.log(error.message);
40 | this.emit('end');
41 | }
42 | }))
43 | .pipe(sass())
44 | .pipe(postcss([autoprefixer({browsers: ['last 2 versions']})]))
45 | .pipe(rename({suffix: '.min'}))
46 | .pipe(sourcemaps.init())
47 | .pipe(cleanCSS())
48 | .pipe(sourcemaps.write('map'))
49 | .pipe(gulp.dest('./dist/css/'))
50 | .pipe(browserSync.stream());
51 | });
52 |
53 | /*
54 | * minification of JS
55 | * */
56 | gulp.task('minification_js', function () {
57 | return gulp.src('./src/js/**/*')
58 | .pipe(sourcemaps.init())
59 | .pipe(plumber({
60 | errorHandler: function (error) {
61 | console.log(error.message);
62 | this.emit('end');
63 | }
64 | }))
65 | //.pipe(concat('concat.js'))
66 | .pipe(rename({suffix: '.min'}))
67 | .pipe(uglify())
68 | .pipe(sourcemaps.write('map'))
69 | .pipe(gulp.dest('./dist/js/'));
70 | });
71 |
72 | gulp.task('minification_js_library', function () {
73 | return gulp.src(["lib/bower_components/jquery/dist/jquery.min.js", "lib/button_full_screen/full_screen_control.js", "lib/traffic_control/fraffic_control.js", "lib/leaflet/leaflet.js", "lib/node_modules/leaflet-draw/dist/leaflet.draw.js", "lib/bower_components/google-maps-ruler/dist/google-maps-ruler.js", "lib/ruler_control/ruler_control.js", "lib/geocoding_google_control/geocoding_google_control.js", "lib/route_google_control/route_google_control.js", "lib/leaflet_measurement_control/leaflet.measurecontrol.js", "lib/extension_leaflet/full_screen/Leaflet.fullscreen.min.js", "lib/bing_layer/Bing.js", "lib/leaflet-control-geocoder-1.5.1/dist/Control.Geocoder.js", "lib/leaflet-control-geocoder-1.5.1/my_drop_down_menu/drop_down_menu_providers.js", "lib/leaflet_route_lib_providers/lrm-mapbox-1.0.4.js", "lib/leaflet_route_lib_providers/lrm-graphhopper-1.1.2.min.js", "lib/leaflet_route_lib_providers/lrm-mapzen-master/dist/lrm-mapzen.min.js", "lib/node_modules/leaflet-routing-machine/dist/leaflet-routing-machine.min.js", "lib/node_modules/leaflet-routing-machine/my_control/control_routing_machine.js"])
74 | .pipe(plumber({
75 | errorHandler: function (error) {
76 | console.log(error.message);
77 | this.emit('end');
78 | }
79 | }))
80 | .pipe(concat('libraries.js'))
81 | .pipe(uglify())
82 | .pipe(gulp.dest('./dist/js/'));
83 | });
84 |
85 | gulp.task('minification_css_library', function () {
86 | gulp.src(["lib/bower_components/foundation-sites/dist/css/foundation-flex.min.css", "lib/leaflet/leaflet.css", "lib/node_modules/leaflet-draw/dist/leaflet.draw.css", "lib/leaflet_measurement_control/leaflet.measurecontrol.css", "lib/bower_components/google-maps-ruler/google-maps-ruler.css", "lib/leaflet_route_lib_providers/lrm-mapzen-master/dist/lrm-mapzen.css", "lib/leaflet-control-geocoder-1.5.1/dist/Control.Geocoder.css", "lib/extension_leaflet/full_screen/leaflet.fullscreen.css", "lib/node_modules/leaflet-routing-machine/dist/leaflet-routing-machine.css"])
87 | .pipe(plumber({
88 | errorHandler: function (error) {
89 | console.log(error.message);
90 | this.emit('end');
91 | }
92 | }))
93 | .pipe(concat('libraries.css'))
94 | .pipe(cleanCSS())
95 | .pipe(gulp.dest('./dist/css/'))
96 | });
97 |
98 | gulp.task('default', ['convert_scss_and_minification', 'browser-sync', 'minification_js_library', 'minification_css_library'], function () {
99 | gulp.watch("src/scss/**/*", ['convert_scss_and_minification']);
100 | //gulp.watch("src/js/**/*", ['minification_js', browserSync.reload]);
101 | //gulp.watch("../views/**/*").on('change', browserSync.reload);
102 | //gulp.watch("../assets/**/*").on('change', browserSync.reload);
103 | gulp.watch("./index.html").on('change', browserSync.reload);
104 | gulp.watch("./src/js/ui-logic.js").on('change', browserSync.reload);
105 | });
--------------------------------------------------------------------------------
/home.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | MAPS
9 |
10 |
11 |
12 |
13 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
--------------------------------------------------------------------------------
/img/arrow_redo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/img/arrow_redo.png
--------------------------------------------------------------------------------
/img/arrow_undo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/img/arrow_undo.png
--------------------------------------------------------------------------------
/img/g_logo.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/img/google-logo_26.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/img/google-logo_26.jpg
--------------------------------------------------------------------------------
/img/google-logo_26_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/img/google-logo_26_hover.png
--------------------------------------------------------------------------------
/img/icon_gps_detect.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/img/l_logo.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/img/leaflet-images/layers-2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/img/leaflet-images/layers-2x.png
--------------------------------------------------------------------------------
/img/leaflet-images/layers.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/img/leaflet-images/layers.png
--------------------------------------------------------------------------------
/img/leaflet-images/marker-icon-2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/img/leaflet-images/marker-icon-2x.png
--------------------------------------------------------------------------------
/img/leaflet-images/marker-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/img/leaflet-images/marker-icon.png
--------------------------------------------------------------------------------
/img/leaflet-images/marker-shadow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/img/leaflet-images/marker-shadow.png
--------------------------------------------------------------------------------
/img/leaflet-logo_26.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/img/leaflet-logo_26.jpg
--------------------------------------------------------------------------------
/img/leaflet-logo_26_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/img/leaflet-logo_26_hover.png
--------------------------------------------------------------------------------
/img/menu-arrow_min.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/img/menu-arrow_min.png
--------------------------------------------------------------------------------
/img/y_logo.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | image/svg+xml
--------------------------------------------------------------------------------
/img/yadenx-logo_26.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/img/yadenx-logo_26.jpg
--------------------------------------------------------------------------------
/img/yadenx-logo_26_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/artamonovdev/all-maps/0fe164149ede1a6d6656bc12c6181b0089ab5904/img/yadenx-logo_26_hover.png
--------------------------------------------------------------------------------
/index.php:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/js/ui-logic.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Обращаться по поводу разработки: artamonovdev@gmail.com
3 | */
4 | $(document).ready(function () {
5 | var $rightMenu = $('#rightMenu');
6 | var $containerIcoOpenSlider = $('#containerIcoOpenSlider');
7 | var $icoOpenSlider = $('#icoOpenSlider');
8 | var savedWidthOfBlock = 400;
9 | var defaultWidthOfBlock = savedWidthOfBlock;
10 |
11 | var resizeMaps = function () {
12 | $(document).trigger('resize_maps');
13 | };
14 |
15 | $icoOpenSlider.bind('mousedown mouseup', function (event) {
16 | event.stopPropagation();
17 | });
18 |
19 | $icoOpenSlider.click(function (event) {
20 | console.log('click toggle side');
21 | if ($rightMenu.css('display') !== 'none') {
22 | // hide
23 | // save previous width of block
24 | savedWidthOfBlock = $rightMenu.outerWidth();
25 | $(this).css('transform', 'rotateY(0deg)');
26 | $rightMenu.css({
27 | 'display': 'none',
28 | 'width': '0px'
29 | });
30 |
31 | // resize maps
32 | resizeMaps();
33 | } else {
34 | // show
35 | $(this).css('transform', 'rotateY(180deg)');
36 | $rightMenu.css({
37 | 'display': 'block'
38 | });
39 | if (savedWidthOfBlock > 100) {
40 | $rightMenu.css({
41 | 'width': (savedWidthOfBlock + 'px')
42 | });
43 | } else {
44 | $rightMenu.css({
45 | 'width': (defaultWidthOfBlock + 'px')
46 | });
47 | }
48 | }
49 | event.stopPropagation();
50 | });
51 |
52 | $containerIcoOpenSlider.on('mousedown', function () {
53 | console.log('mousedown');
54 | $rightMenu.css({
55 | 'display': 'block'
56 | });
57 | $icoOpenSlider.css('transform', 'rotateY(180deg)');
58 | var menuWidth;
59 | var halfWidthLeftPanel = parseInt($containerIcoOpenSlider.outerWidth() / 1.5);
60 | $(document).on('mousemove.slider', function (event) {
61 | console.log('mousemove');
62 | //console.log(event);
63 | //clearTimeout(timeoutMove);
64 | //timeoutMove = setTimeout(function () {
65 | // change width of right menu
66 |
67 | menuWidth = window.innerWidth - event.pageX - halfWidthLeftPanel;
68 | $rightMenu.css('width', menuWidth + 'px');
69 | console.log('change width ' + menuWidth);
70 | //}, 10);
71 | event.stopPropagation();
72 | });
73 | $(document).on('mouseup.slider', function (event) {
74 | console.log('mouseup');
75 | $(document).off('.slider');
76 | resizeMaps();
77 | event.stopPropagation();
78 | });
79 | });
80 | });
--------------------------------------------------------------------------------
/src/scss/index.scss:
--------------------------------------------------------------------------------
1 | html, body {
2 | margin: 0;
3 | padding: 0;
4 | height: 100%;
5 | width: 100%;
6 | line-height: 1.5;
7 | }
8 |
9 |
10 | html body {
11 | // google
12 |
13 | .gm-iv-address {
14 | box-sizing: content-box;
15 | }
16 | .gm-style > div:nth-child(2) {
17 | left: initial !important;
18 | right: 0 !important;
19 | bottom: 10px !important;
20 | }
21 |
22 | // yandex - not need container from DIV
23 | .ymaps-2-1-41-copyright {
24 | //display: none;
25 | top: -9px;
26 | right: -3px;
27 | }
28 |
29 | .ymaps-2-1-41-map-copyrights-promo {
30 | bottom: 11px !important;
31 | right: -3px !important;
32 | iframe {
33 | position: relative;
34 | float: right;
35 | bottom: -4px;
36 | right: -3px;
37 | }
38 | }
39 |
40 | //leaflet
41 | .leaflet-control-container {
42 | .leaflet-control {
43 | clear: none;
44 | }
45 |
46 | .leaflet-control-geocoder {
47 | .leaflet-control-geocoder-form {
48 | float: right;
49 | input {
50 | padding: 0 0 0 10px;
51 | margin: 0;
52 | height: 26px;
53 | box-shadow: none;
54 | }
55 | }
56 | }
57 |
58 | .leaflet-control-layers-toggle {
59 | background-size: 90%;
60 | width: 26px;
61 | height: 26px;
62 | }
63 |
64 | .leaflet-routing-container {
65 | min-height: 26px;
66 | .leaflet-routing-collapse-btn {
67 | top: -4px;
68 | }
69 | }
70 |
71 | .leaflet-routing-container-hide {
72 | width: 26px;
73 | height: 26px;
74 | padding-top: 0;
75 | .leaflet-routing-collapse-btn {
76 | height: 26px;
77 | width: 26px;
78 | background-size: 80%;
79 | background-repeat: no-repeat;
80 | background-position: center;
81 | position: static;
82 | }
83 | }
84 | }
85 | }
86 |
87 | /*
88 | .main-container {
89 | //margin: 10px;
90 | height: 100%;
91 | .container-maps-and-content {
92 | height: 100%;
93 | display: flex;
94 | flex-direction: row;
95 | #containerMaps {
96 | position: relative;
97 | height: 100%;
98 | width: 100%;
99 | border: 2px solid red;
100 | overflow: hidden;
101 | padding: 0;
102 | // style for all maps
103 | #containerOwnControls {
104 | height: 43px;
105 | position: absolute;
106 | bottom: 0;
107 | left: 0;
108 | background-color: white;
109 | z-index: 2147483647;
110 | .container-history-controls {
111 | height: 100%;
112 | width: 53px;
113 | display: inline-block;
114 | border-top: 1px solid #cacaca;
115 | border-right: 1px solid #cacaca;
116 | .container-history-controls-title {
117 | font-size: 12px;
118 | text-align: center;
119 | }
120 | .container-history-controls-container-btn {
121 | height: 27px;
122 | margin: 0;
123 | padding: 0;
124 | #container-history-controls-container-btn_undo {
125 | cursor: pointer;
126 | margin: 0;
127 | padding: 0;
128 | height: 26px;
129 | width: 27px;
130 | border-top: 1px solid #cacaca;
131 | border-right: 1px solid #cacaca;
132 | background-image: url("/img/arrow_undo.png");
133 | background-repeat: no-repeat;
134 | background-size: 80%;
135 | background-position: center;
136 | display: inline-block;
137 | &:hover {
138 | background-color: #ebebeb;
139 | }
140 | }
141 | #container-history-controls-container-btn_redo {
142 | cursor: pointer;
143 | margin: 0;
144 | padding: 0;
145 | height: 26px;
146 | width: 25px;
147 | border-top: 1px solid #cacaca;
148 | background-image: url("/img/arrow_redo.png");
149 | background-repeat: no-repeat;
150 | background-size: 80%;
151 | background-position: center;
152 | display: inline-block;
153 | &:hover {
154 | background-color: #ebebeb;
155 | }
156 | }
157 | .disable-btn-history {
158 | background-color: #cacaca;
159 | }
160 | #container-history-controls-container-btn_redo.disable-btn-history:hover {
161 | background-color: #cacaca;
162 | }
163 | #container-history-controls-container-btn_undo.disable-btn-history:hover {
164 | background-color: #cacaca;
165 | }
166 | }
167 | }
168 | .container-toggle-maps {
169 | display: inline-block;
170 | width: 81px;
171 | .container-toggle-maps-title {
172 | font-size: 12px;
173 | text-align: center;
174 | border-top: 1px solid #cacaca;
175 | border-right: 1px solid #cacaca;
176 | }
177 | .container-toggle-maps-buttons {
178 | & > div {
179 | display: inline-block;
180 | padding: 0;
181 | margin: 0;
182 | height: 26px;
183 | width: 27px;
184 | //padding: 4px 0;
185 | //background-color: rgba(230, 230, 230, 0.41);
186 | border: 1px solid #cacaca;
187 | background-size: auto 90%;
188 | background-repeat: no-repeat;
189 | background-position: center;
190 | cursor: pointer;
191 | &:hover {
192 | background-color: #ebebeb;
193 | }
194 | }
195 | #buttonGoogle {
196 | border-left: none;
197 | border-right: none;
198 | background-image: url("/img/google-logo_26_hover.png");
199 | }
200 | #buttonYandex {
201 | border-right: none;
202 | background-image: url("/img/yadenx-logo_26_hover.png");
203 | }
204 | #buttonLeaflet {
205 | background-image: url("/img/leaflet-logo_26_hover.png")
206 | }
207 | }
208 | }
209 | }
210 | #googleMaps, #yandexMaps, #leafletMaps {
211 | height: 100%;
212 | width: 100%;
213 | }
214 | #yandexMaps {
215 |
216 | }
217 | #googleMaps {
218 | //display: block;
219 | }
220 | #leafletMaps {
221 | //display: none;
222 | }
223 | }
224 | #containerContent {
225 | height: 100%;
226 | display: flex;
227 | flex-direction: row;
228 | border: 2px solid #2c2c2c;
229 | #containerIcoOpenSlider {
230 | display: flex;
231 | height: 100%;
232 | cursor: col-resize;
233 | flex-direction: column;
234 | justify-content: center;
235 | !* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#91bfe5+0,f5f5f5+100 *!
236 | background: rgb(145,191,229); !* Old browsers *!
237 | background: -moz-linear-gradient(left, rgba(145,191,229,1) 0%, rgba(245,245,245,1) 100%); !* FF3.6-15 *!
238 | background: -webkit-linear-gradient(left, rgba(145,191,229,1) 0%,rgba(245,245,245,1) 100%); !* Chrome10-25,Safari5.1-6 *!
239 | background: linear-gradient(to right, rgba(145,191,229,1) 0%,rgba(245,245,245,1) 100%); !* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ *!
240 | filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#91bfe5', endColorstr='#f5f5f5',GradientType=1 ); !* IE6-9 *!
241 |
242 | &:hover {
243 | background-color: #bcbcbc;
244 | }
245 | #icoOpenSlider {
246 | width: 30px;
247 | height: 90px;
248 | background-image: url("/img/menu-arrow_min.png");
249 | background-repeat: no-repeat;
250 | background-position: center;
251 | background-size: 60%;
252 | cursor: pointer;
253 | }
254 | }
255 | #rightMenu {
256 | display: none;
257 | height: 100%;
258 | width: 0px;
259 | overflow: auto;
260 | .right-menu-text {
261 | padding: 10px;
262 | }
263 | }
264 | }
265 | }
266 | }*/
267 |
268 | .main-container {
269 | //margin: 10px;
270 | height: 100%;
271 | .full-width {
272 | display: block;
273 | width: 100%;
274 | }
275 | .wrapper-with-padding {
276 | padding: 20px;
277 | }
278 | .paragraph-with-padding {
279 | padding: 15px 0;
280 | margin: 5px 0;
281 | }
282 | .hover-pointer {
283 | cursor: pointer;
284 | }
285 | .weight-text {
286 | font-weight: bold;
287 | }
288 |
289 | .container-maps-and-content {
290 | height: 100%;
291 | display: flex;
292 | flex-direction: row;
293 | #containerMaps {
294 | position: relative;
295 | height: 100%;
296 | width: 100%;
297 | overflow: hidden;
298 | padding: 0;
299 |
300 | #containerOwnControls {
301 | height: 43px;
302 | width: 186px;
303 | position: absolute;
304 | bottom: 0;
305 | left: 0;
306 | background-color: white;
307 | z-index: 2147483647;
308 | border-top: 1px solid #cacaca;
309 |
310 | %one-group {
311 | height: 100%;
312 | float: left;
313 | display: inline-block;
314 | border-right: 1px solid #cacaca;
315 | }
316 |
317 | %wrapper-buttons {
318 | -webkit-user-select: none;
319 | -moz-user-select: none;
320 | -ms-user-select: none;
321 | user-select: none;
322 | height: 60%;
323 | }
324 |
325 | %button {
326 | height: 100%;
327 | display: inline-block;
328 | float: left;
329 | cursor: pointer;
330 | background-repeat: no-repeat;
331 | background-position: center;
332 | &:hover {
333 | background-color: #ebebeb;
334 | }
335 | }
336 |
337 | .group-header {
338 | height: 40%;
339 | padding: 0 3px;
340 | font-size: 12px;
341 | text-align: center;
342 | border-bottom: 1px solid #cacaca;
343 | }
344 |
345 | .container-gps-control {
346 | @extend %one-group;
347 | width: 18%;
348 | &__wrapper-buttons {
349 | @extend %wrapper-buttons;
350 | #btnDetectorGps {
351 | @extend %button;
352 | width: 100%;
353 | background-image: url("/img/icon_gps_detect.svg");
354 | background-size: 62%;
355 | }
356 | }
357 | }
358 | .container-history-controls {
359 | @extend %one-group;
360 | width: 34%;
361 | &__wrapper-buttons {
362 | @extend %wrapper-buttons;
363 | #container-history-controls-container-btn_undo {
364 | @extend %button;
365 | width: 50%;
366 | border-right: 1px solid #cacaca;
367 | background-image: url("/img/arrow_undo.png");
368 | background-size: 80%;
369 | }
370 | #container-history-controls-container-btn_redo {
371 | @extend %button;
372 | width: 50%;
373 | background-image: url("/img/arrow_redo.png");
374 | background-size: 80%;
375 | }
376 | .disable-btn-history {
377 | background-color: #cacaca;
378 | }
379 | }
380 | }
381 | .container-toggle-maps {
382 | @extend %one-group;
383 | width: 48%;
384 | &__wrapper-buttons {
385 | @extend %wrapper-buttons;
386 | #buttonGoogle {
387 | @extend %button;
388 | width: 33.33%;
389 | background-size: auto 80%;
390 | background-image: url("/img/google-logo_26_hover.png");
391 | border-right: 1px solid #cacaca;
392 | }
393 | #buttonYandex {
394 | @extend %button;
395 | width: 33.33%;
396 | background-size: auto 80%;
397 | background-image: url("/img/yadenx-logo_26_hover.png");
398 | border-right: 1px solid #cacaca;
399 | }
400 | #buttonLeaflet {
401 | @extend %button;
402 | width: 33.33%;
403 | background-size: auto 80%;
404 | background-image: url("/img/leaflet-logo_26_hover.png");
405 | }
406 | }
407 | }
408 | }
409 | #googleMaps, #yandexMaps, #leafletMaps {
410 | height: 100%;
411 | width: 100%;
412 | }
413 | }
414 | #containerContent {
415 | height: 100%;
416 | display: flex;
417 | flex-direction: row;
418 | #containerIcoOpenSlider {
419 | display: flex;
420 | height: 100%;
421 | cursor: col-resize;
422 | flex-direction: column;
423 | justify-content: center;
424 | border-right: 1px solid #9e9e9e;
425 | border-left: 1px solid #9e9e9e;
426 | /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#91bfe5+0,f5f5f5+100 */
427 | //background: rgb(145,191,229); /* Old browsers */
428 | //background: -moz-linear-gradient(left, rgba(145,191,229,1) 0%, rgba(245,245,245,1) 100%); /* FF3.6-15 */
429 | //background: -webkit-linear-gradient(left, rgba(145,191,229,1) 0%,rgba(245,245,245,1) 100%); /* Chrome10-25,Safari5.1-6 */
430 | //background: linear-gradient(to right, rgba(145,191,229,1) 0%,rgba(245,245,245,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
431 | //filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#91bfe5', endColorstr='#f5f5f5',GradientType=1 ); /* IE6-9 */
432 |
433 | //&:hover {
434 | // background-color: #bcbcbc;
435 | //}
436 | #icoOpenSlider {
437 | width: 30px;
438 | height: 90px;
439 | background-image: url("/img/menu-arrow_min.png");
440 | background-repeat: no-repeat;
441 | background-position: center;
442 | background-size: 60%;
443 | cursor: pointer;
444 | }
445 | }
446 | #rightMenu {
447 | display: block;
448 | height: 100%;
449 | width: 600px;
450 | overflow: auto;
451 |
452 | %padding-general-block {
453 | padding: 0 10px;
454 | }
455 |
456 | .btn-add-data {
457 | display: block;
458 | width: 100%;
459 | }
460 | .wrapper-datetimepicker {
461 | position: relative;
462 | }
463 | .panel-heading {
464 | cursor: pointer;
465 | }
466 | .hint-text {
467 | font-size: 0.8em;
468 | color: red;
469 | }
470 | .alert-error-listener {
471 | display: none;
472 | }
473 | .alert-success-listener {
474 | display: none;
475 | }
476 |
477 | .wrapper-greeting {
478 | @extend %padding-general-block;
479 | }
480 | .wrapper-menu {
481 | @extend %padding-general-block;
482 | list-style: none;
483 | }
484 | .wrapper-schedule {
485 | @extend %padding-general-block;
486 | .wrapper-task-list-by-day {
487 | .one-day-listener {
488 | .wrapper-task-list-listener {
489 | padding: 10px 40px 20px 40px;
490 | .sorted-task-list-listener {
491 | padding: 0;
492 | .task-row-listener {
493 | position: relative;
494 | border-bottom: 1px solid grey;
495 | padding: 6px 0;
496 | .task-name-listener {
497 | display: inline-block;
498 | }
499 | .wrapper-task-icons {
500 | display: inline-block;
501 | position: absolute;
502 | right: 20px;
503 | .icon-edit-task {
504 | color: green;
505 | cursor: pointer;
506 | }
507 | .icon-remove-task {
508 | color: red;
509 | cursor: pointer;
510 | }
511 | }
512 | }
513 | .form-update-create-task {
514 | margin: 15px 0 0 0;
515 | }
516 | }
517 | }
518 | }
519 | }
520 | }
521 | .wrapper-new-task {
522 | @extend %padding-general-block;
523 | .wrapper-select-place {
524 | margin: 15px 0 10px 0;
525 | .wrapper-place-information-for-editing-listener {
526 | margin: 10px 0 0 0;
527 | }
528 | }
529 | .around-clock-time-work {
530 | padding: 6px 0;
531 | }
532 | }
533 | .wrapper-new-place {
534 | @extend %padding-general-block;
535 | margin: 5px 0;
536 |
537 | }
538 | .wrapper-settings {
539 | @extend %padding-general-block;
540 | }
541 |
542 | .wrapper-schedule, .wrapper-new-task, .wrapper-new-place {
543 | .wrapper-around-clock-time-work {
544 | padding: 6px 0 6px 0;
545 | .label-around-clock-time-work {
546 | margin: 0;
547 | }
548 | }
549 | .form-add-place {
550 | margin: 0 0 30px 0;
551 | }
552 | .btn-add-new-time-range {
553 | display: block;
554 | }
555 | .wrapper-added-places {
556 | border-top: 1px solid darkred;
557 | padding: 30px 0 0 0;
558 | .wrapper-place-information-for-editing-listener {
559 | margin: 10px 0 0 0;
560 | }
561 | }
562 | }
563 | }
564 | }
565 | }
566 | }
--------------------------------------------------------------------------------