Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Check in build

  • Loading branch information...
commit bdd5ff7b364859ab4369c6d0e49cbb5aa2da90c9 1 parent 1a3e2c0
@bhousel bhousel authored
Showing with 136,022 additions and 0 deletions.
  1. +4,599 −0 dist/iD.css
  2. +58,558 −0 dist/iD.js
  3. +14 −0 dist/iD.min.js
  4. +32,445 −0 dist/imagery.js
  5. +40,406 −0 dist/presets.js
View
4,599 dist/iD.css
@@ -0,0 +1,4599 @@
+/* http://meyerweb.com/eric/tools/css/reset/
+ v2.0 | 20110126
+ License: none (public domain)
+*/
+
+html, body, div, span, applet, object, iframe,
+h1, h2, h3, h4, h5, h6, p, blockquote, pre,
+a, abbr, acronym, address, big, cite, code,
+del, dfn, em, img, ins, kbd, q, s, samp,
+small, strike, strong, sub, sup, tt, var,
+b, u, i, center,
+dl, dt, dd, ol, ul, li,
+fieldset, form, label, legend,
+table, caption, tbody, tfoot, thead, tr, th, td,
+article, aside, canvas, details, embed,
+figure, figcaption, footer, header, hgroup,
+menu, nav, output, ruby, section, summary,
+time, mark, audio, video {
+ margin: 0;
+ padding: 0;
+ border: 0;
+ font-size: 100%;
+ font: inherit;
+ vertical-align: baseline;
+}
+/* HTML5 display-role reset for older browsers */
+article, aside, details, figcaption, figure,
+footer, header, hgroup, menu, nav, section {
+ display: block;
+}
+body {
+ line-height: 1;
+}
+ol, ul {
+ list-style: none;
+}
+blockquote, q {
+ quotes: none;
+}
+blockquote:before, blockquote:after,
+q:before, q:after {
+ content: '';
+ content: none;
+}
+table {
+ border-collapse: collapse;
+ border-spacing: 0;
+}
+a { text-decoration: none;}
+/*
+ * 1. Corrects font family not being inherited in all browsers.
+ * 2. Corrects font size not being inherited in all browsers.
+ * 3. Addresses margins set differently in Firefox 4+, Safari 5, and Chrome
+ */
+
+button,
+input,
+select,
+textarea {
+ font-family: inherit; /* 1 */
+ font-size: 100%; /* 2 */
+ margin: 0; /* 3 */
+ padding: 0;
+}
+
+/*
+ * Addresses Firefox 4+ setting `line-height` on `input` using `!important` in
+ * the UA stylesheet.
+ */
+
+button,
+input {
+ line-height: normal;
+}
+
+/* Hide default number spinner controls */
+input[type="number"]::-webkit-inner-spin-button,
+input[type="number"]::-webkit-outer-spin-button {
+display: none;
+}
+
+/*
+ * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
+ * and `video` controls.
+ * 2. Corrects inability to style clickable `input` types in iOS.
+ * 3. Improves usability and consistency of cursor style between image-type
+ * `input` and others.
+ */
+
+button,
+html input[type="button"], /* 1 */
+input[type="reset"],
+input[type="submit"] {
+ -webkit-appearance: button; /* 2 */
+ cursor: pointer; /* 3 */
+}
+
+/*
+ * Re-set default cursor for disabled elements.
+ */
+
+button[disabled],
+input[disabled] {
+ cursor: default;
+}
+
+/*
+ * 1. Addresses box sizing set to `content-box` in IE 8/9.
+ * 2. Removes excess padding in IE 8/9.
+ */
+
+input[type="checkbox"],
+input[type="radio"] {
+ box-sizing: border-box; /* 1 */
+ padding: 0; /* 2 */
+}
+
+/*
+ * 1. Addresses `appearance` set to `searchfield` in Safari 5 and Chrome.
+ * 2. Addresses `box-sizing` set to `border-box` in Safari 5 and Chrome
+ * (include `-moz` to future-proof).
+ */
+
+input[type="search"] {
+ -webkit-appearance: textfield; /* 1 */
+ -moz-box-sizing: border-box;
+ -webkit-box-sizing: border-box; /* 2 */
+ box-sizing: border-box;
+}
+
+/*
+ * Removes inner padding and search cancel button in Safari 5 and Chrome
+ * on OS X.
+ */
+
+input[type="search"]::-webkit-search-cancel-button,
+input[type="search"]::-webkit-search-decoration {
+ -webkit-appearance: none;
+}
+
+/*
+ * Removes inner padding and border in Firefox 4+.
+ */
+
+button::-moz-focus-inner,
+input::-moz-focus-inner {
+ border: 0;
+ padding: 0;
+}
+
+/*
+** Markup free clearing
+** Details: http://www.positioniseverything.net/easyclearing.html
+*/
+.cf:before,
+.cf:after {
+ content: " "; /* 1 */
+ display: table; /* 2 */
+}
+
+.cf:after {
+ clear: both;
+}
+/* tiles */
+img.tile {
+ position:absolute;
+ transform-origin:0 0;
+ -ms-transform-origin:0 0;
+ -webkit-transform-origin:0 0;
+ -moz-transform-origin:0 0;
+ -o-transform-origin:0 0;
+
+ opacity: 0;
+
+ -webkit-transition: opacity 200ms linear;
+ transition: opacity 200ms linear;
+ -moz-transition: opacity 200ms linear;
+}
+
+img.tile-loaded {
+ opacity: 1;
+}
+img.tile-removing {
+ opacity: 0;
+}
+
+/* base styles */
+path {
+ fill: none;
+}
+
+use {
+ pointer-events: none;
+}
+
+g.point .shadow,
+g.vertex .shadow,
+g.midpoint .shadow {
+ pointer-events: all;
+}
+
+path.shadow {
+ pointer-events: stroke;
+}
+
+.shadow {
+ -webkit-transition: 200ms;
+ -moz-transition: 200ms;
+ transition: 200ms;
+}
+
+/* points */
+
+g.point .stroke {
+ stroke: #444;
+ stroke-width: 1;
+ fill: #fff;
+}
+
+g.point .shadow {
+ fill: none;
+ stroke: #f6634f;
+ stroke-width: 8;
+ stroke-opacity: 0;
+}
+
+g.point.hover:not(.selected) .shadow {
+ stroke-opacity: 0.5;
+}
+
+g.point.selected .shadow {
+ stroke-opacity: 0.7;
+}
+
+g.point.active, g.point.active * {
+ pointer-events: none;
+}
+
+/* vertices and midpoints */
+
+g.vertex .fill {
+ fill: #000;
+}
+
+g.vertex .stroke {
+ stroke: #666;
+ stroke-width: 1;
+ fill: white;
+}
+
+g.vertex.shared .stroke {
+ fill: #aaa;
+}
+
+g.midpoint .fill {
+ fill: #eee;
+ stroke: #444;
+ stroke-opacity: .6;
+ opacity: .7;
+}
+
+g.midpoint.tag-highway-pedestrian .fill,
+g.midpoint.tag-highway-steps .fill,
+g.midpoint.tag-highway-path .fill,
+g.midpoint.tag-highway-footway .fill,
+g.midpoint.tag-highway-cycleway .fill,
+g.midpoint.tag-highway-bridleway .fill {
+ fill: #fff;
+ stroke: #333;
+ stroke-opacity: .8;
+ opacity: .8;
+}
+
+g.vertex .shadow,
+g.midpoint .shadow {
+ fill: #f6634f;
+ fill-opacity: 0;
+}
+
+g.vertex.vertex-hover {
+ display: none;
+}
+
+.mode-draw-area g.vertex.vertex-hover,
+.mode-draw-line g.vertex.vertex-hover,
+.mode-add-area g.vertex.vertex-hover,
+.mode-add-line g.vertex.vertex-hover,
+.mode-add-point g.vertex.vertex-hover,
+.mode-drag-node g.vertex.vertex-hover {
+ display: block;
+}
+
+g.vertex.hover:not(.selected) .shadow,
+g.midpoint.hover:not(.selected) .shadow {
+ fill-opacity: 0.3;
+}
+
+g.vertex.selected .shadow {
+ fill-opacity: 0.5;
+}
+
+.mode-draw-area g.midpoint,
+.mode-draw-line g.midpoint,
+.mode-add-area g.midpoint,
+.mode-add-line g.midpoint,
+.mode-add-point g.midpoint {
+ display: none;
+}
+
+/* lines */
+
+path.line {
+ stroke-linecap: round;
+ stroke-linejoin: bevel;
+}
+
+path.stroke {
+ stroke: black;
+ stroke-width: 4;
+}
+
+path.shadow {
+ stroke: #f6634f;
+ stroke-width: 10;
+ stroke-opacity: 0;
+}
+
+path.shadow.hover:not(.selected) {
+ stroke-opacity: 0.3;
+}
+
+path.shadow.selected {
+ stroke-opacity: 0.7;
+}
+
+path.line.stroke {
+ stroke: white;
+ stroke-width: 2;
+}
+
+path.area.stroke {
+ stroke: white;
+ stroke-width: 1;
+}
+path.area.fill {
+ stroke-width: 0;
+ stroke: rgba(255, 255, 255, 0.3);
+ fill: rgba(255, 255, 255, 0.3);
+ fill-rule: evenodd;
+}
+.preset-icon-fill-area {
+ border: 1px solid rgb(170, 170, 170);
+ background-color: rgba(170, 170, 170, 0.3);
+}
+
+path.stroke.tag-natural {
+ stroke: rgb(182, 225, 153);
+}
+path.fill.tag-natural {
+ stroke: rgba(182, 225, 153, 0.3);
+ fill: rgba(182, 225, 153, 0.3);
+}
+.preset-icon-fill-area.tag-natural {
+ border-color: rgb(182, 225, 153);
+ background-color: rgba(182, 225, 153, 0.3);
+}
+
+path.stroke.tag-landuse,
+path.stroke.tag-natural-wood,
+path.stroke.tag-natural-tree,
+path.stroke.tag-natural-grassland,
+path.stroke.tag-natural-grass,
+path.stroke.tag-leisure-nature_reserve,
+path.stroke.tag-leisure-pitch,
+path.stroke.tag-leisure-park {
+ stroke: rgb(140, 208, 95);
+}
+path.fill.tag-landuse,
+path.fill.tag-natural-wood,
+path.fill.tag-natural-tree,
+path.fill.tag-natural-grassland,
+path.fill.tag-natural-grass,
+path.fill.tag-leisure-nature_reserve,
+path.fill.tag-leisure-pitch,
+path.fill.tag-leisure-park {
+ stroke: rgba(140, 208, 95, 0.3);
+ fill: rgba(140, 208, 95, 0.3);
+}
+.preset-icon-fill-area.tag-landuse,
+.preset-icon-fill-area.tag-natural-wood,
+.preset-icon-fill-area.tag-natural-tree,
+.preset-icon-fill-area.tag-natural-grassland,
+.preset-icon-fill-area.tag-natural-grass,
+.preset-icon-fill-area.tag-leisure-nature_reserve,
+.preset-icon-fill-area.tag-leisure-pitch,
+.preset-icon-fill-area.tag-leisure-park {
+ border-color: rgb(140, 208, 95);
+ background-color: rgba(140, 208, 95, 0.3);
+}
+
+path.stroke.tag-natural-water,
+path.stroke.tag-landuse-basin,
+path.stroke.tag-landuse-reservoir {
+ stroke: rgb(119, 211, 222);
+}
+path.fill.tag-landuse-basin,
+path.fill.tag-landuse-reservoir,
+path.fill.tag-natural-water {
+ stroke: rgba(119, 211, 222, 0.3);
+ fill: rgba(119, 211, 222, 0.3);
+}
+.preset-icon-fill-area.tag-landuse-basin,
+.preset-icon-fill-area.tag-landuse-reservoir,
+.preset-icon-fill-area.tag-natural-water {
+ border-color: rgb(119, 211, 222);
+ background-color: rgba(119, 211, 222, 0.3);
+}
+
+path.stroke.tag-amenity-childcare,
+path.stroke.tag-amenity-kindergarten,
+path.stroke.tag-amenity-school,
+path.stroke.tag-amenity-college,
+path.stroke.tag-amenity-university {
+ stroke: rgb(255, 255, 148);
+}
+path.fill.tag-amenity-childcare,
+path.fill.tag-amenity-kindergarten,
+path.fill.tag-amenity-school,
+path.fill.tag-amenity-college,
+path.fill.tag-amenity-university {
+ stroke: rgba(255, 255, 148, 0.15);
+ fill: rgba(255, 255, 148, 0.15);
+}
+.preset-icon-fill-area.tag-amenity-childcare,
+.preset-icon-fill-area.tag-amenity-kindergarten,
+.preset-icon-fill-area.tag-amenity-school,
+.preset-icon-fill-area.tag-amenity-college,
+.preset-icon-fill-area.tag-amenity-university {
+ border-color: rgb(255, 255, 148);
+ background-color: rgba(255, 255, 148, 0.15);
+}
+
+path.stroke.tag-landuse-residential {
+ stroke: rgb(196, 189, 25);
+}
+path.fill.tag-landuse-residential {
+ stroke: rgba(196, 189, 25, 0.3);
+ fill: rgba(196, 189, 25, 0.3);
+}
+.preset-icon-fill-area.tag-landuse-residential {
+ border-color: rgb(196, 189, 25);
+ background: none;
+ box-shadow: inset 0 0 0 5px rgba(196, 189, 25, 0.3);
+}
+
+path.stroke.tag-landuse-retail,
+path.stroke.tag-landuse-commercial {
+ stroke: rgb(214, 136, 26);
+}
+path.fill.tag-landuse-retail,
+path.fill.tag-landuse-commercial {
+ stroke: rgba(214, 136, 26, 0.3);
+ fill: rgba(214, 136, 26, 0.3);
+}
+.preset-icon-fill-area.tag-landuse-retail,
+.preset-icon-fill-area.tag-landuse-commercial {
+ border-color: rgb(214, 136, 26);
+ background: none;
+ box-shadow: inset 0 0 0 5px rgba(214, 136, 26, 0.3);
+}
+
+path.stroke.tag-landuse-industrial {
+ stroke: rgb(228, 164, 245);
+}
+path.fill.tag-landuse-industrial {
+ stroke: rgba(228, 164, 245, 0.3);
+ fill: rgba(228, 164, 245, 0.3);
+}
+.preset-icon-fill-area.tag-landuse-industrial {
+ border-color: rgb(228, 164, 245);
+ background: none;
+ box-shadow: inset 0 0 0 5px rgba(228, 164, 245, 0.3);
+}
+
+path.stroke.tag-landuse-quarry {
+ stroke: rgb(166, 149, 123);
+}
+path.fill.tag-landuse-quarry {
+ stroke: rgba(166, 149, 123, 0.2);
+ fill: rgba(166, 149, 123, 0.2);
+}
+.preset-icon-fill-area.tag-landuse-quarry {
+ border-color: rgb(166, 149, 123);
+ background-color: rgba(166, 149, 123, 0.2);
+}
+
+path.stroke.tag-landuse-landfill {
+ stroke: rgb(255, 153, 51);
+}
+path.fill.tag-landuse-landfill {
+ stroke: rgba(255, 153, 51, 0.2);
+ fill: rgba(255, 153, 51, 0.2);
+}
+.preset-icon-fill-area.tag-landuse-landfill {
+ border-color: rgb(255, 153, 51);
+ background-color: rgba(255, 153, 51, 0.2);
+}
+
+.pattern-color-construction {
+ fill: rgba(196, 189, 25, 0.2);
+}
+path.stroke.tag-landuse-construction {
+ stroke: rgb(196, 189, 25);
+}
+.preset-icon-fill-area.tag-landuse-construction {
+ border-color: rgb(196, 189, 25);
+ background-color: rgba(196, 189, 25, 0.2);
+}
+
+path.stroke.tag-landuse-military {
+ stroke: rgb(214, 136, 26);
+}
+path.fill.tag-landuse-military {
+ stroke: rgba(214, 136, 26, 0.2);
+ fill: rgba(214, 136, 26, 0.2);
+}
+.preset-icon-fill-area.tag-landuse-military {
+ border-color: rgb(214, 136, 26);
+ background-color: rgba(214, 136, 26, 0.2);
+}
+
+.pattern-color-wetland {
+ fill: rgba(182, 225, 153, 0.2);
+}
+path.stroke.tag-natural-wetland {
+ stroke: rgb(182, 225, 153);
+}
+.preset-icon-fill-area.tag-natural-wetland {
+ border-color: rgb(182, 225, 153);
+ background-color: rgba(182, 225, 153, 0.2);
+}
+
+.pattern-color-meadow {
+ fill: rgba(182, 225, 153, 0.2);
+}
+path.stroke.tag-landuse-meadow {
+ stroke: rgb(182, 225, 153);
+}
+.preset-icon-fill-area.tag-landuse-meadow {
+ border-color: rgb(182, 225, 153);
+ background-color: rgba(182, 225, 153, 0.2);
+}
+
+.pattern-color-beach {
+ fill: rgba(255, 255, 126, 0.2);
+}
+path.stroke.tag-natural-beach {
+ stroke: rgb(255, 255, 126);
+}
+.preset-icon-fill-area.tag-natural-beach {
+ border-color: rgb(255, 255, 126);
+ background-color: rgba(255, 255, 126, 0.2);
+}
+
+.pattern-color-scrub {
+ fill: rgba(219, 240, 139, 0.2);
+}
+path.stroke.tag-natural-scrub {
+ stroke: rgb(219, 240, 139);
+}
+.preset-icon-fill-area.tag-natural-scrub {
+ border-color: rgb(219, 240, 139);
+ background-color: rgba(219, 240, 139, 0.2);
+}
+
+.pattern-color-farm,
+.pattern-color-farmland {
+ fill: rgba(140, 208, 95, 0.2);
+}
+path.stroke.tag-landuse-farm,
+path.stroke.tag-landuse-farmland {
+ stroke: rgb(140, 208, 95);
+}
+.preset-icon-fill-area.tag-landuse-farm,
+.preset-icon-fill-area.tag-landuse-farmland {
+ background-color: rgba(140, 208, 95, 0.2);
+}
+
+.pattern-color-cemetery,
+.pattern-color-orchard {
+ fill: rgba(140, 208, 95, 0.2);
+}
+path.stroke.tag-landuse-cemetery,
+path.stroke.tag-landuse-orchard {
+ stroke: rgb(140, 208, 95);
+}
+.preset-icon-fill-area.tag-landuse-cemetery,
+.preset-icon-fill-area.tag-landuse-orchard {
+ background-color: rgba(140, 208, 95, 0.2);
+}
+
+path.stroke.tag-amenity-parking {
+ stroke: rgb(170, 170, 170);
+}
+path.fill.tag-amenity-parking {
+ stroke: rgba(170, 170, 170, 0.3);
+ fill: rgba(170, 170, 170, 0.3);
+}
+.preset-icon-fill-area.tag-amenity-parking {
+ border-color: rgb(170, 170, 170);
+ background-color: rgba(170, 170, 170, 0.3);
+}
+
+path.fill.tag-place,
+path.fill.tag-boundary {
+ fill: none;
+}
+
+/* highways */
+
+path.shadow.tag-highway {
+ stroke-width:16;
+}
+path.casing.tag-highway {
+ stroke:#444;
+ stroke-width:10;
+}
+path.stroke.tag-highway {
+ stroke:#ccc;
+ stroke-width:8;
+}
+
+.low-zoom path.shadow.tag-highway {
+ stroke-width:12;
+}
+.low-zoom path.casing.tag-highway {
+ stroke-width:6;
+}
+.low-zoom path.stroke.tag-highway {
+ stroke-width:4;
+}
+
+path.stroke.tag-highway-motorway,
+path.stroke.tag-highway-motorway_link,
+path.stroke.tag-construction-motorway {
+ stroke:#58a9ed;
+}
+
+path.casing.tag-highway-motorway,
+path.casing.tag-highway-motorway_link,
+path.casing.tag-construction-motorway {
+ stroke:#2c5476;
+}
+
+path.stroke.tag-highway-trunk,
+path.stroke.tag-highway-trunk_link,
+path.stroke.tag-construction-trunk {
+ stroke:#8cd05f;
+}
+path.casing.tag-highway-trunk,
+path.casing.tag-highway-trunk_link,
+path.casing.tag-construction-trunk {
+ stroke:#46682f;
+}
+
+path.stroke.tag-highway-primary,
+path.stroke.tag-highway-primary_link,
+path.stroke.tag-construction-primary {
+ stroke:#e06d5f;
+}
+path.casing.tag-highway-primary,
+path.casing.tag-highway-primary_link,
+path.casing.tag-construction-primary {
+ stroke:#70372f;
+}
+
+path.stroke.tag-highway-secondary,
+path.stroke.tag-highway-secondary_link,
+path.stroke.tag-construction-secondary {
+ stroke:#eab056;
+}
+path.casing.tag-highway-secondary,
+path.casing.tag-highway-secondary_link,
+path.casing.tag-construction-secondary {
+ stroke:#75582b;
+}
+
+path.stroke.tag-highway-tertiary,
+path.stroke.tag-highway-tertiary_link,
+path.stroke.tag-construction-tertiary {
+ stroke:#ffff7e;
+}
+path.casing.tag-highway-tertiary,
+path.casing.tag-highway-tertiary_link,
+path.casing.tag-construction-tertiary {
+ stroke:#7f7f3f;
+}
+
+path.stroke.tag-highway-unclassified,
+path.stroke.tag-construction-unclassified {
+ stroke:#eaeaea;
+}
+path.casing.tag-highway-unclassified,
+path.casing.tag-construction-unclassified {
+ stroke:#444;
+}
+
+path.stroke.tag-highway-residential,
+path.stroke.tag-construction-residential {
+ stroke:#fff;
+}
+path.casing.tag-highway-residential,
+path.casing.tag-construction-residential {
+ stroke:#444;
+}
+
+path.stroke.tag-highway-living_street {
+ stroke:#ccc;
+ stroke-width:4;
+}
+path.casing.tag-highway-living_street {
+ stroke:#fff;
+ stroke-width:6;
+}
+
+path.stroke.tag-highway-pedestrian {
+ stroke:#fff;
+ stroke-dasharray: 2, 8;
+ stroke-width:4;
+}
+path.casing.tag-highway-pedestrian {
+ stroke:#8cd05f;
+ stroke-width:6;
+}
+path.stroke.area.tag-highway-pedestrian {
+ stroke:#fff;
+ stroke-dasharray: none;
+ stroke-width: 2;
+}
+
+path.stroke.tag-highway-service {
+ stroke:#fff;
+ stroke-width:4;
+}
+path.casing.tag-highway-service {
+ stroke:#666;
+ stroke-width:6;
+}
+.low-zoom path.stroke.tag-highway-service {
+ stroke-width:2;
+}
+.low-zoom path.casing.tag-highway-service {
+ stroke-width:4;
+}
+
+path.stroke.tag-highway-track {
+ stroke: #fff;
+ stroke-width: 4;
+}
+path.casing.tag-highway-track {
+ stroke: #996600;
+ stroke-width: 6;
+ stroke-linecap: butt;
+ stroke-dasharray: 6, 6;
+}
+.low-zoom path.stroke.tag-highway-track {
+ stroke-width:2;
+}
+.low-zoom path.casing.tag-highway-track {
+ stroke-width:4;
+}
+
+path.stroke.tag-highway-path {
+ stroke: #000;
+ stroke-width: 1 !important;
+ stroke-linecap: butt;
+ stroke-dasharray: 8, 4;
+}
+path.casing.tag-highway-path {
+ stroke-width: 1 !important;
+ stroke: #fff;
+}
+
+path.stroke.tag-highway-footway,
+path.stroke.tag-highway-cycleway,
+path.stroke.tag-highway-bridleway {
+ stroke-width: 4;
+ stroke-linecap: butt;
+ stroke-dasharray: 6, 6;
+}
+path.casing.tag-highway-footway,
+path.casing.tag-highway-cycleway,
+path.casing.tag-highway-bridleway {
+ stroke-width: 6;
+ stroke: #fff;
+}
+
+.low-zoom path.stroke.tag-highway-footway,
+.low-zoom path.stroke.tag-highway-cycleway,
+.low-zoom path.stroke.tag-highway-bridleway {
+ stroke-width: 2;
+}
+.low-zoom path.casing.tag-highway-footway,
+.low-zoom path.casing.tag-highway-cycleway,
+.low-zoom path.casing.tag-highway-bridleway {
+ stroke-width: 4;
+}
+
+path.stroke.tag-highway-footway {
+ stroke: #ae8681;
+}
+path.stroke.tag-highway-cycleway {
+ stroke: #58a9ed;
+}
+path.stroke.tag-highway-bridleway {
+ stroke: #e06d5f;
+}
+
+path.stroke.tag-highway-steps {
+ stroke: #81d25c;
+ stroke-width: 4;
+ stroke-linecap: butt;
+ stroke-dasharray: 3, 3;
+}
+path.casing.tag-highway-steps {
+ stroke-width: 6;
+ stroke: #fff;
+}
+
+/* aeroways */
+
+path.stroke.tag-aeroway-taxiway {
+ stroke: #805C80;
+ stroke-width: 4;
+}
+path.shadow.tag-aeroway-runway {
+ stroke-width: 20;
+}
+path.stroke.tag-aeroway-runway {
+ stroke: #fff;
+ stroke-width: 2;
+ stroke-linecap: butt;
+ stroke-dasharray: 24, 48;
+}
+path.casing.tag-aeroway-runway {
+ stroke-width: 10;
+ stroke: #000;
+ stroke-linecap: square;
+}
+path.fill.tag-aeroway-runway {
+ stroke: rgba(0, 0, 0, 0.6);
+ fill: rgba(0, 0, 0, 0.6);
+}
+path.stroke.tag-aeroway-apron {
+ stroke: #805C80;
+}
+path.fill.tag-aeroway-apron {
+ stroke: rgba(128, 92, 128, 0.2);
+ fill: rgba(128, 92, 128, 0.2);
+}
+
+
+/* railways */
+
+path.stroke.tag-railway {
+ stroke: #eee;
+ stroke-width: 2;
+ stroke-linecap: butt;
+ stroke-dasharray: 12,12;
+}
+
+path.casing.tag-railway {
+ stroke: #555;
+ stroke-width: 4;
+}
+
+path.stroke.tag-railway-abandoned {
+ stroke: #eee;
+}
+path.casing.tag-railway-abandoned {
+ stroke: #999;
+}
+
+path.stroke.tag-railway-subway {
+ stroke: #666;
+}
+path.casing.tag-railway-subway {
+ stroke: #222;
+}
+
+path.stroke.tag-railway-platform {
+ stroke: #999;
+ stroke-width: 4;
+ stroke-dasharray: none;
+}
+path.casing.tag-railway-platform {
+ stroke: none;
+}
+
+.area.stroke.tag-railway {
+ stroke: white;
+ stroke-width: 1;
+ stroke-dasharray: none;
+}
+.area.casing.tag-railway {
+ stroke: none;
+}
+
+/* waterways */
+
+path.fill.tag-waterway {
+ stroke: rgba(119, 211, 222, 0.3);
+ fill: rgba(119, 211, 222, 0.3);
+}
+
+path.stroke.tag-waterway {
+ stroke: #77d3de;
+ stroke-width: 2;
+}
+path.casing.tag-waterway {
+ stroke: #77d3de;
+ stroke-width: 4;
+}
+
+path.stroke.tag-waterway-river {
+ stroke-width: 4;
+}
+path.casing.tag-waterway-river {
+ stroke-width: 6;
+}
+
+path.stroke.tag-waterway-ditch {
+ stroke: #6591ff;
+ stroke-width: 1;
+}
+path.casing.tag-waterway-ditch {
+ stroke: #6591ff;
+ stroke-width: 3;
+}
+
+/* power */
+
+path.stroke.tag-power {
+ stroke: #939393;
+ stroke-width: 2;
+}
+path.casing.tag-power {
+ stroke: none;
+}
+
+/* boundary */
+
+path.stroke.tag-boundary {
+ stroke: #fff;
+ stroke-width: 2;
+ stroke-linecap: butt;
+ stroke-dasharray: 20, 5, 5, 5;
+}
+path.casing.tag-boundary {
+ stroke: #82B5FE;
+ stroke-width: 6;
+}
+
+path.casing.tag-boundary-protected_area,
+path.casing.tag-boundary-national_park {
+ stroke: #b0e298;
+}
+
+/* barriers */
+
+path.stroke.tag-barrier {
+ stroke: #ddd;
+ stroke-width: 3px;
+ stroke-linecap: round;
+ stroke-dasharray: 15, 5, 1, 5;
+}
+.low-zoom path.stroke.tag-barrier {
+ stroke-width: 2px;
+ stroke-linecap: butt;
+ stroke-dasharray: 8, 2, 2, 2;
+}
+
+/* bridges */
+
+path.casing.tag-bridge {
+ stroke-width: 16;
+ stroke-opacity: 0.6;
+ stroke: #000;
+ stroke-linecap: butt;
+}
+
+path.shadow.tag-bridge {
+ stroke-width: 22;
+}
+
+path.casing.line.tag-railway.tag-bridge,
+path.casing.tag-highway-living_street.tag-bridge,
+path.casing.tag-highway-path.tag-bridge,
+path.casing.line.tag-highway-pedestrian.tag-bridge,
+path.casing.tag-highway-service.tag-bridge,
+path.casing.tag-highway-track.tag-bridge,
+path.casing.tag-highway-steps.tag-bridge,
+path.casing.tag-highway-footway.tag-bridge,
+path.casing.tag-highway-cycleway.tag-bridge,
+path.casing.tag-highway-bridleway.tag-bridge {
+ stroke-width: 10;
+}
+
+path.shadow.line.tag-railway.tag-bridge,
+path.shadow.tag-highway-living_street.tag-bridge,
+path.shadow.tag-highway-path.tag-bridge,
+path.shadow.line.tag-highway-pedestrian.tag-bridge,
+path.shadow.tag-highway-service.tag-bridge,
+path.shadow.tag-highway-track.tag-bridge,
+path.shadow.tag-highway-steps.tag-bridge,
+path.shadow.tag-highway-footway.tag-bridge,
+path.shadow.tag-highway-cycleway.tag-bridge,
+path.shadow.tag-highway-bridleway.tag-bridge {
+ stroke-width: 17;
+}
+
+
+.low-zoom path.casing.tag-bridge {
+ stroke-width: 10;
+ stroke-opacity: 0.6;
+ stroke: #000;
+ stroke-linecap: butt;
+}
+
+.low-zoom path.shadow.tag-bridge {
+ stroke-width: 14;
+}
+
+.low-zoom path.casing.line.tag-railway.tag-bridge,
+.low-zoom path.casing.tag-highway-living_street.tag-bridge,
+.low-zoom path.casing.tag-highway-path.tag-bridge,
+.low-zoom path.casing.line.tag-highway-pedestrian.tag-bridge,
+.low-zoom path.casing.tag-highway-service.tag-bridge,
+.low-zoom path.casing.tag-highway-track.tag-bridge,
+.low-zoom path.casing.tag-highway-steps.tag-bridge,
+.low-zoom path.casing.tag-highway-footway.tag-bridge,
+.low-zoom path.casing.tag-highway-cycleway.tag-bridge,
+.low-zoom path.casing.tag-highway-bridleway.tag-bridge {
+ stroke-width: 6;
+}
+
+.low-zoom path.shadow.line.tag-railway.tag-bridge,
+.low-zoom path.shadow.tag-highway-living_street.tag-bridge,
+.low-zoom path.shadow.tag-highway-path.tag-bridge,
+.low-zoom path.shadow.line.tag-highway-pedestrian.tag-bridge,
+.low-zoom path.shadow.tag-highway-service.tag-bridge,
+.low-zoom path.shadow.tag-highway-track.tag-bridge,
+.low-zoom path.shadow.tag-highway-steps.tag-bridge,
+.low-zoom path.shadow.tag-highway-footway.tag-bridge,
+.low-zoom path.shadow.tag-highway-cycleway.tag-bridge,
+.low-zoom path.shadow.tag-highway-bridleway.tag-bridge {
+ stroke-width: 13;
+}
+
+/* tunnels */
+
+path.stroke.tag-tunnel {
+ stroke-opacity: 0.3;
+}
+
+path.casing.tag-tunnel {
+ stroke-opacity: 0.5;
+}
+
+/* embankments / cuttings */
+
+path.casing.tag-embankment,
+path.casing.tag-cutting {
+ stroke-opacity: 0.5;
+ stroke: #000;
+ stroke-width: 22;
+ stroke-dasharray: 2, 4;
+ stroke-linecap: butt;
+}
+
+path.shadow.tag-embankment,
+path.shadow.tag-cutting {
+ stroke-width: 28;
+}
+
+.low-zoom path.casing.tag-embankment,
+.low-zoom path.casing.tag-cutting {
+ stroke-width: 10;
+}
+
+.low-zoom path.shadow.tag-embankment,
+.low-zoom path.shadow.tag-cutting {
+ stroke-width: 14;
+}
+
+
+/* construction */
+
+path.stroke.tag-highway-construction,
+path.casing.tag-highway-construction {
+ stroke-linecap: butt;
+ stroke-dasharray: 7, 7;
+}
+
+.low-zoom path.stroke.tag-highway-construction,
+.low-zoom path.casing.tag-highway-construction {
+ stroke-linecap: butt;
+ stroke-dasharray: 5, 5;
+}
+
+text {
+ font-size:10px;
+ pointer-events: none;
+ color: #222;
+ opacity: 1;
+}
+
+.oneway .textpath.tag-waterway {
+ fill: #002F35;
+}
+
+marker#oneway-marker path {
+ fill:#000;
+ opacity: .5;
+}
+
+path.oneway {
+ stroke-width: 6px;
+}
+
+/* Buildings */
+
+path.stroke.tag-building,
+path.stroke.tag-amenity-shelter {
+ stroke: rgb(224, 110, 95);
+}
+path.fill.tag-building,
+path.fill.tag-amenity-shelter {
+ stroke: rgba(224, 110, 95, 0.3);
+ fill: rgba(224, 110, 95, 0.3);
+}
+.preset-icon-fill-area.tag-building,
+.preset-icon-fill-area.tag-amenity-shelter {
+ border-color: rgb(224, 110, 95);
+ background-color: rgba(224, 110, 95, 0.3);
+}
+
+
+/*
+ * Labels
+ */
+
+text.arealabel-halo,
+text.linelabel-halo,
+text.pointlabel-halo,
+text.arealabel,
+text.linelabel,
+text.pointlabel {
+ font-size: 12px;
+ font-weight: bold;
+ fill: #333;
+ text-anchor: middle;
+ pointer-events: none;
+ -webkit-transition: opacity 100ms linear;
+ transition: opacity 100ms linear;
+ -moz-transition: opacity 100ms linear;
+}
+
+.linelabel-halo .textpath,
+.linelabel .textpath {
+ dominant-baseline: middle;
+}
+
+/* Opera doesn't support dominant-baseline. See #715 */
+.opera .linelabel-halo .textpath,
+.opera .linelabel .textpath {
+ baseline-shift: -33%;
+ dominant-baseline: auto;
+}
+
+.layer-halo text {
+ opacity: 0.7;
+ stroke: #fff;
+ stroke-width: 5px;
+ stroke-miterlimit: 1;
+}
+
+text.proximate {
+ opacity: 0;
+}
+
+text.point {
+ font-size: 10px;
+}
+
+/* Turns */
+
+g.turn rect,
+g.turn circle {
+ fill: none;
+ pointer-events: all;
+}
+
+.form-field-restrictions .vertex {
+ pointer-events: none;
+ cursor: auto !important;
+}
+
+/* Cursors */
+
+.map-in-map,
+#map {
+ cursor: auto; /* Opera */
+ cursor: url(img/cursor-grab.png) 9 9, auto; /* FF */
+}
+
+.mode-browse .point,
+.mode-select .point {
+ cursor: pointer; /* Opera */
+ cursor: url(img/cursor-select-point.png), pointer; /* FF */
+}
+
+.mode-select .vertex,
+.mode-browse .vertex {
+ cursor: pointer; /* Opera */
+ cursor: url(img/cursor-select-vertex.png), pointer; /* FF */
+}
+
+.mode-browse .line,
+.mode-select .line {
+ cursor: pointer; /* Opera */
+ cursor: url(img/cursor-select-line.png), pointer; /* FF */
+}
+
+.mode-select .area,
+.mode-browse .area {
+ cursor: pointer; /* Opera */
+ cursor: url(img/cursor-select-area.png), pointer; /* FF */
+}
+
+.mode-select .midpoint,
+.mode-browse .midpoint {
+ cursor: pointer; /* Opera */
+ cursor: url(img/cursor-select-split.png), pointer; /* FF */
+}
+
+.mode-select .behavior-multiselect .point,
+.mode-select .behavior-multiselect .vertex,
+.mode-select .behavior-multiselect .line,
+.mode-select .behavior-multiselect .area {
+ cursor: pointer; /* Opera */
+ cursor: url(img/cursor-select-add.png), pointer; /* FF */
+}
+
+.mode-select .behavior-multiselect .selected {
+ cursor: pointer; /* Opera */
+ cursor: url(img/cursor-select-remove.png), pointer; /* FF */
+}
+
+#map .point:active,
+#map .vertex:active,
+#map .line:active,
+#map .area:active,
+#map .midpoint:active,
+#map .mode-select .selected {
+ cursor: pointer; /* Opera */
+ cursor: url(img/cursor-select-acting.png), pointer; /* FF */
+}
+
+.mode-draw-line #map,
+.mode-draw-area #map,
+.mode-add-line #map,
+.mode-add-area #map,
+.mode-drag-node #map {
+ cursor: crosshair; /* Opera */
+ cursor: url(img/cursor-draw.png) 9 9, crosshair; /* FF */
+}
+
+.mode-draw-line .way.hover,
+.mode-draw-area .way.hover,
+.mode-add-line .way.hover,
+.mode-add-area .way.hover,
+.mode-drag-node .way.hover {
+ cursor: crosshair; /* Opera */
+ cursor: url(img/cursor-draw-connect-line.png) 9 9, crosshair; /* FF */
+}
+
+.mode-draw-line .vertex.hover,
+.mode-draw-area .vertex.hover,
+.mode-add-line .vertex.hover,
+.mode-add-area .vertex.hover,
+.mode-drag-node .vertex.hover {
+ cursor: crosshair; /* Opera */
+ cursor: url(img/cursor-draw-connect-vertex.png) 9 9, crosshair; /* FF */
+}
+
+.mode-add-point #map,
+.mode-browse.lasso #map,
+.mode-browse.lasso .way,
+.mode-browse.lasso .vertex,
+.mode-browse.lasso .midpoint,
+.mode-select.lasso #map,
+.mode-select.lasso .way,
+.mode-select.lasso .vertex,
+.mode-select.lasso .midpoint {
+ cursor: crosshair; /* Opera */
+ cursor: url(img/cursor-draw.png) 9 9, crosshair; /* FF */
+}
+
+.turn rect,
+.turn circle {
+ cursor: pointer; /* Opera */
+ cursor: url(img/cursor-pointer.png) 6 1, pointer; /* FF */
+}
+
+.lasso #map {
+ pointer-events: visibleStroke;
+}
+
+/* GPX Paths */
+div.layer-gpx {
+ pointer-events: none;
+}
+
+path.gpx {
+ stroke: #FF26D4;
+ stroke-width: 2;
+ fill: none;
+}
+
+text.gpx {
+ fill: #FF26D4;
+}
+
+/* Mapillary Layer */
+
+.layer-mapillary {
+ pointer-events: none;
+}
+
+.layer-mapillary g {
+ pointer-events: visible;
+ cursor: pointer; /* Opera */
+ cursor: url(img/cursor-select-mapillary.png) 6 1, pointer; /* FF */
+}
+
+.layer-mapillary g * {
+ stroke-width: 2;
+ stroke: #ffc600;
+ fill: #ffc600;
+}
+
+.layer-mapillary g:hover * {
+ stroke-width: 2;
+ stroke: #ff9900;
+ fill: #ff9900;
+}
+
+.layer-mapillary g.selected * {
+ stroke-width: 4;
+ stroke: #ff5800;
+ fill: #ff5800;
+}
+
+/* Modes */
+
+.mode-draw-line .vertex.active,
+.mode-draw-area .vertex.active,
+.mode-drag-node .vertex.active {
+ display: none;
+}
+
+.mode-draw-line .way.active,
+.mode-draw-area .way.active,
+.mode-drag-node .active {
+ pointer-events: none;
+}
+
+/* Ensure drawing doesn't interact with area fills. */
+.mode-add-point .area.fill,
+.mode-draw-line .area.fill,
+.mode-draw-area .area.fill,
+.mode-add-line .area.fill,
+.mode-add-area .area.fill,
+.mode-drag-node .area.fill {
+ pointer-events: none;
+}
+
+
+/* Fill Styles */
+.low-zoom.fill-wireframe path.stroke,
+.fill-wireframe path.stroke {
+ stroke-width: 1;
+ stroke-opacity: 0.5;
+ stroke-dasharray: none;
+ fill: none;
+}
+
+.low-zoom.fill-wireframe path.shadow,
+.fill-wireframe path.shadow {
+ stroke-width: 8;
+}
+
+.fill-wireframe path.shadow.hover:not(.selected) {
+ stroke-opacity: 0.2;
+}
+.fill-wireframe path.shadow.selected {
+ stroke-opacity: 0.4;
+}
+
+.fill-wireframe .point,
+.fill-wireframe .icon,
+.fill-wireframe path.casing,
+.fill-wireframe path.fill,
+.fill-wireframe path.oneway {
+ display: none;
+}
+
+.fill-partial path.fill {
+ fill-opacity: 0;
+ stroke-width: 60px;
+ pointer-events: visibleStroke;
+}
+/* Basics
+------------------------------------------------------- */
+
+/*
+ Opera misbehaves when the window is resized vertically unless 100% width + height are
+ applied to both html and body. https://gist.github.com/jfirebaugh/bd225bcfdd3a633850c4
+*/
+html, body {
+ width: 100%;
+ height: 100%;
+}
+
+body {
+ font:normal 12px/1.6667 'Helvetica Neue', Arial, sans-serif;
+ margin:0;
+ padding:0;
+ min-width: 768px;
+ color:#333;
+ overflow: hidden;
+}
+
+.unsupported {
+ text-align: center;
+ vertical-align: middle;
+ padding-top: 100px;
+ font-size: 15px;
+}
+
+.id-container {
+ height: 100%;
+ width: 100%;
+ position: fixed;
+ min-width: 768px;
+}
+
+#content {
+ position: relative;
+ overflow: hidden;
+ height: 100%;
+}
+
+#defs {
+ /* Can't be display: none or the clippaths are ignored. */
+ position: absolute;
+ width: 0;
+ height: 0;
+}
+
+.spacer {
+ height: 40px;
+ margin-right: 10px;
+}
+
+.limiter {
+ position: relative;
+ max-width: 1200px;
+}
+
+.spinner {
+ opacity: .5;
+}
+
+.spinner img {
+ position: absolute;
+ height: 40px;
+ width: 40px;
+ right: 10px;
+ top: 10px;
+ border-radius: 4px;
+ margin-right: 10px;
+ background: black;
+}
+
+div, textarea, label, input, form, span, ul, li, ol, a, button, h1, h2, h3, h4, h5, p, img {
+ -moz-box-sizing: border-box;
+ -webkit-box-sizing: border-box;
+ box-sizing: border-box;
+}
+
+a, button, input, textarea {
+ -webkit-tap-highlight-color:rgba(0,0,0,0);
+ -webkit-touch-callout:none;
+}
+
+a,
+button,
+.checkselect label:hover,
+.opacity-options li,
+.radial-menu-item {
+ cursor: pointer; /* Opera */
+ cursor: url(img/cursor-pointer.png) 6 1, pointer; /* FF */
+}
+
+h2 {
+ font-size: 25px;
+ line-height: 1.25;
+ font-weight: bold;
+ margin-bottom: 20px;
+}
+
+h3:last-child,
+h2:last-child,
+h4:last-child { margin-bottom: 0;}
+
+h3 {
+ font-size: 16px;
+ line-height: 1.25;
+ font-weight: bold;
+ margin-bottom: 10px;
+}
+
+h4, h5 {
+ font-size: 12px;
+ font-weight: bold;
+ padding-bottom: 10px;
+}
+
+:focus {
+ outline-color: transparent;
+ outline-style: none;
+}
+
+p {
+ font-size: 12px;
+ margin:0;
+ padding:0;
+}
+
+p:last-child {
+ padding-bottom: 0;
+}
+
+em {
+ font-style: italic;
+}
+
+strong {
+ font-weight: bold;
+}
+
+a:visited, a {
+ color: #7092ff;
+}
+
+a:hover {
+ color:#597be7;
+}
+
+/* Forms
+------------------------------------------------------- */
+
+textarea {
+ resize: vertical;
+ font:normal 12px/20px 'Helvetica Neue', Arial, sans-serif;
+}
+
+textarea,
+input[type=text],
+input[type=search],
+input[type=number],
+input[type=url],
+input[type=tel],
+input[type=email] {
+ background-color: white;
+ border:1px solid #ccc;
+ padding:5px 10px;
+ height:30px;
+ width: 100%;
+ border-radius:4px;
+ text-overflow: ellipsis;
+}
+
+textarea:focus,
+input:focus {
+ background-color: #F1F1F1;
+}
+
+input[type="checkbox"],
+input[type="radio"] {
+ float: left;
+ width: 14px;
+ height: 14px;
+ margin-right: 5px;
+ margin-top: 3px;
+}
+
+/* remove bottom border radius when combobox is open */
+.combobox + * textarea:focus,
+.combobox + * input:focus {
+ border-bottom-left-radius: 0 !important;
+ border-bottom-right-radius: 0 !important;
+}
+
+/* tables */
+
+table {
+ background-color: white;
+ border-collapse: collapse;
+ width:100%;
+ border-spacing:0;
+}
+
+table th {
+ text-align:left;
+}
+
+table.tags, table.tags td, table.tags th {
+ border: 1px solid #CCC;
+ padding: 4px;
+}
+
+/* Grid
+------------------------------------------------------- */
+
+.col0 { float:left; width:04.1666%; }
+.col1 { float:left; width:08.3333%; }
+.col2 { float:left; width:16.6666%; }
+.col3 { float:left; width:25.0000%; max-width: 300px; }
+.col4 { float:left; width:33.3333%; max-width: 400px; }
+.col5 { float:left; width:41.6666%; max-width: 500px; }
+.col6 { float:left; width:50.0000%; max-width: 600px; }
+.col7 { float:left; width:58.3333%; }
+.col8 { float:left; width:66.6666%; }
+.col9 { float:left; width:75.0000%; }
+.col10 { float:left; width:83.3333%; }
+.col11 { float:left; width:91.6666%; }
+.col12 { float:left; width:100.0000%; }
+
+/* UI Lists
+------------------------------------------------------- */
+
+ul li { list-style: none;}
+
+.toggle-list > label {
+ position: relative;
+ padding: 5px 10px;
+ display: block;
+ height: 30px;
+ background-color: white;
+ color: #7092FF;
+ cursor: pointer;
+}
+
+.toggle-list > label:hover {
+ background-color: #ececec;
+}
+
+.toggle-list > label:not(:last-child) {
+ border-bottom: 1px solid #ccc;
+}
+
+.toggle-list > label:last-child {
+ border-radius: 0 0 3px 3px;
+}
+
+.toggle-list label > span {
+ display: block;
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+}
+
+.toggle-list > label.active {
+ background: #E8EBFF;
+}
+
+
+/* Utility Classes
+------------------------------------------------------- */
+.fillL {
+ background: white;
+ color: #333;
+}
+
+.fillL2 {
+ background: #f6f6f6;
+ color: #333;
+}
+
+.fillL3 {
+ background: #ececec;
+ color: #333;
+}
+
+.fillD {
+ background:rgba(0,0,0,.5);
+ color: white;
+}
+
+.fl { float: left;}
+.fr { float: right;}
+
+div.hide,
+form.hide,
+button.hide,
+a.hide,
+li.hide {
+ display: none;
+}
+
+.deemphasize {
+ color: #a9a9a9;
+}
+
+.content {
+ box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.25);
+}
+
+.loading {
+ background: url(img/loader_bg.gif);
+ background-size:5px 5px;
+}
+
+.panewrap {
+ position:absolute;
+ width:200%;
+ height:100%;
+ right: -100%;
+}
+
+
+.pane {
+ position:absolute;
+ width:50%;
+ top: 0;
+ bottom: 30px;
+}
+
+.pane:first-child {
+ left: 0;
+}
+
+.pane:last-child {
+ right: 0;
+}
+
+/* Buttons */
+
+button {
+ text-align: center;
+ line-height:20px;
+ border:0;
+ background: white;
+ font-weight: bold;
+ color:#333;
+ font-size:12px;
+ display: inline-block;
+ height:40px;
+ border-radius:4px;
+}
+
+button:focus,
+button:hover {
+ background-color: #ececec;
+}
+
+button[disabled],
+button.disabled {
+ background-color: rgba(255,255,255,.25);
+ color: rgba(0,0,0,.5);
+ cursor: auto;
+}
+
+button.active {
+ background: #7092ff;
+}
+
+button.minor {
+ position: absolute;
+ top: 0;
+ right: 0;
+ height: 100%;
+ width: 10%;
+ border-radius: 0;
+ background-color: #fafafa;
+}
+
+button.minor .icon {
+ opacity: .5;
+}
+
+button.minor:hover {
+ background-color: #f1f1f1;
+}
+
+.button-wrap {
+ display: inline-block;
+ padding-right:10px;
+ margin: 0;
+}
+
+.button-wrap button:only-child {
+ width: 100%;
+}
+
+.button-wrap:last-of-type {
+ padding-right: 0;
+}
+
+.joined button {
+ border-radius:0;
+ border-right: 1px solid rgba(0,0,0,.5);
+}
+
+.fillL .joined button {
+ border-right: 1px solid white;
+}
+
+.joined button:first-child {
+ border-radius:4px 0 0 4px;
+}
+
+.joined button:last-child {
+ border-right-width: 0;
+ border-radius:0 4px 4px 0;
+}
+
+button.action {
+ background: #7092ff;
+ color: white;
+}
+
+button[disabled].action,
+button[disabled].action:hover {
+ background: #cccccc;
+ color: #888;
+}
+
+button.action:focus,
+button.action:hover {
+ background: #597BE7;
+}
+
+button.secondary-action {
+ background: #ececec;
+}
+
+button.secondary-action:focus,
+button.secondary-action:hover {
+ background: #cccccc;
+}
+
+button.save.has-count {
+ padding: 9px;
+}
+
+button.save .count {
+ display: none;
+}
+
+button.save.has-count .count {
+ display: block;
+ position: absolute;
+ top: 5px;
+ background: rgba(255, 255, 255, .5);
+ color: #333;
+ padding: 10px;
+ height: 30px;
+ line-height: 12px;
+ border-radius: 4px;
+ margin: auto;
+ margin-left: 8.3333%;
+}
+
+button.save.has-count .count::before {
+ content: "";
+ margin: auto;
+ width: 0;
+ height: 0;
+ position: absolute;
+ left: -6px;
+ top: 0;
+ bottom: 0;
+ border-top: 6px solid transparent;
+ border-bottom: 6px solid transparent;
+ border-right: 6px solid rgba(255,255,255,.5);
+}
+
+/* Icons */
+
+.icon {
+ display:inline-block;
+ vertical-align:top;
+ width:20px;
+ height:20px;
+ background:transparent url(img/sprite.svg) no-repeat 0 0;
+ text-indent:-9999px;
+ overflow:hidden;
+ }
+
+.icon-pre-text {
+ margin-right: 3px;
+}
+
+.user-icon {
+ max-height: 20px;
+ max-width: 20px;
+ height: auto;
+ width: auto;
+ border-radius: 3px;
+}
+
+/* Definitions for every icon */
+.icon.alert { background-position: 0 0;}
+.icon.point,
+.icon.add-point { background-position: -20px 0;}
+.icon.line,
+.icon.add-line { background-position: -40px 0;}
+.icon.area,
+.icon.add-area { background-position: -60px 0;}
+.icon.undo { background-position: -80px 0;}
+.icon.redo { background-position: -100px 0;}
+.icon.apply { background-position: -120px 0;}
+.icon.save { background-position: -140px 0;}
+.icon.close { background-position: -160px 0;}
+.icon.delete { background-position: -180px 0;}
+.icon.remove { background-position: -200px 0;}
+.icon.inspect { background-position: -220px 0;}
+.icon.plus { background-position: -240px 0;}
+.icon.search { background-position: -280px 0;}
+.icon.geocode { background-position: -280px 0;}
+.icon.layers { background-position: -300px 0;}
+.icon.avatar { background-position: -320px 0;}
+.icon.nearby { background-position: -340px 0;}
+.icon.geolocate { background-position: -360px 0;}
+.icon.warning { background-position: -380px 0;}
+.icon.bug { background-position: -400px 0;}
+.icon.back { background-position: -420px 0;}
+.icon.forward { background-position: -440px 0;}
+.icon.help { background-position: -460px 0;}
+.icon.relation { background-position: -520px 0;}
+.icon.relation.route { background-position: -540px 0;}
+.icon.relation.multipolygon { background-position: -560px 0;}
+.icon.vertex { background-position: -580px 0;}
+.icon.data { background-position: -600px 0;}
+
+.icon.inspect.light { background-position: -220px -20px;}
+.icon.plus.light { background-position: -240px -20px;}
+.icon.zoom-in { background-position: -240px -20px;}
+.icon.zoom-out { background-position: -260px -20px;}
+.icon.geocode.light { background-position: -280px -20px;}
+.icon.layers.light { background-position: -300px -20px;}
+.icon.avatar.light { background-position: -320px -20px;}
+.icon.nearby.light { background-position: -340px -20px;}
+.icon.geolocate.light { background-position: -360px -20px;}
+.icon.bug.light { background-position: -400px -20px;}
+.icon.help.light { background-position: -460px -20px;}
+.icon.data.light { background-position: -600px -20px;}
+
+.icon.back.blue { background-position: -420px -20px;}
+.icon.forward.blue { background-position: -440px -20px;}
+
+button[disabled] .icon.alert { background-position: 0 -40px;}
+button[disabled] .icon.add-point { background-position: -20px -40px;}
+button[disabled] .icon.add-line { background-position: -40px -40px;}
+button[disabled] .icon.add-area { background-position: -60px -40px;}
+button.disabled .icon.undo { background-position: -80px -40px;}
+button.disabled .icon.redo { background-position: -100px -40px;}
+button[disabled] .apply.icon { background-position: -120px -40px;}
+button[disabled] .close.icon { background-position: -160px -40px;}
+button[disabled] .delete.icon { background-position: -180px -40px;}
+button[disabled] .icon.remove { background-position: -200px -40px;}
+button[disabled] .icon.inspect { background-position: -220px -40px;}
+button[disabled] .icon.zoom-in { background-position: -240px -40px;}
+button[disabled] .icon.zoom-out { background-position: -260px -40px;}
+button[disabled] .icon.geocode { background-position: -280px -40px;}
+button[disabled] .icon.layers { background-position: -300px -40px;}
+button[disabled] .icon.avatar { background-position: -320px -40px;}
+button[disabled] .icon.nearby { background-position: -340px -40px;}
+button[disabled] .icon.data { background-position: -600px -40px;}
+
+.icon.point.deleted { background-position: -480px -80px;}
+.icon.line.deleted { background-position: -500px -80px;}
+.icon.area.deleted { background-position: -520px -80px;}
+
+.icon.point.created { background-position: -480px -100px;}
+.icon.line.created { background-position: -500px -100px;}
+.icon.area.created { background-position: -520px -100px;}
+
+.icon.point.modified { background-position: -22px 0; }
+
+.icon.modified { opacity: .5; }
+
+/* Out link is special */
+
+.icon.out-link { height: 14px; width: 14px; background-position: -500px 0;}
+a:hover .icon.out-link { background-position: -500px -14px;}
+
+.icon.plus-dark { background-position: -240px -40px;}
+
+/* Universal preset icons */
+
+.icon.source { background-position: 0 -200px;}
+.icon.address { background-position: -20px -200px;}
+.icon.telephone { background-position: -40px -200px;}
+.icon.website { background-position: -60px -200px;}
+.icon.elevation { background-position: -80px -200px;}
+.icon.wikipedia { background-position: -100px -200px;}
+.icon.note { background-position: -120px -200px;}
+.icon.wheelchair { background-position: -140px -200px;}
+
+/* ToolBar / Persistent UI Elements
+------------------------------------------------------- */
+
+#bar {
+ position: fixed;
+ padding: 10px 0;
+ left:0;
+ top:0;
+ right:0;
+ height:60px;
+ z-index: 9;
+ min-width: 768px;
+}
+
+/* Header for modals / panes
+------------------------------------------------------- */
+
+.header {
+ border-bottom: 1px solid #ccc;
+ height: 60px;
+ position: relative;
+}
+
+.header h3 {
+ text-align: left;
+ margin-bottom: 0;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ overflow: hidden;
+ padding: 20px;
+}
+
+.header button,
+.modal > button {
+ border-radius: 0;
+ width: 40px;
+ text-align: center;
+ overflow: hidden;
+}
+
+.header button {
+ position: relative;
+ height: 100%;
+}
+
+.preset-list-pane .header button {
+ position: absolute;
+ right: 0;
+ top: 0;
+}
+
+.modal > button {
+ position: absolute;
+ right: 0;
+ top: 0;
+ height: 59px;
+ z-index: 50;
+}
+
+.footer {
+ position: absolute;
+ bottom: 0;
+ padding: 5px 20px 5px 20px;
+ border-top: 1px solid #ccc;
+ background-color: #fafafa;
+ width: 100%;
+}
+
+.sidebar-component .body {
+ width: 100%;
+ overflow: auto;
+ top: 60px;
+ bottom: 0;
+ position: absolute;
+}
+
+/* Inspector
+------------------------------------------------------- */
+
+#sidebar {
+ position: relative;
+ float: left;
+ height: 100%;
+ overflow: hidden;
+ z-index: 10;
+ background: #f6f6f6;
+}
+
+.sidebar-component {
+ position: absolute;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+}
+
+.inspector-wrap {
+ width: 100%;
+ height: 100%;
+}
+
+.inspector-hidden {
+ display: none;
+}
+
+.inspector-body {
+ overflow-y: scroll;
+ overflow-x: hidden;
+ position: absolute;
+ right: 0;
+ left: 0;
+ bottom: 0;
+}
+
+.mapillary-image {
+ position: absolute;
+ right: 0;
+ bottom: 30px;
+ width: 330px;
+ height: 250px;
+ padding: 5px;
+ background-color: #fff;
+}
+
+.mapillary-image a {
+ display: block;
+ position: absolute;
+ height: auto;
+ background-color: rgba(0,0,0,.5);
+ bottom: 0;
+ right: 0;
+ padding: 5px 10px;
+}
+
+.mapillary-image img {
+ width: 100%;
+ height: auto;
+ display: block;
+}
+
+.mapillary-image.hidden {
+ visibility: hidden;
+}
+
+.mapillary-image.temp button {
+ display: none;
+}
+
+.mapillary-image button {
+ border-radius: 0;
+ padding: 5px;
+ position: absolute;
+ right: 0;
+ top: 0;
+}
+
+.feature-list-pane .inspector-body {
+ top: 120px;
+}
+
+.preset-list-pane .inspector-body {
+ top: 120px;
+}
+
+.entity-editor-pane .inspector-body {
+ top: 60px;
+}
+
+.selection-list-pane .inspector-body {
+ top: 60px;
+}
+
+.inspector-inner {
+ padding: 20px;
+ position: relative;
+}
+
+#sidebar .search-header .icon {
+ display: block;
+ position: absolute;
+ left: 10px;
+ top: 80px;
+ pointer-events: none;
+}
+
+#sidebar .search-header input {
+ position: absolute;
+ top: 60px;
+ height: 60px;
+ width: 100%;
+ padding: 5px 10px;
+ border-radius: 0;
+ border-width: 0;
+ border-bottom-width: 1px;
+ text-indent: 30px;
+ font-size: 18px;
+ font-weight: bold;
+}
+
+/* Feature list */
+
+.feature-list {
+ width:100%;
+}
+
+.no-results-item,
+.geocode-item,
+.feature-list-item {
+ width: 100%;
+ position: relative;
+ border-bottom: 1px solid #ccc;
+ border-radius: 0;
+}
+
+.feature-list-item .label {
+ text-align: left;
+ padding: 5px 10px;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ overflow: hidden;
+ border-left: 1px solid rgba(0, 0, 0, .1);
+}
+
+.feature-list-item .label .icon {
+ opacity: .5;
+}
+
+.feature-list-item:hover .label {
+ background-color: #ececec;
+}
+
+.feature-list-item .entity-type {
+ color:#7092ff;
+}
+
+.feature-list-item:hover .entity-type {
+ color:#597be7;
+}
+
+.feature-list-item .entity-name {
+ font-weight: normal;
+ color: #666;
+ padding-left: 10px;
+}
+
+/* Presets
+------------------------------------------------------- */
+
+/* Preset grid */
+
+.preset-list {
+ width:100%;
+ padding: 20px 20px 10px 20px;
+ border-bottom: 1px solid #ccc;
+}
+
+.preset-list-button-wrap {
+ position: relative;
+ margin-bottom: 10px;
+ height: 60px;
+}
+
+.preset-list-button {
+ width: 100%;
+ height: 100%;
+ position: relative;
+ border: 1px solid #ccc;
+}
+
+.preset-list.filtered .preset-list-item:first-child .preset-list-button {
+ background: #ececec;
+}
+
+.preset-icon {
+ position: absolute;
+ top: 17px;
+ left: 17px;
+ margin: auto;
+}
+
+.preset-icon-line,
+.preset-icon-relation {
+ top: 0;
+ left: 0;
+}
+
+.preset-list-button .label {
+ background-color: #f6f6f6;
+ text-align: left;
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ right: 0;
+ padding: 5px 10px;
+ left: 60px;
+ line-height: 50px;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ overflow: hidden;
+ border-left: 1px solid rgba(0, 0, 0, .1);
+ border-radius: 0 3px 3px 0;
+ }
+
+.preset-list-button:hover .label {
+ background-color: #ececec;
+}
+
+.preset-list-item button.tag-reference-button {
+ height: 100%;
+ border: 1px solid #CCC;
+ border-radius: 0 3px 3px 0;
+ position: absolute;
+ top: 0;
+ right: 0;
+ width: 10%;
+ background: #fafafa;
+}
+
+.preset-list-item button.tag-reference-button .icon {
+ opacity: .5;
+}
+
+.current .preset-list-button,
+.current .preset-list-button .label {
+ background-color: #E8EBFF;
+}
+
+.category .preset-list-button:after,
+.category .preset-list-button:before {
+ content: "";
+ position: absolute;
+ top: -5px;
+ left: -1px; right: -1px;
+ border: 1px solid #ccc;
+ border-bottom: none;
+ border-radius: 6px 6px 0 0;
+ height: 6px;
+}
+
+.category .preset-list-button:before {
+ top: -3px;
+}
+
+.subgrid .preset-list {
+ padding: 10px 10px 0 10px;
+ margin-top: 0;
+ border: 0;
+ border-radius: 8px;
+ width: -webkit-calc(100% + 20px);
+ margin-left: -10px;
+}
+
+.subgrid .arrow {
+ border: solid rgba(0, 0, 0, 0);
+ border-width: 10px;
+ border-bottom-color: #f1f1f1;
+ width: 0;
+ height: 0;
+ margin-left: 50%;
+ margin-left: -webkit-calc(50% - 10px);
+ margin-top: -10px;
+}
+
+/* Preset icon colors */
+
+.preset-icon-fill-area {
+ cursor: inherit;
+ height: 39px;
+ width: 39px;
+ margin: auto;
+ position: absolute;
+ left: 10px;
+ top: 10px;
+}
+
+.preset-icon-fill-area:after {
+ content: '';
+ left: -4px;
+ top: -4px;
+ height: 45px;
+ width: 45px;
+ position: absolute;
+ background:transparent url(img/sprite.svg) no-repeat 0 -80px;
+}
+
+/* preset form basics */
+
+.inspector-preset {
+ overflow: hidden;
+}
+
+.inspector-preset .preset-form {
+ padding: 10px;
+ margin: 0 10px 10px 10px;
+ border-radius: 8px;
+}
+
+.entity-editor-pane .preset-list-item::after {
+ content: "";
+ position: absolute;
+ height: 0;
+ width: 0;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ margin: auto;
+ border: solid rgba(0, 0, 0, 0);
+ border-width: 10px;
+ border-bottom-color: #ececec;
+}
+
+.entity-editor-pane .preset-list-item .preset-list-button-wrap {
+ margin-bottom: 0;
+}
+
+
+.form-field {
+ margin-bottom: 10px;
+ width: 100%;
+ -webkit-transition: margin-bottom 200ms;
+ -moz-transition: margin-bottom 200ms;
+ -o-transition: margin-bottom 200ms;
+ transition: margin-bottom 200ms;
+}
+
+.form-field:last-child {
+ margin-bottom: 0;
+}
+
+.form-label {
+ position: relative;
+ font-weight: bold;
+ border: 1px solid #cfcfcf;
+ padding: 5px 0 5px 10px;
+ background: #f6f6f6;
+ display: block;
+ border-radius: 4px 4px 0 0;
+ overflow: hidden;
+}
+
+.form-label-button-wrap {
+ position: absolute;
+ top: 0;
+ right: 0;
+ height: 100%;
+ width: 100%;
+ background: transparent;
+ text-align: right;
+}
+
+.form-label-button-wrap .tag-reference-button {
+ border-radius: 0 3px 0 0;
+}
+
+.form-label-button-wrap .icon {
+ opacity: .5;
+}
+
+.form-label button {
+ border-left: 1px solid #CCC;
+ width: 10%;
+ height: 100%;
+ border-radius: 0;
+ background: #fafafa;
+}
+
+.form-label .modified-icon,
+.form-field .remove-icon {
+ display: none;
+}
+
+.modified .form-label .modified-icon,
+.present .form-label .remove-icon {
+ display: inline-block;
+}
+
+.form-field > input,
+.form-field > textarea,
+.form-field .preset-input-wrap {
+ border: 1px solid #CCC;
+ min-height: 30px;
+ border-top: 0;
+ border-radius: 0 0 4px 4px;
+}
+
+.form-field textarea {
+ height: 65px;
+}
+
+.inspector-border {
+ border-bottom: 1px solid #CCC
+}
+
+/* Preset form (hover mode) */
+
+.inspector-hover .checkselect label:last-of-type,
+.inspector-hover .preset-input-wrap .label,
+.inspector-hover input,
+.inspector-hover label {
+ background: #ececec;
+}
+
+.inspector-hover a,
+.inspector-hover .checkselect label:last-of-type {
+ color: #666;
+}
+
+/* hide and remove from layout */
+.inspector-hidden,